Seperti yang saya pahami, skrip admin seharusnya didaftarkan dan di enqueued melalui admin_enqueue_scripts
hook dan semua skrip lainnya di wp_enqueue_scripts
jadi saya telah mengatur fungsi-fungsi berikut untuk mendaftar dan enqueue semua skrip saya dengan cara yang jelas dan terorganisir.
Pertanyaan saya adalah, bagaimana jika saya memerlukan skrip tertentu (mis. Plugin jquery validate ) baik di admin dan di ujung depan? apa metode yang disarankan untuk mendaftar dan membuat skrip dalam kasus ini? mendaftarkannya dua kali dengan $ handle yang berbeda atau mendaftar wp_enqueue_scripts
hanya melalui dan jika demikian, apakah tidak ada risiko tidak dipanggil saat diperlukan? (Maksud saya, mengapa lagi admin_enqueue_scripts
ada jika tidak membuat skrip tersebut tersedia pada waktu sebelumnya?
Saya akan sangat menghargai seseorang menjelaskan hal ini kepada saya untuk sepenuhnya memahami nuansa skrip enqueuing di wp. Terima kasih
Kode saya:
// 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( '' );
...
}
}
sumber