MENU

WordPress カテゴリーリンクで記事一覧のタイトルにカテゴリー・タグ名が正しく表示されない時の対処法

こんにちは。

情報サイトを作った時に、グローバルメニューにカテゴリー別記事一覧のリンクを作りました。
リンクはOKなのですが一覧ページのカテゴリー表示名にリンクとは違うカテゴリー名が表示されず困ったのでメモしておきます。

投稿記事に複数カテゴリーが設定されており、どうやら get_the_category(); だけでは最新記事の最初のカテゴリーが表示されるようでした。

 

やりたいこと

  • 記事には複数のカテゴリーを設定
  • WordPressのメニュー設定でカテゴリー別のリンクを設置
  • 記事一覧にリンクと同じカテゴリー・タグ名をリンクなしで表示

 

対処としては、以下のphpを追加しました。

$current_cat = get_queried_object();
$cat_title = $current_cat->name;

改善前

<?php get_header();?>
<?php
$cat = get_the_category();
$cat_name = $cat[0]->cat_name; 
$cat_slug = $cat[0]->category_nicename; 
?>
<div class="archive_title">
<h1><?php echo $cat_name ;?></h1>
</div>

改善後

<?php get_header();?>
<?php
$current_cat = get_queried_object();
$cat_title = $current_cat->name;
$cat = get_the_category();
$cat_name = $cat[0]->cat_name ; 
$cat_slug = $cat[0]->slug ; 
?> 

<div class="archive_title">
<h1 class="container"><?php echo $cat_title ;?></h1>
</div>

これで記事一覧の表示がパーマリンクと一致してくれました。

Follow me!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次