Come posso accodare gli script relativi al protocollo esterno (//ajax.googleapis.com/…)?


14

Secondo il Codex , wp_enqueue_script supporta il protocollo relativo o i collegamenti esterni agnostici del protocollo: "Le risorse remote possono essere specificate con un URL indipendente dal protocollo, ovvero" //otherdomain.com/js/theirscript.js "."

Ma non lo vedo:

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

Produzione:

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

Si noti che l'URL relativo del protocollo viene aggiunto all'URL del sito.

Risposte:


17

Il codice che hai pubblicato funziona bene e ne risulta nell'output HTML:

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

Testato su WordPress 3.5 con questo frammento di codice:

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

Lo sai che è una novità di WordPress 3.5?
Michiel van Oosterhout,

Gli URL relativi al protocollo sono stati aggiunti 7 mesi fa: core.trac.wordpress.org/ticket/16560
Otto

Ok, quindi non è la versione di WordPress che sto usando. Quindi cosa potrebbe causare la differenza di comportamento?
Michiel van Oosterhout,

1
Bene, quel codice è stato aggiunto 7 mesi fa, ma se guardi il ticket, ha un traguardo di 3,5, quindi probabilmente è un nuovo comportamento a 3,5.
Otto

Oh giusto, stavo guardando il campo 'Versione' che era impostato su 3.1, ma quella è la versione di WordPress al momento della creazione del ticket.
Michiel van Oosterhout,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.