スポンサーリンク
WordPress

WordPressで記事が属する複数のカテゴリを出力しつつクラスにスラッグ名を付けて色分けしたりする方法

この記事は約3分で読めます。
スポンサーリンク

どうも、サブロー(@saburo_design)です。

どうも、サブロー(@saburo_design)です。

タイトルがやたら長くなってしまいましたが書いてある通り、WordPressで記事が属する複数のカテゴリを出力しつつクラスにスラッグ名を付ける方法をご紹介したいと思います。私もこれを使う前はそのぐらい簡単に出来るだろとか思っていたんですが、インターネットで調べても調べてもそれらしき方法がなかなか見つからず、先日ようやくやり方が分かりました。

任意の場所にコードをコピペする

やりたかった事としては、記事が属するカテゴリーを色分けして出力したかったわけですが、カテゴリーを複数出力する方法とスラッグ名をクラスに付ける方法はそれぞれあっても両方を実現する方法がなかなか見つかりませんでした。ようやく実装できたのが以下のコードです。任意の場所にコピペしてください。

<ul>
<?php
$terms = get_the_terms( $post->ID, 'category' );
if ($terms && ! is_wp_error($terms)): ?>
<?php foreach($terms as $term): ?>
<li class="<?php echo $term->slug; ?>"><a href="<?php echo get_term_link( $term->slug, 'category'); ?>"><?php echo $term->name; ?></a></li>
<?php endforeach; ?>
<?php endif; ?>
</ul>

すると以下のようにHTMLタグが出力されるはずです。

<ul>
<li class="Aスラッグ名"><a href="Aリンク">記事が属するカテゴリーA</a></li>
<li class="Bスラッグ名"><a href="Bリンク">記事が属するカテゴリーB</a></li>
<li class="Cスラッグ名"><a href="Cリンク">記事が属するカテゴリーC</a></li>
</ul>

まとめ

あとはclassのスラッグ名を指定してcssで色を変えるなりカスタマイズすればやりたかった事は実装できました。リンクなしで出力したい場合もaタグを削除するだけなので簡単ですね。

スポンサーリンク

美味しいものを食べに行ったり技術録を書いたり。最近ブログ用のデジカメを買って浮かれています。ツイッターとかインスタグラムもやってますのでフォローもお気軽にどうぞ。

サブローをフォローする
SABURO DESIGN
タイトルとURLをコピーしました