¿Cómo puedo poner en cola los scripts externos relativos al protocolo (//ajax.googleapis.com/…)?


14

Según el Codex , wp_enqueue_script admite enlaces externos relativos al protocolo o independientes del protocolo: "Los activos remotos se pueden especificar con una URL independiente del protocolo, es decir, '//otherdomain.com/js/theirscript.js'".

Pero no lo estoy viendo:

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

Salida:

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

Observe que la URL relativa del protocolo se agrega a la URL del sitio.

Respuestas:


17

El código que publicó funciona bien y da como resultado esto en la salida HTML:

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

Probado en WordPress 3.5 con este fragmento de código:

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

¿Sabes que esto es nuevo en WordPress 3.5?
Michiel van Oosterhout

Las URL relativas al protocolo se agregaron hace 7 meses: core.trac.wordpress.org/ticket/16560
Otto

Ok, entonces no es la versión de WordPress que estoy usando. Entonces, ¿qué podría causar la diferencia en el comportamiento?
Michiel van Oosterhout

1
Bueno, ese código se agregó hace 7 meses, pero si miras el ticket, tiene un hito de 3.5, así que sí, probablemente sea un nuevo comportamiento para 3.5.
Otto

Ah, claro, estaba mirando el campo 'Versión' que estaba configurado en 3.1, pero esa es la versión de WordPress en el momento en que se creó el ticket.
Michiel van Oosterhout
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.