WordPressの関数を少しずつまとめていきます。
今回は、ページの種類に応じたclass属性を出力する関数「body_class」です。

基本的な使い方

body要素に、ページの種類に応じて適切なclass名を割り当てる関数です。

パラメータ追加したいclass名
戻り値無し
利用箇所どこでも利用可能

通常はパラメータを指定せずに、body要素に対して以下のように書きます。

<body <?php body_class(); ?>>

出力されるclass名は、テンプレートの種類に応じて決まります。

メインブログページhome blog
フロントページhome page page-id-ページID
投稿ページsingle single-post postid-ページID
固定ページpage page-id-ページID page-template page-template-テンプレート名 page-parent(親ページ) page-child(子ページ) parent-pageid-parent-ID(子ページ)
カテゴリー・アーカイブページarchive category category-カテゴリーのスラッグ
タグ・アーカイブページarchive tag tag-タグのスラッグ
月日系・アーカイブページarchive date
ユーザー・アーカイブページarchive author author-ユーザー名
検索結果ページsearch search-results search-no-results(検索結果なし)

body_class 関数の応用:class名を追加

要素に独自のclass名を追加したい場合は、そのclass名をパラメータで指定します。

body要素にclass名「sub-page」を追加する

<body <?php body_class( 'sub-page' ); ?>>