wp_enqueue_script未在插件中加载

时间:2019-03-08 03:17:34

标签: php wordpress plugins

我有一个为WordPress制作的简单插件,无法导入简单的测试javascript。我迷路了。

defined( 'ABSPATH' ) or die( 'Hey, what are you doing here? Silly Human. Scripts are for grown ups');

if (!function_exists('add_action') ) {
    echo "Hey, you can\t access this file, you silly human.";
    exit;
}


class SimplePlugin {

    public function __construct($arg) {
        add_action( 'wp_enqueue_scripts', array($this, 'test1') );
    }

    function activate() { 

    }

    function deactivate() { 

    }

    function uninstall() { 

    } 

public function test1() { 
    wp_deregister_script('my-plugin');
    wp_register_script( 'my-plugin', plugin_dir_url( __FILE__ ) . 'test.js' );
wp_enqueue_script( 'my-plugin');

}




}





if (class_exists( 'MySweetEddPlugin') ) {
    $MySweetEddPlugin = new MySweetEddPlugin('');  //We now run all things in construct


}

//Activate
register_activation_hook(__FILE__, array($MySweetEddPlugin, 'activate'));

//Deactivate
register_activation_hook(__FILE__, array($MySweetEddPlugin, 'deactivate'));

在我的文件中,类名更加唯一,在您建议之前,斜杠可能会丢失/多余。我已经试过了,没有斜线,完全写出来了,这是最奇怪的事情。它会显示该文件已包含了不正确的URL,但从未包含正确的URL。如果我只是说

wp_register_script( 'my-plugin', '/test.js' );

它将包括该js文件(不存在的js文件)。但是,正确时将不包括它。就像是它阻止我包含正确的文件吗? WordPress插件缺少什么吗?

1 个答案:

答案 0 :(得分:0)

好,我解决了。正是插件Fast Velocity Minify导致它不包含文件。当我停用它时,该文件立即显示。当我重新激活文件后,该文件将保留在其中,但是,直到我取消激活并重新激活插件后,我对该文件所做的任何更新都不会显示。一如既往,只要我张贴在这里,我就会弄清楚。