概要
wp_scripts_get_suffix
フィルタは、WordPressにおいてスクリプト向けのサフィックスを取得するためのフィルタです。このフィルタは、特定の環境や条件に応じてスクリプトのバージョン管理や最適化を行う際に非常に役立ちます。具体的には、以下のようなケースでよく使用されます。
- キャッシュバスティング
- スクリプトの圧縮や最小化
- 特定のデバッグモードの有効化
- ユーザーのブラウザによる特定のサフィックス付加
- SSL環境下でのスクリプトの読み込み制御
- 複数のCDNを使用する場合の動的サフィックス
- ローカル開発環境への対応
- 特定のプラグインやテーマに応じたサフィックス付加
構文
add_filter('wp_scripts_get_suffix', 'your_function_name');
パラメータ
- $suffix: 取得するスクリプト向けのサフィックス。
- $version: スクリプトのバージョン。
戻り値
- フィルタによって変更されたスクリプトのサフィックス。
関連する関数
使用可能なバージョン
WordPress 4.8以降で利用可能。
コアファイルのパス
wp-includes/script-loader.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
add_filter('wp_scripts_get_suffix', function($suffix) {
if (defined('SCRIPT_DEBUG') && SCRIPT_DEBUG) {
return ''; // デバッグモードではサフィックスを付けない
}
return '.min'; // 通常は.minをサフィックスとして使用
});
このサンプルコードは、デバッグモードが有効な場合にサフィックスを空にし、通常は.min
を付加するものです。
サンプルコード2
add_filter('wp_scripts_get_suffix', function($suffix) {
if (is_ssl()) {
return '.ssl'; // SSL環境では特定のサフィックスを使用
}
return $suffix;
});
このサンプルコードは、SSL環境下でのスクリプトに特定のサフィックス.ssl
を付与するものです。
サンプルコード3
add_filter('wp_scripts_get_suffix', function($suffix, $version) {
if ($version == '1.0.0') {
return '.v1'; // バージョン1.0.0の場合は.v1を付加
}
return $suffix;
}, 10, 2);
このサンプルコードは、特定のバージョンに応じて異なるサフィックスを設定します。
サンプルコード4
add_filter('wp_scripts_get_suffix', function($suffix) {
return '.custom-suffix'; // 任意のカスタムサフィックスを付与
});
このコードは、スクリプトに任意のカスタムサフィックスを追加します。
サンプルコード5
add_filter('wp_scripts_get_suffix', function($suffix) {
if (WP_ENV === 'development') {
return '.dev'; // 開発環境では.devをサフィックスに付加
}
return $suffix;
});
この例は、環境変数に基づいて開発環境でのみ特定のサフィックス.dev
を追加します。