我正在尝试将java脚本文件添加到我的管理头中,并使用管理ajax。php在我的wp admin中使用ajax(仍在学习有关该过程的很多知识)。我在theme\\u目录/js中创建了一个名为custom的自定义文件夹,其中包含需要添加到admin头中的文件,但它似乎不起作用。代码如下:
add_action(\'admin_enqueue_scripts\', \'my_admin_enqueue_scripts\');
function my_admin_enqueue_scripts() {
global $current_screen;
if ( \'page\' != $current_screen->ID )
return;
wp_register_script(\'my-scripts\', get_template_directory_uri() . \'/js/custom/my-scripts.js\' );
wp_enqueue_script(\'my-scripts\');
wp_localize_script(\'my-scripts\', \'wp_ajax\', array( \'ajaxurl\' => admin_url( \'admin-ajax.php\' )));
}
尽管如此,我在头文件中没有看到对自定义js文件的引用。我甚至试过
add_action(\'admin_header\', \'my_admin_enqueue_scripts\');
没有用。我只需要这个脚本文件在我的wp管理。
我错过了什么?非常感谢。
最合适的回答,由SO网友:ItsPronounced 整理而成
啊,好吧,我在研究的时候发现了。我需要添加$hook参数并将其传递给我的函数,如下所示:
function my_admin_enqueue_scripts($hook) {
global $current_screen;
if ( \'post.php\' != $hook )
return;
wp_register_script(\'my-scripts\', get_template_directory_uri() . \'/js/custom/my-scripts.js\' );
wp_enqueue_script(\'my-scripts\');
wp_localize_script(\'my-scripts\', \'wp_ajax\', array( \'ajaxurl\' => admin_url( \'admin-ajax.php\' )));
}
这给了我想要的结果。非常感谢。