プロトコル相対外部(//ajax.googleapis.com/…)スクリプトをエンキューするにはどうすればよいですか?


14

Codexによると、wp_enqueue_scriptは、プロトコル相対リンクまたはプロトコルに依存しない外部リンクをサポートします。

しかし、私はそれを見ていません:

wp_enqueue_script('google-maps', '//maps.googleapis.com/maps/api/js?&sensor=false', array(), '3', true);

出力:

<script type='text/javascript' src='http://localhost:25898//maps.googleapis.com/maps/api/js?sensor=false&#038;ver=3'></script>

プロトコルの相対URLがサイトのURLに追加されていることに注意してください。

回答:


17

投稿したコードは正常に機能し、HTML出力で次のようになります。

<script type='text/javascript' src='//maps.googleapis.com/maps/api/js?sensor=false&#038;ver=3'></script>

このコードスニペットでWordPress 3.5でテスト済み:

add_action('wp_enqueue_scripts', 'test');
function test() {
  wp_enqueue_script('google-maps', '//maps.googleapis.com/maps/api/js?&sensor=false', array(), '3', true);
}

これがWordPress 3.5の新機能であることをご存知ですか?
ミシェルヴァンオーステルハウト

プロトコル相対URLは7か月前に追加されました:core.trac.wordpress.org/ticket/16560
オットー

わかりましたので、私が使用しているWordPressのバージョンではありません。では、何が行動の違いを引き起こすのでしょうか?
ミシェルヴァンオーステルハウト

1
まあ、そのコードは7か月前に追加されましたが、チケットを見ると、3.5マイルストーンであるため、おそらく3.5の新しい動作です。
オットー

そう、私は3.1に設定された「バージョン」フィールドを見ていましたが、それはチケットが作成された時点のWordPressのバージョンです。
ミシェルヴァンオーステルハウト
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.