サポート » 使い方全般 » カテゴリーで最上位の親カテゴリーを除いた親子順で表示させたい

  • 解決済 piiyann

    (@piiyann)


    wordpress初心者です。
    カテゴリーページでその最上位の親カテゴリーを除いたカテゴリー名を出力したいのですが、
    参照のサイト等を見て作業をしていたのですが、うまくできません。

    また、孫カテゴリー名が同じだと、他の子カテゴリーが表示されてしまいます。

    どなたかお力を貸して頂けたらと幸いです。
    ご指導頂けます方、宜しくお願い致します。

    カテゴリー例

    親カテゴリー(非表示)
    ー子カテゴリーA(表示)
    ーー孫カテゴリーB(表示)
    ーーーひ孫カテゴリーC(表示)
    ー子カテゴリー(表示)D
    ーー孫カテゴリー(表示)E
    ーーーひ孫カテゴリー(表示)F

    表示させたいイメージ
    子カテゴリ / 孫カテゴリー / ひ孫カテゴリー

    <?php if (have_posts()):  ?>
    <h4>
    <?php
    function my_bread(){
         global $post;
    
         define("SEPA","<br />");
         //カテゴリアーカイブ
            $cat = get_category(get_cat_ID(single_cat_title('',false)));
            //親カテゴリがある場合
            if($cat->parent){
            	$cate_pare = get_category_parents(get_cat_ID(single_cat_title('',false)),true,SEPA);
                //親カテゴリ
                echo $cate_pare.SEPA;
            }
            //自カテゴリ
            single_cat_title();
    }
    ?>
    <?php my_bread(); ?>
    </h4>
    <?php endif; ?>
    <?php while (have_posts()) : the_post(); ?>
    <?php the_title(); ?>
    <?php endwhile; ?>
    <?php else : ?>
    <?php endif; ?>
2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター jim912

    (@jim912)

    piiyannさん、こんにちは。

    うまくできません。

    具体的に何がうまくできてないのか詳しく教えて頂けますか?

    カテゴリー名に起因する問題は、

    $cat = get_category(get_query_var('cat'));

    で解決するはずです。

    jim912さんご指摘ありがとうございます。

    カテゴリー
    親カテゴリー(非表示)
    ー子カテゴリーA(表示)
    ーー孫カテゴリーB(表示)
    ーーーひ孫カテゴリーC(表示)
    ー子カテゴリー(表示)D
    ーー孫カテゴリー(表示)E
    ーーーひ孫カテゴリー(表示)F

    表示させたいイメージ
    子カテゴリ / 孫カテゴリー / ひ孫カテゴリー

    現状
    親カテゴリー / 子カテゴリ /孫カテゴリー / ひ孫カテゴリー

    カテゴリーアーカイブページと記事ページで
    親子順でカテゴリーを表示させたいのですが、
    尚且つ一番上の親カテゴリー除いた形で表示したいです。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「カテゴリーで最上位の親カテゴリーを除いた親子順で表示させたい」には新たに返信することはできません。