No functions.php do meu tema, estou chamando um add_action para obter uma medida de controle sobre onde o jquery é carregado (no rodapé, juntamente com os outros scripts do meu tema).
O problema que estou tendo é que, quando uso add_action ('wp_enqueue_scripts'), ele parece disparar apenas se nenhum plug-in estiver carregado. No entanto, o método add_action ('init') funciona em todos os casos.
Não me lembro por quê, mas acredito que add_action ('wp_enqueue_scripts') seja preferida nesse caso. Se isso for verdade, como posso fazê-lo funcionar em todos os casos?
Em functions.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');
}
Em functions_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');
}
O segundo método, usando add_action ('wp_enqueue_scripts'), aparentemente não é executado em condições em que existe um plug-in que grava dependências de script no tema.