SANGOテーマで記事一覧にカスタム投稿のカテゴリー表示カスタマイズ

MEMO
親テーマの修正は必要ありませんでした。タグの考慮追加しました。

カスタム投稿でも一覧にカテゴリーを表示したいんです♪

  • カテゴリーアーカイブでは、表示されません。
  • 日付アーカイブでは、表示されます。
  • タグアーカイブでは、表示されます。

子テーマのfunctions.phpへの追加

// *********************************************************************
// ****** ここから、投稿一覧のカードに通常/カスタム投稿のカテゴリ表示 *******
function my_output_catogry_link() {
  $cat = get_the_category();
  if(!$cat) { //カスタム投稿の場合
      $taxonomy_names = get_post_taxonomies( get_the_ID() );
      $taxonomy_name = null;
      foreach ($taxonomy_names as $value)
          if(is_taxonomy_hierarchical($value)) // カテゴリの場合
              $taxonomy_name = $value;
      if ( empty($taxonomy_name) || is_tax($taxonomy_name)) return false;
      $my_terms =  get_the_terms( get_the_ID(),$taxonomy_name);
      if (! is_array($my_terms)) return false;
      $my_terms = $my_terms[0]; 
      $catId = $my_terms->term_id;
      $catName = esc_attr($my_terms->name);
      $catLink = esc_url(get_term_link($catId,$taxonomy_name));
 } else {
      $cat = $cat[0];
      $catId = $cat->cat_ID;
      $catName = esc_attr($cat->cat_name);
      $catLink = esc_url(get_category_link($catId));
  }
  if($catLink && $catName) echo '<a class="dfont cat-name catid'.$catId.'" href="'.$catLink.'">'.$catName.'</a>';
} 
// ****** ここから、投稿一覧のカードに通常/カスタム投稿のカテゴリ表示 *******
// *********************************************************************

関数 output_catogry_link()を呼び出す側の修正

コピー元:sango-theme/parts/post-grid.php
コピー先:sango-theme-child/parts/post-grid.php
post-grid.phpを親テーマからコピーして、以下のように修正します。

//
//略
//
            //if(!is_archive()) output_catogry_link();//カテゴリーを出力
            if(!is_category()) my_output_catogry_link();//カテゴリーを出力
//
//略
//

Monappy: MBDQ39VHypMQwfyR8SshuHvfPNUz321F6B

Monacoinを投げる
モナゲ(tipmona)ってなに?
そもそもMonacoinってなに?

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください