在生产服务器上激活自定义插件时出错

时间:2019-01-25 作者:Lebrac\'h

我目前正在开发一个自定义插件。所有这些都可以在我的本地开发环境(飞轮本地)中正常工作,但在生产环境中,我无法激活插件。我收到以下错误消息:

Fatal error: Class \'Activate\' not found in /datas/vol3/w4a156338/var/www/my-website/htdocs/wp-content/plugins/ads-toolbox/ads-toolbox.php on line 54

“ads工具箱”。php’file它是插件主php文件,它包含以下内容:

function activate_adstoolbox_plugin() {
    Inc\\Base\\Activate::activate();
}
register_activation_hook( __FILE__, \'activate_adstoolbox_plugin\' );
第54行是:Inc\\Base\\Activate::activate();

“Activate”类位于“Activate”类中。php文件位于“inc/Base/”子目录中,包含:

namespace Inc\\Base;

class Activate
{
    public static function activate()
    {
        //Some code
    }

}
我不明白为什么它可以在本地工作,但不能在我的托管网站上工作!?

有什么想法吗?

1 个回复
SO网友:Lebrac\'h

多亏了@the\\u hobbes和@Charles,我意识到文件被激活了。未合并php。通过添加require_once plugin_dir_path( __FILE__ ) . \'inc/Base/Activate.php\'; 对于我的代码,如下所示,它工作正常:

function activate_adstoolbox_plugin() {
    require_once plugin_dir_path( __FILE__ ) . \'inc/Base/Activate.php\';
    Inc\\Base\\Activate::activate();
}
register_activation_hook( __FILE__, \'activate_adstoolbox_plugin\' );
哎呀!新手的错误。。。

相关推荐

Vimeo froogaloop

我是个新手,但我想用this idea 在Wordpress站点上嵌入的Vimeo剪辑中禁用正向搜索我的职能。我添加了phpfunction frogaloop_scripts() { wp_register_script(\'snippet\', \'https://siteurl/wp-content/themes/themename/js/snippet.js\'); wp_register_script(\'frogaloop\',\'https://f.vimeo