1. HOME
  2. WordPress
  3. WordPress 特定のカテゴリー&記事を表示の時にclassをつけたい時

WordPress 特定のカテゴリー&記事を表示の時にclassをつけたい時

2017年8月2日

特定のカテゴリー&記事を表示の時

以下のグローバルナビのようにWordPressの属している記事とカテゴリーの時だけclassをつけて背景を変える場合「in_category」を使用するかと思います。

in_category

wordpressのカテゴリーページとwordpressに属している記事ページでAを表示
他のカテゴリーや他の記事ページでBを表示

例)

WordPressに属している記事とWordPressのカテゴリーページとページで以下を表示(スラッグ:wordpress)
<li class=”current”><a href=”/wordpress/”>WordPress</a></li>
他の記事ページや他のカテゴリーやで以下を表示
<li><a href=”/wordpress/”>WordPress</a></li>

上記を試したところ確かにWordPressの記事やカテゴリーで有効になりましたが、サイト内の検索結果やアーカイブページでWordPressの記事が一番上の時にも有効になってしまいました。

「WordPressの記事やカテゴリーのみで有効にする」のが目的ですので変更する必要がありそうです。

今回の要件は以下となります。
・WordPressに属している記事で有効
・WordPressのカテゴリーで有効
・上記以外は無効

コード変更

いくつか試したところ以下のコードで解決しました。

上記は記事もしくはカテゴリーページでなおかつWordPressの記事・カテゴリーの時
<li class=”current”><a href=”/wordpress/”>WordPress</a></li>
を表示してそれ以外は
<li><a href=”/wordpress/”>WordPress</a></li>
を表示

少し矛盾している気もしますし、他の記述方法もあるかと思いますが、意図通りの動作はしていますのでこの方法を使用しています。また発見がありましたらお知らせします。

LINEで送る
Pocket

コメントを残す





PAGE
TOP