[WordPress]body_class()に独自のクラスを追加する
- 公開日:2019/10/18
この記事は最終更新日から5年以上が経過しています。
<body <?php body_class(); ?>>
上記のように記述することで、bodyタグに自動的にクラスを付与することができるbody_class()に独自のクラスを追加する方法です。
functions.phpで対応します。
例えば特定のカテゴリーページに「my_sample」という独自のクラスを付ける場合は以下のように記述します。
add_filter('body_class', 'custom_body_class');
function custom_body_class( $classes ) {
if ( is_category('カテゴリー名') ) {
$classes[] = 'my_sample';
}
return $classes;
}
特定の固定ページ(ページIDが11)とその子ページに独自クラスを付与したい場合は以下のように記述します。
add_filter('body_class', 'custom_body_class');
function custom_body_class($classes)
{
if (is_page())
{
global $post;
$current_id = $post->ID;
$parent_id = $post->post_parent; // 親ページのIDを取得
if ($current_id == 11 || $parent_id == 11)
{
$classes[] = 'my_page_group';
}
}
return $classes;
}
$classesに付与したいクラス名を追加します。あとは条件をいかに指定するかです。