0

includes_url()は、WordPress の includes ディレクトリへの URL を取得する関数で、デフォルトでは出力はhttp://example.com/wp-includes/.

コアからの関数のコード:

function includes_url($path = '') {
    $url = site_url() . '/' . WPINC . '/';

    if ( !empty($path) && is_string($path) && strpos($path, '..') === false )
        $url .= ltrim($path, '/');

    return apply_filters('includes_url', $url, $path);
}

関数を自分のものに置き換えるにはどうすればよいですか (functions.php を使用)。本質的に、2 行目を次のように変更したい —$url = 'http://static-content.com/' . WPINC . '/';

4

2 に答える 2

4

既存の関数が必要なものをadd_filter返すようにするために使用できるフィルターがあります。

$callback = function($url, $path) {
    $url = 'http://static-content.com/' . WPINC . '/';

    if ( !empty($path) && is_string($path) && strpos($path, '..') === false )
        $url .= ltrim($path, '/');

    return $url;
};

add_filter('includes_url', $callback, 10, 2);

編集: PHP 5.2 バージョン:

function includes_url_static($url, $path) {
    $url = 'http://static-content.com/' . WPINC . '/';

    if ( !empty($path) && is_string($path) && strpos($path, '..') === false )
        $url .= ltrim($path, '/');

    return $url;
}

$callback = 'includes_url_static';

add_filter('includes_url', $callback, 10, 2);
于 2012-06-29T17:36:03.477 に答える
0

1 つのオプションは、独自の関数を作成し、それを呼び出しincludes_url()て変更することです。

function custom_includes_url($path = '') {
  $url = includes_url($path);

  return str_replace(site_url(), 'http://static-content.com', $url);
}

custom_includes_url()しかし、どこでも呼び出す必要があります。

于 2012-06-29T17:31:31.300 に答える