누군가가 “레시피”라는 사용자 정의 게시물 유형을 추가하거나 편집 할 때만 JS 스크립트를 대기열에 추가하려고합니다. 현재이 작업을 수행하면 스크립트가 정상적으로 작동합니다.
if (is_admin()){
wp_enqueue_script( 'my-script' );
}
그러나 이것은 모든 관리자 페이지에로드되며, 함수에 연결해야한다고 가정하지만 그것이 무엇인지 전혀 모릅니다.
미리 감사드립니다!
답변
다음과 같이 할 수 있습니다 ( functions.php
).
function add_admin_scripts( $hook ) {
global $post;
if ( $hook == 'post-new.php' || $hook == 'post.php' ) {
if ( 'recipes' === $post->post_type ) {
wp_enqueue_script( 'myscript', get_stylesheet_directory_uri().'/js/myscript.js' );
}
}
}
add_action( 'admin_enqueue_scripts', 'add_admin_scripts', 10, 1 );
답변
이를위한 고리가 있으며 사용하기가 매우 간단합니다. 구현 예는이 자습서를 참조하십시오 .
편집하다
Justin은 자습서를 DevPress에서 개인 사이트로 옮겼습니다. 튜토리얼에 대한 업데이트 된 링크는 다음과 같습니다 .
답변
Rootstheme (Twitter Bootstrap을 기반으로 함)은 github에서 볼 수있는 roots_scripts 함수 에서 볼 수 있듯이 페이지 / 게시물 유형에 따라 스크립트를로드하는 정말 우아한 방법 이 있습니다 .
기본적으로 모든 스크립트와 스타일을 등록한 다음 wp_enqueue_script 또는 wp_enqueue_style 문을 감싸는 조건문이 있습니다.