Кодекс WordPress говорит :
$ in_footer
(булево) (необязательно) Обычно сценарии размещаются в разделе. Если этот параметр имеет значение true, скрипт размещается в нижней части. Это требует, чтобы тема имела хук wp_footer () в соответствующем месте. Обратите внимание, что вы должны поставить в очередь свой скрипт перед запуском wp_head, даже если он будет помещен в нижний колонтитул. (Новое в WordPress 2.8) По умолчанию: false
Поэтому я добавил true
после каждого сценария src path
:
/**
* JavaScript
*/
function my_scripts_method() {
wp_deregister_script( 'jquery' );
wp_register_script( 'jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js', true );
wp_enqueue_script( 'jquery' );
}
add_action('wp_enqueue_scripts', 'my_scripts_method');
function media_queries_script() {
wp_register_script( 'mediaqueries', get_template_directory_uri() . '/js/css3-mediaqueries.js', true );
wp_enqueue_script( 'mediaqueries' );
}
add_action('wp_enqueue_scripts', 'media_queries_script');
function custom_script() {
wp_register_script( 'custom', get_template_directory_uri() . '/js/custom.js', true );
wp_enqueue_script( 'custom' );
}
add_action('wp_enqueue_scripts', 'custom_script');
function replace_script() {
wp_register_script( 'replace', get_template_directory_uri() . '/js/jquery.ba-replacetext.min.js', true );
wp_enqueue_script( 'replace' );
}
add_action('wp_enqueue_scripts', 'replace_script');
Но сценарии все еще включены в заголовок.
Любые предложения, чтобы это исправить?
источник
true
илиwp_enqueue
либоwp-register_script
работает просто отлично.wp_register_script()
Принимает одинаковое количество аргументов и добавляет в$wp_scripts
глобальный массив иdata
вложенный массив . Объединив неверную информацию с отличной читабельностью вашего ответа, я дам вам -1 (будет удален при переделке).<?php wp_footer(); ?>
не существовал в шаблоне страницы. После этогоtrue
параметр inwp_enqueue_script
сделал свое дело.Вы передаете значение bool параметру зависимости. Попробуй это:
источник
У меня была та же проблема, и после некоторого поиска мне не хватало этой функции в моей пользовательской теме:
источник
Я хотел бы упростить ответ здесь. При использовании wp_enqueue_script или wp_register_script для загрузки скрипта в нижний колонтитул необходимо убедиться, что вы включили и другие параметры, даже если они пустые.
Я пытался..
Который не работал, как заметил @janoChen. WordPress призывает
Поэтому вам нужно включить
'',
параметры, которые вы не используете, если хотите объявить функцию встроенной. Поэтому приведенный ниже код работает, как и планировалось.Впоследствии вы можете объявить функцию в массиве, подобном формату, как показывает @Brian Fegter.
источник
'',
там , где параметры обязательны, не обязательно.Если вы ставите скрипт в заголовок, но объявляете зависимость от скрипта, поставленного в нижний колонтитул, WordPress переместит скрипт нижнего колонтитула в заголовок, чтобы сделать его доступным для зависимых скриптов.
источник
Согласно официальной документации WordPress (последняя проверка - май 2018 г.):
https://developer.wordpress.org/reference/functions/wp_enqueue_script/
и личный опыт от 7+ лет.
Вы должны всегда пытаться использовать функцию wp_enqueue_scripts для лучшей совместимости с установленными плагинами / темами.
Вы можете найти больше информации об использовании официальных документов здесь
PS Если вы найдете этот ответ полезным, пожалуйста, дайте ему '▲' ( ArrowUP ), если вы думаете, что его можно улучшить, пожалуйста, прокомментируйте ниже.
источник