Как раз запустил сайт WordPress, но заметил, что в настоящее время он загружается в два файла jquery, один из wp-includes и один из моего header.php
, есть ли способ заставить WordPress загружать wp-include на front-end? Сделал довольно много поиска, и единственное упоминание об этом, похоже, включает следующий код, но я не могу найти никакой документации об этом, каких-либо идей?
<?php wp_enqueue_script("jquery"); ?>
Начиная с WordPress 3.3, это лучший способ сделать это, используя правильный крюк:
if (!is_admin()) add_action("wp_enqueue_scripts", "my_jquery_enqueue", 11); function my_jquery_enqueue() { wp_deregister_script('jquery'); wp_register_script('jquery', "http" . ($_SERVER['SERVER_PORT'] == 443 ? "s" : "") . "://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js", false, null); wp_enqueue_script('jquery'); }
вам нужно включить следующий код перед <?php wp_head(); ?>
<?php wp_head(); ?>
в вашем header.php
<?php wp_enqueue_script("jquery"); ?>
и вы можете удалить другие jquery из header.php
В дополнение к тому, что сказал Арам Мкртчян, вы также можете вставить свои сценарии в wp_enqueue_script()
.
<?php wp_enqueue_script('jquery'); wp_enqueue_script('your_script', "path/to/your/script.js" , array('jquery')); ?>
Третий аргумент wp_enqueue_script()
сообщает WordPress, что your_script
зависит от jquery
, поэтому загружайте его только после загрузки jquery
.
На самом деле, вам нужно использовать admin_init
чтобы он работал в разделе admin:
function jquery_for_admin() { wp_enqueue_script('jquery'); return; } add_action('admin_init', 'jquery_for_admin');