概要
wp_internal_hosts
フィルタは、WordPressの内部ホスト名のリストを取得し、サイトのホスト名を照合する際に使用されます。このフィルタは、特定のホスト名とその動作をカスタマイズするために役立ちます。具体的には、以下のような機能を実装する際によく使われます。
- 外部メールサービスの統合
- カスタムドメインのハンドリング
- マルチサイト設定の管理
- プラグインの条件的な動作
- セキュリティ機能の構築
- サイト上のリダイレクトルールの定義
- 特定のホスト名に対するカスタマイズ
- デバッグ情報の出力
構文
apply_filters( 'wp_internal_hosts', $hosts );
パラメータ
$hosts
(array): 既定の内部ホスト名の配列。
戻り値
- (array): フィルタをかけた後の内部ホスト名の配列。
関連する関数
使用可能なバージョン
- WordPress 4.0.0以降
ワードプレスのコアファイルのパス
wp-includes/default-filters.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_internal_hosts', function($hosts) {
$hosts[] = 'example.com';
return $hosts;
});
このコードは、デフォルトの内部ホスト名のリストに example.com
を追加します。
サンプルコード 2
add_filter('wp_internal_hosts', function($hosts) {
return array_merge($hosts, ['another-example.com', 'yetanother.com']);
});
このコードは、デフォルトのホスト名に2つの新しいホスト名を追加します。
サンプルコード 3
add_filter('wp_internal_hosts', function($hosts) {
return array_filter($hosts, function($host) {
return strpos($host, '.dev') === false; // .dev ドメインをフィルタリング
});
});
このコードは、ホスト名から .dev
ドメインを除外します。
サンプルコード 4
add_filter('wp_internal_hosts', function($hosts) {
if (is_localhost()) {
$hosts[] = 'localhost';
}
return $hosts;
});
このコードは、ローカルホストでアクセスしている場合に localhost
を内部ホスト名に追加します。
サンプルコード 5
add_filter('wp_internal_hosts', function($hosts) {
return ['my-custom-domain.com']; // 任意のドメインに置き換え
});
このコードは、内部ホスト名を my-custom-domain.com
のみに設定します。
引用元のページはそれぞれのサンプルコードに基づいて適宜検索等で追加してください(著作権の観点から、具体的な引用元は記載しておりません)。