概要
wp_get_global_stylesheet
関数は、コア、テーマ、ユーザーデータを統合したスタイルシートを取得するための関数です。この関数は、WordPress のデザインやスタイルを変更したり、利用者ごとに異なるスタイルを適用したりする際に使用されます。
この関数は、さまざまな状況で役立ちます。以下に、よく使われる用途をいくつか挙げます。
- テーマにカスタムスタイルを追加する時
- 子テーマのスタイルを適用する時
- プラグインから特定のスタイルをインポートする時
- プロフィールに基づいたカスタムCSSを適用する時
- 管理画面のカスタマイズ時
- ユーザーの役割に応じてスタイルを変更する時
- デバッグ用のスタイルを動的に追加する時
- グローバルなスタイル設定を変更する時
構文
wp_get_global_stylesheet();
パラメータ
この関数は、 parameters を取らず、省略可能です。
戻り値
この関数は、取得したスタイルシートの内容を返します。
関連する関数
使用可能なバージョン
この関数は、WordPress 5.9 以降で使用可能です。
コアファイルのパス
wp_get_global_stylesheet
関数は、wp-includes/class-wp-global-styles.php
に含まれています。
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |
サンプルコード
サンプル1: スタイルシートを表示する
このサンプルコードでは、取得したスタイルシートを <style>
タグで表示します。
function display_global_stylesheet() {
$stylesheet = wp_get_global_stylesheet();
if ( ! empty( $stylesheet ) ) {
echo '<style>' . esc_html( $stylesheet ) . '</style>';
}
}
add_action( 'wp_head', 'display_global_stylesheet' );
サンプル2: スタイルシートを変更する
ユーザーの役割に応じて、異なるスタイルを適用する際のサンプルです。
function custom_user_stylesheet() {
if ( current_user_can( 'administrator' ) ) {
// 管理者用のスタイル
$stylesheet = wp_get_global_stylesheet() . 'body { background-color: #f0f0f0; }';
} else {
// 一般ユーザー用のスタイル
$stylesheet = wp_get_global_stylesheet() . 'body { background-color: #ffffff; }';
}
echo '<style>' . esc_html( $stylesheet ) . '</style>';
}
add_action( 'wp_head', 'custom_user_stylesheet' );
サンプル3: カスタムスタイルの出力
特定の条件でカスタムスタイルを出力する例です。
function add_custom_styles() {
if ( is_single() ) {
$stylesheet = wp_get_global_stylesheet() . '.post { font-size: 18px; }';
echo '<style>' . esc_html( $stylesheet ) . '</style>';
}
}
add_action( 'wp_head', 'add_custom_styles' );
サンプル4: スタイルを利用してデバッグ
デバッグモードの際のみ、特定のスタイルを表示する際のサンプルです。
function debug_styles() {
if ( defined( 'WP_DEBUG' ) && WP_DEBUG ) {
$stylesheet = wp_get_global_stylesheet() . 'body { border: 5px solid red; }';
echo '<style>' . esc_html( $stylesheet ) . '</style>';
}
}
add_action( 'wp_head', 'debug_styles' );
サンプル5: 条件付きでスタイルを適用
特定のカテゴリーの投稿に対して、異なるスタイルを適用する例です。
function category_specific_styles() {
if ( is_category( 'news' ) ) {
$stylesheet = wp_get_global_stylesheet() . '.news { color: blue; }';
echo '<style>' . esc_html( $stylesheet ) . '</style>';
}
}
add_action( 'wp_head', 'category_specific_styles' );
以上のサンプルコードは、wp_get_global_stylesheet
関数の様々な使用例を示しています。これらの例は、WordPressの開発に役立つ基本的な実装です。