【WordPress】アーカイブページで該当するカテゴリーをタイトル表示させる件

今回はタイトルの説明が変かもしれませんが。
WordPressのクライアント様案件で、テンプレートを微調整している真っ最中のドイです。

今回の件は、
1.大カテゴリー別にカスタム投稿を採用。
2.多言語サイト(日本語、英語)
3.各カテゴリーの子カテゴリーをアーカイブページとして一覧表示させる
4.表示されている「子カテゴリー名」をページタイトルとして表示させたい。

という感じです。
最初は以下テンプレートタグを使用していました。

<?php echo $title ?>

ところが、これでは「大カテゴリー(カスタム投稿名)」の表示にしかならないのです。

たとえば「お知らせ」に「プレスリリース」「イベント情報」「出版物」とあったとしても、どのアーカイブページも「お知らせ」というタイトルになってしまいます。

これではユーザーに「どのページの一覧を見ているのか?」が分かりにくいため、テンプレートタグを変更しました。
■テンプレートタグ/single cat title■
これは【カテゴリーまたはタグアーカイブがクエリされているときに使用すると、ページタイトル(カテゴリー名またはタグ名)を表示または返します(※WordPress  Codexより)】とのことですので、この関数が使用できるのはループの外だけになります。

■使い方

<?php single_cat_title( $prefix, $display ); ?>

■パラメータの説明
============================
$prefix(文字列:オプションなのでなしでもOK)・・・タイトルの前に出力したいテキスト
$display(真偽値:オプション) ページタイトルを表示するか(true)、それとも PHP で使えるように返すか(false)。
============================

■基本的な使用例

<h2><?php single_cat_title( '', true ); ?></h2>

以上。
アーカイブテンプレートの記述を修正したら、無事に各カスタム投稿の子カテゴリーが表示されるようになりました。



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です