我正在尝试在 /admin/ 文件夹内的 php 文件中添加一个函数,以调用特定的 javascript 文件 roomzeroadmin.js。 我尝试过使用:
function roomzero_load_admin_scripts() {
// Enqueue admin.js for the admin dashboard
wp_enqueue_script(
'roomzero-admin-script', // Unique handle
plugin_dir_url(__FILE__) . 'js/roomzeroadmin.js', // Path to admin.js
array('jquery'), // Dependencies (if any)
'1.0.0', // Version
true // Load in footer
);
}
add_action('admin_enqueue_scripts', 'roomzero_load_admin_scripts');
但它似乎不起作用。我也试过了
add_action('wp_enqueue_scripts','roomzero_js');
function roomzero_js() {
wp_enqueue_script( 'roomzero-test-js', plugins_url( '/js/roomzero.js', __FILE__ ));
}
但这也行不通。关于如何完成这项工作有什么建议吗?
尝试帮助解决一些问题。
你是如何运行 JavaScript 的?通过特定于页面的代码片段、通过您的函数还是通过插件?
此外,您可能已经这样做了,只需仔细检查一下,因为您在 /admin/ 文件夹中工作,所以确保您专门针对管理页面并在那里加载脚本。
另外,请仔细检查以确保您的文件路径实际上指向 roomzeroadmin.js 的正确位置。
如果您的 roomzeroadmin.js 文件位于 /wp-content/plugins/your-plugin/js/roomzeroadmin.js,plugin_dir_url(FILE) 将给出正确的基本 URL,所以您应该没问题。但是,请仔细检查结构。
确保 array('jquery') 依赖项正确。你特别需要jquery吗?
这里有一段干净的代码可以用来测试:
function roomzero_load_admin_scripts($hook) {
// Check if we're on the admin pages (optional: you can specify exact pages by checking the $hook)
if (is_admin()) {
// Enqueue the roomzeroadmin.js file
wp_enqueue_script(
'roomzero-admin-script', // Unique handle for the script
plugin_dir_url(__FILE__) . 'js/roomzeroadmin.js', // Path to the JS file
array('jquery'), // Dependencies (jQuery is common in the admin area)
'1.0.0', // Version of your script
true // Load in the footer (set to false if you want it in the header)
);
}
}
add_action('admin_enqueue_scripts', 'roomzero_load_admin_scripts');
祝你好运。