gpt4 book ai didi

javascript - 通过插件在管理页面加载自定义js文件

转载 作者:行者123 更新时间:2023-12-03 02:53:27 25 4
gpt4 key购买 nike

我是 Wordpress 世界的新手,刚刚开始开发我的第一个插件。当它被激活时,它应该加载一个 javascript 文件到 wp-admin/post-new.php(添加新帖子)页面。

这是我尝试执行此操作的方法:

插件

class WP_Blog_Customizer{
function __construct() {
add_action( 'wp_enqueue_scripts', array($this, 'load_dependencies') );
register_activation_hook( __FILE__, array( $this, 'wpa_install' ) );
register_deactivation_hook( __FILE__, array( $this, 'wpa_uninstall' ) );
}
public function load_dependencies(){
wp_enqueue_script('blog-customizer', plugins_url('js/blog-customizer.js', __FILE__),array('jquery'),'1.0.0', true);
}
}
new WP_Blog_Customizer();

wp-admin/post-new.php

if(is_plugin_active( 'blog-customizer/blog-customizer.php' )){
$plugin = new WP_Blog_Customizer();
}

我的插件类的 __construct 中的 add_action( 'wp_enqueue_scripts', array($this, 'load_dependency') ); 不应该包含这个 js 文件吗?

注意

这个js文件位于我的插件文件夹中的js文件夹下,所以路径是正确的。

谁能告诉我为什么这不起作用,以及如何让它起作用?

最佳答案

为了在管理端加载脚本,我们必须使用 admin_enqueue_scripts钩。所以像这样的事情应该可以完成这项工作:

class WP_Blog_Customizer{
function __construct() {
add_action( 'admin_enqueue_scripts', array($this, 'load_dependencies') );
//...other constructor things
}
public function load_dependencies( $hook ){
if ( $hook == 'post-new.php' ) { // for loading script also on post edit screen use ( $hook == 'post-new.php' || $hook == 'post.php' )
wp_enqueue_script('blog-customizer', plugins_url('js/blog-customizer.js', __FILE__),array('jquery'),'1.0.0', true);
}
}
}
new WP_Blog_Customizer();

关于javascript - 通过插件在管理页面加载自定义js文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47737398/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com