• 解決済 shinkichi

    (@shinkichi)


    親カテに属する子カテ一覧を下記ソースで対応しました。

    <?php
    global $wp_query;
    $cat = $wp_query->get_queried_object();
    $child_cats = get_categories('hide_empty=0&parent='.$cat->term_id);
    foreach ( $child_cats as $child_cat ):
    ?>
    ~
    <?php endforeach; ?>

    これを「category.php」を使ってうまく表示されました。

    <?php echo $child_cat->name; ?>

    と書けば、子カテの名前を出力してくれます。

    これだけであれば問題ないのですが、今回はその子カテに「Advanced Custom Fields」を使って追加したカスタムフィールドの値を一緒に出力させたいと思っています。

    しかしループ内なので、

    <?php the_field( 'フィールド名' ); ?>

    とすれば表示されると思ったのですがうまくいきません。

    ちなみに、ループ外であれば下記で出力は出来ました。

    <?php $cat_id = get_queried_object()->cat_ID; $post_id = 'category_'.$cat_id; ?>
    <?php the_field('フィールド名',$post_id); ?>

    自分がやろうとしていることはそもそも無理なことなのかどうかも判断つかず困っております。
    解決策をご存じの方、ご教授いただければ幸いです。
    よろしくお願いいたします。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • idが必要な気がします。
    <?php the_field( 'フィールド名', $child_cat->term_id ); ?>

    こんにちは

    カテゴリー(ターム)をターゲットにする場合は、2番目のパラメータが必須のようです。
    詳細は下記ページの「Loading from a specific term」セクションをご覧ください。
    https://www.advancedcustomfields.com/resources/adding-fields-taxonomy-term/

    例)

    <?php the_field( 'フィールド名', 'category_' . $child_cat->term_id ); ?>

    トピック投稿者 shinkichi

    (@shinkichi)

    ●nekoyoriinuha様
    ご回答ありがとうございました。
    ループ外のソースを見て、IDは引っ張ってこないといけないはず。
    そう思って、下記には至っておりました。

    <?php the_field( ‘oya_text’, $child_cat->term_id ); ?>

    しかしこれではダメだったんですよね。

    ●ishitaka様
    ご回答ありがとうございました。
    ご提示いただいたページ、とても参考になりました。
    日本語化されたものがあればなお良いのに…と思わずにいられません。

    <?php the_field( ‘フィールド名’, ‘category_’ . $child_cat->term_id ); ?>

    このソースで表示することが出来ました。
    ありがとうございました!

3件の返信を表示中 - 1 - 3件目 (全3件中)

トピック「Advanced Custom Fieldsでカテゴリーに追加した値をループ内に表示したい」には新たに返信することはできません。