如何在自定义帖子添加/编辑页面上加入脚本?


23

仅在有人添加或编辑我创建的自定义帖子类型(称为“食谱”)时,我才尝试加入JS脚本。目前,当我这样做时,脚本可以正常运行:

if (is_admin()){
    wp_enqueue_script( 'my-script' );
}

但这会在每个管理页面中加载它,我假设我需要将其连接到函数,但是我不知道它会是什么。

提前致谢!


为了将来使用,我以一种更简单的方式回答了一个类似的问题:wordpress.stackexchange.com/q/34894/93169
Frits

Answers:


43

您可以这样操作(放入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 );

我也可以使用此功能加入样式吗?
西西尔

1
@Sisir使用"admin_print_styles-{$page}"挂钩。$page可以保存完整的add_(sub)menu_page()代码,并在使用时用于定位目标页面@see wp_enqueue_style()
kaiser

这样做的最新方法:wordpress.stackexchange.com/a/34897/93169(由于wordpress的功能更改,它也碰巧了一点……)
Frits


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.