Trong hàm.php của chủ đề của tôi, tôi đang gọi add_action để có được số đo kiểm soát nơi tải jquery (ở chân trang cùng với các tập lệnh khác của chủ đề của tôi).
Vấn đề tôi gặp phải là khi tôi sử dụng add_action ('wp_enqueue_scripts'), nó chỉ xuất hiện để kích hoạt nếu không có plugin nào được tải. Tuy nhiên, phương thức add_action ('init') hoạt động trong mọi trường hợp.
Tôi không thể nhớ tại sao, nhưng tôi tin rằng add_action ('wp_enqueue_scripts') được ưu tiên trong trường hợp này. Nếu đó là sự thật, làm thế nào tôi có thể làm cho nó hoạt động trong mọi trường hợp?
Trong hàm.php
//if(!is_admin()){add_action('init', 'my_theme_init');} //THIS WORKS ALL THE TIME
//add_action('wp_enqueue_scripts', 'my_theme_init'); //THIS ONLY WORKS WHEN NO PLUGINS PRESENT
if(!is_admin())
{
require_once(TEMPLATEPATH . '/functions_public.php');
}
Trong Hàm_public.php
function my_theme_init()
{
/* PREVENT DUPLICATE COPIES OF JQUERY FROM PLUGINS
**************************************************/
wp_deregister_script('jquery');
/* LOAD THE LOCAL WORDPRESS COPY OF JQUERY AND THEME CUSTOM SCRIPTS IN THE FOOTER
***********************************************/
wp_register_script('jquery', get_bloginfo('template_directory').'/scripts.mythemescripts.js',false,false,true);
wp_enqueue_script('jquery');
}
Phương thức thứ 2, sử dụng add_action ('wp_enqueue_scripts') dường như không được thực thi trong điều kiện có plugin bổ sung ghi ra các phụ thuộc tập lệnh vào chủ đề.