Nelle funzioni.php del mio tema, sto chiamando add_action per ottenere una misura di controllo su dove è caricato jquery (nel piè di pagina insieme agli altri script del mio tema).
Il problema che sto riscontrando è che quando uso add_action ('wp_enqueue_scripts'), sembra funzionare solo se non sono caricati plugin. Tuttavia, il metodo add_action ('init') funziona in tutti i casi.
Non ricordo il perché, ma credo che add_action ('wp_enqueue_scripts') sia preferito in questo caso. Se questo è vero, come posso farlo funzionare in tutti i casi?
In 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');
}
In 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');
}
Il secondo metodo, usando add_action ('wp_enqueue_scripts') apparentemente non viene eseguito in condizioni in cui è presente un plugin che scrive le dipendenze degli script sul tema.