サポート » 使い方全般 » the_categoryでサブカテゴリーを除外したい

  • 解決済 rqcmt

    (@rqcmt)


    <?php the_category(‘ > ‘); ?>では内包するサブカテゴリーすべて表示されるのですが、サブカテゴリーを除外しメインカテゴリーだけを表示することはできないのでしょうか?

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • rqcmtさん

    get_the_category() を使って、当該記事のカテゴリーをいったん配列に格納してはどうでしょう? 配列内のオブジェクトにあるプロパティ parent の値で親カテゴリーの有無を判定できるので。拙作のコードで失敬ですが……

    <?php
    $cat = get_the_category();
    for ( $i = 0; $i < count($cat); $i++ ) : if ( !$cat[$i]->parent ) :
    ?>
    <a href="<?php echo get_category_link( $cat[$i]->cat_ID ); ?>"><?php echo $cat[$i]->name; ?></a>
    <?php if ( $i < count($cat)-1 ) : ?> > <?php endif; ?>
    <?php endif; endfor; ?>

    ちなみに

    <?php if ( $i < count($cat)-1 ) : ?> > <?php endif; ?>

    の行は、セパレータ > を表示するためのものです。

    必要に応じて a タグの title 属性など追記してくださいね。以上、ご参考までに。

    スレッド開始 rqcmt

    (@rqcmt)

    ご親切にありがとうございました。バッチリです。カテゴリページ限定でかつリンクがない状態なら、下でもよいのですね。本当にありがとうございました。
    <?php single_cat_title(); ?>

    スレッド開始 rqcmt

    (@rqcmt)

    すいません。解決済みにするのを忘れてました。ありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「the_categoryでサブカテゴリーを除外したい」には新たに返信することはできません。