概要
content_url
フィルタは、WordPressの wp-content ディレクトリの URL を取得する際に使用されます。このフィルタは、サーバー上のリソースへのパスを生成するため、次のような機能を実装する際によく使われます。
- メディアファイルのパスを取得する
- プラグインのリソース(例: スクリプトやスタイルシート)のパスを設定する
- テーマのカスタム画像の URL を取得する
- JSON API など、自作のエンドポイントの URL を生成する
- CDN (Content Delivery Network) を使用する際のカスタム URL を作成する
- アセットのパスをフックして変更する際に使用
- URL のプレフィックスを変更する必要がある場合
- 外部リソースを呼び出す際に動的に URL を生成する
構文
apply_filters( 'content_url', $url, $path );
パラメータ
$url
(string): デフォルトの wp-content ディレクトリの URL$path
(string): 追加されるパスやファイル名
戻り値
- (string): 変更後のコンテンツURL。
関連する関数
使用可能なバージョン
このフィルタは、WordPress 2.6.0 以降で利用可能です。
コアファイルのパス
wp-includes/functions.php
サンプルコード
サンプル1: CDN URLへの変更
このサンプルコードでは、content_url
フィルタを使って、通常のメディアファイルの URL を CDN URL に置き換えます。
add_filter( 'content_url', function( $url ) {
return str_replace( 'wp-content', 'cdn.example.com/wp-content', $url );
});
サンプル2: 認証されたユーザーのメディアURLを生成
このコードは、認証されたユーザーのメディアファイルの URL を生成するためにフィルタを使用しています。
add_filter( 'content_url', function( $url, $path ) {
if ( is_user_logged_in() ) {
return $url . '/private/' . $path;
}
return $url;
}, 10, 2 );
サンプル3: wp-contentディレクトリ内の特定フォルダへのパスを追加
このサンプルでは、content_url
フィルタを用いて、特定のフォルダへのカスタムパスを作成しています。
add_filter( 'content_url', function( $url ) {
return $url . '/custom-folder/';
});
サンプル4: プラグイン用リソースのパス変更
このコードスニペットは、特定のプラグインに関連するリソースの URL を変更しています。
add_filter( 'content_url', function( $url ) {
return $url . '?version=1.0';
});
サンプル5: テーマでのURL操作
このサンプルでは、テーマのアセットの URL を変更するためにフィルタを使用しています。
add_filter( 'content_url', function( $url ) {
return $url . '/themes/mytheme/';
});
この関数のアクションでの使用可能性
アクション | 使用可能性 |
---|---|
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 |
非推奨または削除されたバージョン
このフィルタは、特定のバージョンで非推奨または削除されていません。