为什么没有打印管理脚本

时间:2011-06-20 作者:JM at Work

我正在尝试在管理区域排队/打印脚本。但他们似乎没有出现。

add_action(\'admin_init\', function() {
    add_meta_box(\'portfolio-meta\', \'Details\', \'portfolio_metabox_details\', \'portfolio\');

    wp_register_script(\'jqeury-validate\', \'http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js\');
    wp_enqueue_script(\'jquery-validate\');
    wp_register_script(\'ae-admin\', get_bloginfo(\'template_directory\') . \'/js/admin.js\', array(\'jquery\', \'jquery-validate\'));
    wp_enqueue_script(\'ae-admin\');
    wp_localize_script(\'ae-admin\', \'WpAjax\', array(
            \'AjaxUrl\' => admin_url(\'admin-ajax.php\')
    ));
    wp_register_style(\'ae-validate\', get_bloginfo(\'template_directory\') . \'/css/validate.css\');
    wp_enqueue_style(\'ae-validate\');
});
但是我的剧本(admin.js) 似乎没有打印出来。我甚至试着把它们放在“init”而不是“admin\\u init”中,但我还是看不到我的脚本。。。为什么会这样?如何调试?

4 个回复
最合适的回答,由SO网友:Chris_O 整理而成

使用admin_enqueue_scripts 钩子代替admin_init

注意:您应该使用尽可能专门针对管理页面的挂钩。e、 g.:

  • Plugins: 使用admin_print_scripts-{plugin-page} 挂钩Themes: 使用admin_print_scripts-{theme-page} 挂钩(其中{theme-page} 是您在add_theme_page() 电话)
  • Custom Post-Type Edit Page: 使用admin_print_scripts-edit.php 钩子,
对于自定义帖子类型,请在函数内部执行以下操作:

global $typenow;
if( \'portfolio\' == $typenow ) {
    // wp_enqueue_script() calls go here
}
(h/tt31os)

SO网友:Chip Bennett

我刚注意到你的add_action() 呼叫不正确。您必须向其传递回调,而不是函数定义。

您有:

add_action(\'admin_init\', function() {
    // function definition here
});
相反,您应该:

function mytheme_enqueue_admin_scripts() {
     // register/enqueue code goes here
}
add_action( \'hook_name\', \'mytheme_enqueue_admin_scripts\' );

SO网友:Dennis Hoppe

确保你的标题。php(或标头中的另一个函数)运行wp\\u head操作挂钩。代码应如下所示:

<?php wp_head() ?>

SO网友:JM at Work

事实上我只是有一个拼写错误

wp_register_script(\'jqeury-validate\', \'http://ajax.aspnetcdn.com/ajax/jquery.validate
                      ^
但谢谢@Chris\\u O,&@Chip Bennett的精彩回答

结束

相关推荐

WordPress MS wp-admin/includes/post.php出现短码生成器错误

我对Wordpress 3.1启用多站点和我的主题自定义短代码生成器有一个严重的问题。出于某种原因,每当我创建一个新的页面/帖子/自定义帖子类型页面等时,我都会遇到以下错误。这特别是单选按钮和“name”标记的问题。移除后,一切正常。当它设置为变量时,我会得到错误。但是,将变量设置为常量(如文本)会使其再次工作。这就是我所犯的错误;我不知道这是什么意思,也不知道是什么原因造成的:Warning: Invalid argument supplied for foreach() in /home/matthe