フォーラム

[解決済み] Ktai Styleで?menu=monthsなどと呼び出した場合の分岐 (4 件の投稿)

  1. shokun0803
    メンバー
    3 週前の投稿 #

    分岐でfooterを切り替える処理を作っていまして、アーカイブやカテゴリのページではis_archive()で分岐できるのですが、アーカイブページを呼び出す直前の?menu=monthsなどで呼び出した月の一覧やカテゴリの一覧ページの分岐方法が分かりません。

    is_archive()などで分岐するよりも前にページタイトル(index)で分岐させている部分があり、?menu=monthsなどで呼び出されたページのページタイトルはindexになるようで先にこちらの条件がヒットしてしまい、この部分で!is_archive()を条件に入れてみましたが、アーカイブページとして存在しているわけではないようでうまく分岐しませんでした。

    ?menu=monthsなどで呼び出されたページはどのように判定すればいいでしょうか?

  2. kvex
    メンバー
    3 週前の投稿 #

    私にはおっしゃっていることの全てを把握できる理解力が無いので、引数の部分だけを考えます。

    ?menu=month ということは、普通にphpの処理をするのではダメということなんですか?
    セキュリティ面はちょっと後回しとして

    $res = $_GET['menu'];
    if ($res == "month"){
        真の場合の処理
    }
    else{
        偽の場合の処理
    }

    私が理解したのと、意味が違うのですかね?

  3. lilyfan
    メンバー
    3 週前の投稿 #

    私にはおっしゃっていることの全てを把握できる理解力が無いので、引数の部分だけを考えます。

    ?menu=months というのは Ktai Style 独自の引数です。したがって、Ktai Style の公式ドキュメントを調べてみれば理解できるかと思います。

    で、?menu=XXXXX を判別するためのテンプレートタグとして ks_is_menu() が用意されています。これを使えば希望の動作ができるかと思います。

    kvex さんが提示されたコードだと、$_GET['menu'] が存在しないときに warning が出てしまうため、あまりよいコードとは言えません。(まあ、WordPress コアでも未定義の変数をいきなり呼んでしまうコードがけっこうありますが ;-)

  4. shokun0803
    メンバー
    3 週前の投稿 #

    できました!ありがとうございます。
    公式は見ていたつもりですが探せ切れていませんでした。

    kvexさん、GETの方法は思いつきませんでした。確かにそうですよね・・・アドレスに含まれているのですから。ありがとうございます。

返信

ログイン しなければ投稿できません。

About this Topic