如何将自定义JavaScript添加到WordPress管理员?
我想添加一些自定义的jQuery代码到Edit Post页面,这非常简单,就像有人按下Publish时显示div一样。如何将自定义JavaScript添加到WordPress管理员?
唯一的限制是我想通过使用插件来实现这一点,而不是黑客管理模板文件。
我试过使用某些动作回显一些脚本标记,但它似乎不是这样。
使用admin_enqueue_scripts
动作和wp_enqueue_script
方法将自定义脚本添加到管理界面。
这假设你在你的插件文件夹中有myscript.js
。相应地改变。对于您的模块和脚本,my_custom_script
句柄应该是唯一的。
function my_enqueue($hook) {
if ('edit.php' !== $hook) {
return;
}
wp_enqueue_script('my_custom_script', plugin_dir_url(__FILE__) . '/myscript.js');
}
add_action('admin_enqueue_scripts', 'my_enqueue');
<?php
function add_jquery_data() {
global $parent_file;
if (isset($_GET['action']) && $_GET['action'] == 'edit' && isset($_GET['post']) && $parent_file == 'edit.php') {
// Do some stuff.
}
}
add_filter('admin_head', 'add_jquery_data');
?>
非常感谢,这正是我一直在寻找的。反正我用过admin_footer。但是,有没有办法在新帖子/编辑帖子上加载内容_only_? – Nacho 2010-07-24 21:48:55
那么如果你想要它的新帖子页面,你可以试试这个: – 2010-07-24 22:29:58
有您的functions.php文件的一个片段:WordPress的3.2.1
function custom_admin_js() {
$url = get_bloginfo('template_directory') . '/js/wp-admin.js';
echo '"<script type="text/javascript" src="'. $url . '"></script>"';
}
add_action('admin_footer', 'custom_admin_js');
工作正常。
我在主题卡,这样我可以加载一些jQuery代码隐藏,我不希望我的客户搞乱,搞砸了网站管理栏的某些部分。请参阅我正在使用PODS插件来获取内容和自定义主题。 – Volomike 2012-04-18 04:21:12
@KuldeepDaftary很可能你可以通过一个函数激活你的自定义JS,这会在page和jQuery加载后触发? – 2013-05-24 11:46:53
这是添加脚本的错误方法。你应该排队脚本,如[Tim的答案](http://*.com/a/21914399/1924128)所示。 – 2015-06-30 19:45:31
这是当前版本的WordPress的正确答案(该示例直接来自WordPress Codex)。 – thirdender 2014-03-04 23:20:38
我应该把这段代码放在什么文件中?这个代码应该放在哪里? – commadelimited 2016-12-17 20:15:15
在你的[插件文件](https://codex.wordpress.org/Writing_a_Plugin)。 – Tim 2016-12-19 09:16:36