jquery не будет загружаться в нижний колонтитул


Я хотел переместить jquery в нижний колонтитул сайта, но это не работает. Я пробовал это со следующим кодом.

Как вы можете видеть, у меня есть еще несколько сценариев, и они правильно загружаются в нижний колонтитул. Только jquery не будет работать.

//This adds our JavaScript Files
function wel_adding_scripts() {

wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js', '', '2.1.1', true); 
wp_enqueue_script( 'jquery');

wp_register_script('jquery.mixitup', get_template_directory_uri() . 'js/jquery.mixitup.min.js','','1.1', true);
wp_enqueue_script('jquery.mixitup');

wp_register_script('headroom', get_template_directory_uri() . 'js/headroom.min.js','','1.1', true);
wp_enqueue_script('headroom');
}
add_action( 'wp_enqueue_scripts', 'wel_adding_scripts' ); 
Author: Pieter Goosen, 2014-08-19

4 answers

Обратите внимание, что если какой-либо сценарий в заголовке вообще нуждается в jQuery, то он переместит его в верхний колонтитул, независимо от того, был ли он изменен для постановки в очередь для нижнего колонтитула.

Поэтому, хотя изменение его на очередь для нижнего колонтитула имеет смысл, это редко срабатывает, когда происходит много сценариев.

 6
Author: Rarst, 2014-08-19 15:02:53

Вот в чем проблема

Если вы попытаетесь зарегистрировать или поставить в очередь уже зарегистрированный дескриптор с другими параметрами, новые параметры будут проигнорированы. Вместо этого используйте wp_deregister_script() и снова зарегистрируйте скрипт с новыми параметрами.

Сначала вам придется отменить регистрацию jquery, зарегистрировать его снова, но осторожно, потому что пустая строка - это не то, что вы должны поместить вместо параметра deps. ЭТО должно быть пустое массив.

Вот так:

     wp_register_script('jquery',
 'http://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js',
     array() , '2.1.1', true); 
 1
Author: Tomás Cot, 2014-08-19 12:31:02

Исправлено: я все время делаю это правильно. Теперь я обнаружил, что jquery был снят с регистрации в темах header.php файл. Я удалил его, и теперь он работает.

 0
Author: hazelnut, 2014-08-20 08:29:01
<?php
function your_function() {
    echo '<p>This is inserted at the bottom</p>';
}
add_action('wp_footer', 'my_function');
?>

Вы можете использовать этот крючок. Это используется для загрузки скрипта в нижний колонтитул, попробуйте, дайте мне знать, если возникнут какие-либо сомнения.

 -1
Author: Sri, 2014-08-19 12:44:55