Como enfileirar o protocolo relativo a scripts externos (//ajax.googleapis.com/…)?


14

De acordo com o Codex , o wp_enqueue_script suporta links relativos ao protocolo ou independentes de protocolo: "Os ativos remotos podem ser especificados com uma URL independente de protocolo, ou seja, '//otherdomain.com/js/theirscript.js'".

Mas não estou vendo:

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

Resultado:

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

Observe que o URL relativo do protocolo é anexado ao URL do site.

Respostas:


17

O código que você postou funciona bem e resulta nisso na saída HTML:

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

Testado no WordPress 3.5 com este trecho 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);
}

Você sabia que isso é novo no WordPress 3.5?
Michiel van Oosterhout

Os URLs relativos ao protocolo foram adicionados há 7 meses: core.trac.wordpress.org/ticket/16560
Otto

Ok, então não é a versão do WordPress que estou usando. Então, o que poderia causar a diferença de comportamento?
Michiel van Oosterhout 28/01

1
Bem, esse código foi adicionado há 7 meses, mas se você olhar para o ticket, ele tem um marco de 3,5, então sim, provavelmente é um novo comportamento para o 3,5.
Otto

Ah, claro, eu estava olhando para o campo 'Versão', que foi definido como 3.1, mas essa é a versão do WordPress no momento em que o ticket foi criado.
Michiel van Oosterhout 29/01
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.