如果插件处于非活动状态,什么是默认行为的好方法?

时间:2018-03-29 作者:Jonathan C

我目前正在构建一个框架,以增强一些功能,例如:

自定义自定义程序控件自定义单帖子布局等。例如,这意味着single.php 我打电话framework\\GetCustomPostLayout(), 问题是我的框架是一个需要安装的插件,所以如果没有启用,就会显示错误。

我在想办法

if( function_exists( \'Framework\' ) ) { 
    get_framework_behavior
} else {
    get_nonframework_behavior_default 
}
不幸的是,即使这样也会转换为包装器,例如:

getCustomPostLayout 它会检查插件是否被激活,我必须在插件中写入我的默认行为,让我将应该包含的逻辑放入single.php 在另一个文件中。

我怎样才能最好地处理这个问题?

1 个回复
SO网友:Mat

使用WordPress怎么样is_plugin_active() 功能?-https://codex.wordpress.org/Function_Reference/is_plugin_active

但这是一个仅用于管理的函数,因此要在前端或模板文件中使用它,需要手动使用插件。php类似:

include_once( ABSPATH . \'wp-admin/includes/plugin.php\' );
is_plugin_active($plugin);
在哪里$plugin 插件子目录/文件的名称,例如:

is_plugin_active( \'plugin-directory/plugin-file.php\' );

结束

相关推荐

WordPress Plugins won't save

我有一个WordPress网站,我刚刚接管了一个客户,因此我没有能力与以前的网站管理员/开发人员交谈。该网站使用的是YOOtheme对Subway稍加修改的版本。为了更新插件位置,Subway的一部分有“小部件选项”。我无法更改外观或小部件显示的页面,因为我无法保存任何内容。它看起来像已保存,但没有保存,或者您会在保存按钮旁边看到“加载循环”,它一直在运行。Things to note:<WordPress和插件是最新的。在我们转移到新服务器之前,插件是可更新的。新服务器有一个max\\u inpu