概要
is_random_header_imageフィルタは、テーマがランダムヘッダイメージに対応しているか調べるために使用されます。このフィルタは、ユーザーが投稿やページのヘッダー画像をランダムに設定できるかどうかを判断するのに役立ちます。具体的には、以下のような機能実装時に利用されることが多いです。
- ヘッダー画像の自動変更
- スライドショー風の表示
- シーズンやイベントに応じたカスタマイズ
- テーマオプションでの画像選択
- ユーザーが選んだ画像を反映させる
- ソーシャルメディアでのシェア時の画像選定
- ブランドの一貫性確保
- 他のプラグインとの連携による拡張機能
構文
apply_filters( 'is_random_header_image', $is_random );
パラメータ
$is_random(boolean): 現在のヘッダー画像がランダムかどうかを示す値。
戻り値
- (boolean): ランダムヘッダー画像である場合はtrue、それ以外はfalseを返します。
関連する関数
is_random_header_imageフィルタに関連する関数
使用可能なバージョン
このフィルタはWordPress 3.0以降で利用可能です。
コアファイルのパス
wp-includes/theme.php
サンプルコード
サンプルコード 1: ランダムヘッダ画像を有効にする
add_filter( 'is_random_header_image', function( $is_random ) {
return true; // ランダムヘッダ画像を有効にする
});
このサンプルコードでは、is_random_header_imageフィルタを使用してランダムヘッダ画像を常に有効にします。
サンプルコード 2: 特定条件でランダムヘッダ画像を無効にする
add_filter( 'is_random_header_image', function( $is_random ) {
if ( is_page('contact') ) {
return false; // お問い合わせページではランダムを無効にする
}
return $is_random;
});
このコードは、お問い合わせページでランダムヘッダ画像を無効にします。
サンプルコード 3: 管理画面での設定を反映する
add_filter( 'is_random_header_image', function( $is_random ) {
return get_option( 'use_random_header', false ); // 設定に応じて返す
});
ユーザーが設定画面で選択したオプションに基づいて、ランダムヘッダ画像の有無を決定します。
サンプルコード 4: テーマオプションの条件を加える
add_filter( 'is_random_header_image', function( $is_random ) {
return is_single() && get_theme_mod( 'random_header_setting', false );
});
このコードは、個別の投稿が表示される場合にテーマの設定に基づいてランダムヘッダ画像を返します。
サンプルコード 5: ブロックエディタでの適用
add_filter( 'is_random_header_image', function( $is_random ) {
return ( isset( $_POST['content'] ) && strpos( $_POST['content'], 'random-header' ) !== false );
});
このコードは、ブロックエディタのコンテンツに特定の文字列が含まれている場合にランダムヘッダ画像の適用を行います。
この関数のアクションでの使用可能性
| アクション | 使用可能性 |
|---|---|
| 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 |
非推奨または削除されたワードプレスバージョン
現在のところ、is_random_header_imageフィルタは非推奨または削除されていません。