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

概要

site_urlフィルタは、WordPressサイトのURLを取得、変更する際に使用されるフィルタです。このフィルタは、サイトのURLを動的に変更する必要がある場合に役立ちます。具体的には、サードパーティのサービスやカスタムのURL短縮を実装する際に便利です。

よく使われる機能としては以下のようなものが挙げられます。
1. ブランディングURLの設定
2. サードパーティーAPIのURL拡張
3. URLのリダイレクト処理
4. マルチサイト環境におけるURL調整
5. SSL化後のURL変更
6. CDN用のカスタムURL設定
7. テスト環境のURL調整
8. ポート番号の追加や変更

構文

apply_filters( 'site_url', string $url, string $path, string $scheme );

パラメータ

  • $url – 現在のサイトURL
  • $path – URLに追加するパス
  • $scheme – スキーム(http, httpsなど)

戻り値

  • フィルタリングされたサイトURL

関連する関数

site_url

使用可能なバージョン

  • WordPress 1.5 以降(非推奨または削除されたバージョンはありません)

コアファイルパス

  • wp-includes/rest-api/endpoints/class-wp-rest-sites-controller.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: URLの変更

add_filter('site_url', function($url) {
    return str_replace('http://', 'https://', $url);
});

このコードは、サイトURLをhttpからhttpsに変更します。

サンプルコード2: カスタムパスの追加

add_filter('site_url', function($url, $path) {
    return $url . '/custom-path/' . $path;
}, 10, 2);

このコードでは、すべてのサイトURLにカスタムパスを追加します。

サンプルコード3: サードパーティサービスのURLを追加

add_filter('site_url', function($url) {
    return $url . '/services/';
});

このコードは、すべてのサイトURLに特定のサービスへのパスを追加します。

サンプルコード4: リダイレクト用URLの設定

add_filter('site_url', function($url) {
    return $url . '/redirect/';
});

このコードは、サイトURLにリダイレクト用のパスを付与します。

サンプルコード5: テスト環境用のURL変更

add_filter('site_url', function($url) {
    if (defined('WP_ENV') && WP_ENV === 'testing') {
        return 'https://test.example.com';
    }
    return $url;
});

このコードは、環境変数がテスト用の場合に特定のURLを返します。

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


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