サポート » 使い方全般 » tax_queryのtermsを動的に指定したい

  • 解決済 hokutonojikei

    (@hokutonojikei)


    ページタイトルをもとにカスタムタクソノミーの
    タームを動的に指定したいのですがうまくいきません。

    以下ソースになります。

    $currenttitle = wp_title(”,’false’,”);
    echo $currenttitle;
    $args=array(
    ‘tax_query’ => array(
    array(
    ‘taxonomy’ => ‘hogehogetag’,
    ‘field’ => ‘slug’,
    ‘terms’ => $GLOBALS[‘currenttitle’] //ここで’スラッグ名直書き’とすると動きます
    ),
    ),
    ‘post_type’ => ‘hogehoge’,
    ‘posts_per_page’=> -1
    );

    8行目の指定をいろいろ試してみましたが
    静的に直書きする以外はうまくいきませんでした。
    -試した例-
    ‘terms’ => $currenttitle
    ‘terms’ => ‘$currenttitle’
    ‘terms’ => “‘” . $currenttitle . “‘”
    ‘terms’ => array(‘$currenttitle’)
    ‘terms’ => array($currenttitle)

    ここは動的指定ができないのでしょうか。
    間違っている個所などご指摘いただけましたら幸いです。
    よろしくお願いいたします。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • $GLOBALS[‘currenttitle’] や$currenttitleをechoすると何か出力はされますか?
    出力される場合は意図してる文字列でしょうか?

    トピック投稿者 hokutonojikei

    (@hokutonojikei)

    hosoyaさん、ご回答ありがとうございます。

    2行目のechoでは意図している文字列が出力されます。
    上記ソースでは固定ページのページタイトルが出てきます。
    (固定ページテンプレートで使用)

    8行目で改めて以下試してみました
    ‘terms’ => echo $currenttitle
    結果はページが真っ白になってしまいました。
    なにかヒントになりますでしょうか。

    またお気づきの点などありましたら書き込みをお願いいたします。

    モデレーター Takuro Hishikawa

    (@hissy)

    動的指定可能ですよ。何か間違っているのでしょう。
    var_dump($args) でどう表示されるかですね

    トピック投稿者 hokutonojikei

    (@hokutonojikei)

    Hishikawaさんご回答ありがとうございます。

    var_dump($args)でごねごねしていたら解決いたしました!
    ありがとうございます!

    最初は変数がうまくわたっていないのかtaxqueryの仕様で
    動的な処理に制限がかかっているのかと思って検証していたのですが
    wp_title()をthe_title()に変えてみたら動作いたしました。
    ありがとうございました!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「tax_queryのtermsを動的に指定したい」には新たに返信することはできません。