내가 이해하는 것처럼 관리자 스크립트는 admin_enqueue_scripts
후크와 다른 모든 스크립트를 통해 등록되고 대기열에 wp_enqueue_scripts
있어야하므로 모든 스크립트를 명확하고 체계적으로 등록하고 대기열에 넣도록 다음 기능을 설정했습니다.
내 질문은 관리자와 프론트 엔드에서 특정 스크립트 (예 : jquery validate plugin) 가 필요한 경우 어떻게해야 합니까? 이 경우 스크립트를 등록하고 큐에 넣는 데 권장되는 방법은 무엇입니까? 다른 $ handle로 두 번 등록하거나 그것을 통해서만 등록하십시오. wp_enqueue_scripts
그렇다면 필요할 때 호출되지 않을 위험이 있습니까? (즉, admin_enqueue_scripts
이전에 해당 스크립트를 사용 가능하게하지 않으면 다른 이유는 무엇입니까?
wp에서 스크립트를 대기열에 넣는 뉘앙스를 완전히 이해하기 위해 누군가에게 이것을 설명해 주셔서 감사합니다. 감사
내 코드 :
// 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( '' );
...
}
}