• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

プラグイン API/フィルターフック一覧/body class

提供: WordPress Codex 日本語版
移動先: 案内検索

説明

body_class フィルタは、現在のページの本文 HTML 要素に割り当てられているクラスをフィルタリングするために使用されます。

プラグイン ( またはテーマ ) はこれらのクラスをコードでフィルタリングできます

<?php add_filter( 'body_class', 'filter_function_name' ) ?>

'filter_function_name' は、クラスの割り当て時にWordPressが呼び出す関数です。フィルタ関数は、処理が完了した後にクラスの配列を返さなければならないこと、またはすべてのクラスがクリアされ、ユーザのサイトの視覚的な状態に重大な影響を与える可能性があることに注意してください。

filter_function_name は一意の関数名でなければなりません。既に宣言されている他の関数名と一致することはできません。

このフィルタは、get_body_class() 関数によって使用されます。

使い方

WordPressのマルチサイトのクラス

これは、同じテーマを使用するマルチサイトの特定のサイトに対して、異なるスタイルを適用する為のカスタムクラスを提供できます。

// Apply filter
add_filter('body_class', 'multisite_body_classes');

function multisite_body_classes($classes) {
        $id = get_current_blog_id();
        $slug = strtolower(str_replace(' ', '-', trim(get_bloginfo('name'))));
        $classes[] = $slug;
        $classes[] = 'site-id-'.$id;
        return $classes;
}

$classes は配列であることに注意してください。つまり、新しいクラスを追加したり、不要なクラスを設定解除したりすることができます。

ソースファイル

get_body_class()は次の場所にあります。wp-includes/post-template.php

関連項目


最新英語版: WordPress Codex » Plugin_API/Filter_Reference/body_class