1

以下のコードは、子カテゴリ名とそのリンクのみを表示しているカスタム投稿タイプ( Sermonと呼ばれる) からの私の投稿に対して機能します。

<?php
  $categories = get_the_category();
  if ( ! empty( $categories ) ) {
  echo '<a href="' . esc_url( get_category_link( $categories[0]->term_id ) ) . '">Child Category : ' . esc_html( $categories[0]->name ) . '</a>';
  }
?>

しかし、投稿タイプ自体(ニュースカテゴリ)から投稿に再利用すると機能しません。チェックを外さない限り、親カテゴリ(ニュース)が表示され続けるため、子カテゴリ(エンターテイメント、政治など)のみが表示されます。

どんな助けでも大歓迎です。ありがとう!

4

1 に答える 1

0

オンラインで見つけたこのカスタム関数で問題を解決し、要件を満たすために少し変更しました。

function the_category_children($slug=""){
  $separator = ', ';
  $output = '';
  if($categories       = get_the_category()):
    if($slug_category   = get_category_by_slug($slug)):
      foreach($categories as $category):
        if (cat_is_ancestor_of($slug_category, $category)):
          $output .= '<a href="' . esc_url( get_category_link( $category->term_id ) ) . '">' . esc_html( $category->name ) . '</a>' . $separator;
        endif;
      endforeach;
      echo trim( $output, $separator );
    endif;
  endif;
}

そして、この関数 the_category_children('category_name') をループ (content.php) 内で呼び出します。^_^

于 2016-10-20T06:35:58.503 に答える