Як я можу задати відносні зовнішні (//ajax.googleapis.com/…) сценарії протоколу?


14

Відповідно до Кодексу , wp_enqueue_script підтримує зовнішні посилання протоколу або агностичні протоколи: "Віддалені активи можна вказати за допомогою протокольної агностичної URL-адреси, тобто" //otherdomain.com/js/theirscript.js '. "

Але я цього не бачу:

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-адреси сайту.

Відповіді:


18

Код, який ви опублікували, працює чудово і призводить до цього у виведенні 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 на момент створення квитка.
Міхель ван Остерхаут
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.