サポート » 使い方全般 » 重複するカテゴリーを削除(一つだけ表示)したい。

  • 解決済 smta

    (@smta)


    タクソノミーアーカイブの表示で、重複するカテゴリーを削除して表示したいのですが、どのように対応すればよいか、ご教授いただけないでしょうか?

    現状のコードは以下になっています。

    <?php if(is_tax( 'use' )) :
                $terms = get_the_terms($post->ID, 'type');
                $count = count($terms);
                $newArray = array();
                  if ( $count > 0 ){
                       foreach ( $terms as $term ) {
                             $result = get_term_by('slug', $term->slug, $term->taxonomy);
                             array_push($newArray, $result);
                       }
                       foreach( $newArray as $item ): ?>
    
            <h1><?php echo esc_html($item->name); ?></h1>
            <p class="desc"><?php echo esc_html($item->description); ?></p>
    
            <?php endforeach;}endif;?>

    今は、重複したカテゴリー名と説明が記事がある数、全て表示されてしまいます。
    重複するものは、削除して一つだけ表示したいです。
    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • 出力時にタクソノミーのterm_idを配列に格納しておいて、出力済み確認を行ってからechoするようにしてはいかがでしょうか?
    この配列の初期化は、投稿のループ前に行う必要があります。
     
    ‘$newArray’に格納し直している理由は何でしょう?

    トピック投稿者 smta

    (@smta)

    popup様 回答ありがとうございます。

    投稿のループ前に行うのですね。
    php初心者の為、不要なコードを入れてしまっていますでしょうか?
    もう一度、記述しなおしてしてみます。

    ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「重複するカテゴリーを削除(一つだけ表示)したい。」には新たに返信することはできません。