Jak mogę kolejkować względne skrypty zewnętrzne protokołu (//ajax.googleapis.com/...)?

14

Zgodnie z Kodeksem wp_enqueue_script obsługuje zewnętrzne linki względne lub niezależne od protokołu: „Zdalne zasoby można określić za pomocą adresu URL niezależnego od protokołu, tj.„ //Otherdomain.com/js/theirscript.js ”.”

Ale nie widzę tego:

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

Wynik:

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

Zauważ, że względny protokół protokołu jest dołączany do adresu URL witryny.

Michiel van Oosterhout
źródło

Odpowiedzi:

18

Wysłany kod działa dobrze i powoduje to w wyniku HTML:

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

Testowany na WordPress 3.5 z tym fragmentem kodu:

add_action('wp_enqueue_scripts', 'test');
function test() {
  wp_enqueue_script('google-maps', '//maps.googleapis.com/maps/api/js?&sensor=false', array(), '3', true);
}
Otto
źródło
Czy wiesz, że to nowość w WordPress 3.5?
Michiel van Oosterhout
Adresy URL zależne od
Otto
Ok, więc nie używam wersji WordPress. Co może powodować różnicę w zachowaniu?
Michiel van Oosterhout
1
Cóż, ten kod został dodany 7 miesięcy temu, ale jeśli spojrzysz na bilet, ma on kamień milowy 3.5, więc tak, to prawdopodobnie nowe zachowanie do 3.5.
Otto
No tak, patrzyłem na pole „Wersja”, które było ustawione na 3.1, ale taka jest wersja WordPressa w momencie tworzenia biletu.
Michiel van Oosterhout