wordpressのシングルページの表示をカテゴリーごとにコントロールしたいときのために、<body>にカテゴリーごとのクラスをつけたかったのですが、下記のブログで丁寧に説明してくださっています。

WordPress – 超便利!bodyクラスにページスラッグ(最上親も)とカテゴリスラッグを追加

https://se.ekaki-j.com/wp-body-class-function/

具体的にはfunctionを下記のコードを追加します。

<?php
//カテゴリスラッグクラスをbodyクラスに追加
function add_category_slug_classes_to_body_classes($classes) {
  global $post;
  if ( is_single() ) {
    foreach((get_the_category($post->ID)) as $category)
       $classes[] = $category->category_nicename;
  }
  return $classes;
}
add_filter('body_class', 'add_category_slug_classes_to_body_classes');
?>

上記サイトには、固定ページにクラスの追加が可能になるコードもありました。現状必要なかったのですが、ねんのためこちらも追記しておきました。

コメントを残す

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

ソーシャルプロフィール