ワードプレスのwp_internal_hostsフィルタの使用方法・解説

概要

wp_internal_hostsフィルタは、WordPressの内部ホスト名のリストを取得し、サイトのホスト名を照合する際に使用されます。このフィルタは、特定のホスト名とその動作をカスタマイズするために役立ちます。具体的には、以下のような機能を実装する際によく使われます。

  1. 外部メールサービスの統合
  2. カスタムドメインのハンドリング
  3. マルチサイト設定の管理
  4. プラグインの条件的な動作
  5. セキュリティ機能の構築
  6. サイト上のリダイレクトルールの定義
  7. 特定のホスト名に対するカスタマイズ
  8. デバッグ情報の出力

構文

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 のみに設定します。

引用元のページはそれぞれのサンプルコードに基づいて適宜検索等で追加してください(著作権の観点から、具体的な引用元は記載しておりません)。

この関数について質問する


上の計算式の答えを入力してください