A quanto ho capito, gli script di amministrazione dovrebbero essere registrati e accodati tramite l' admin_enqueue_scripts
hook e tutti gli altri script, wp_enqueue_scripts
quindi ho impostato le seguenti funzioni per registrare e accodare tutti i miei script in modo chiaro e organizzato.
La mia domanda è: cosa succede se ho bisogno di determinati script (ad es. Jquery validate plugin) sia in admin che nel front-end? qual è il metodo raccomandato per registrare e accodare lo script in questo caso? registrarlo due volte con un $ handle wp_enqueue_scripts
diverso o registrarlo solo e in tal caso, non c'è il rischio che non venga chiamato quando richiesto? (Voglio dire, perché altrimenti admin_enqueue_scripts
esisterebbe se non rendere tali script disponibili in un momento precedente?
Gradirei davvero che qualcuno me lo spiegasse per comprendere appieno le sfumature degli script di accodamento in wp. Grazie
Il mio codice:
// REGISTER ALL NON-ADMIN SCRIPTS
add_action( 'wp_enqueue_scripts', 'register_all_non_admin_scripts' );
function register_all_non_admin_scripts() {
wp_register_script( ... );
wp_register_script( ... );
}
// ENQUEUE NON-ADMIN SCRIPTS CONDITIONALLY
add_action( 'wp_enqueue_scripts', 'enqueue_scripts_where_required' );
function enqueue_scripts_where_required() {
// scripts to be loaded at all times
wp_enqueue_script( '' );
// scripts to be loaded conditionaly
if( is_page( '' ) ) {
wp_enqueue_style( '' );
}
}
// REGISTER ALL ADMIN SCRIPTS
add_action( 'admin_enqueue_scripts', 'register_all_admin_scripts' );
function register_all_admin_scripts(){
wp_register_script( ... );
wp_register_script( ... );
}
// ENQUEUE ADMIN SCRIPTS
add_action( 'admin_enqueue_scripts', 'enqueue_admin_contact_cpt_js' );
function enqueue_admin_contact_cpt_js(){
global $post_type;
// scripts to be loaded at all times
wp_enqueue_script( '' );
// scripts to be loaded conditionaly by post type
if( 'contact' == $post_type ){
wp_enqueue_script( '' );
...
}
}