将插件作为主题的一部分的最佳实践?

时间:2010-09-24 作者:Tom

我正在研究一个主题,其中包括一些作为独立插件开发的功能(因为我希望独立发布它们)。

我希望将这些插件作为主题核心的一部分,我注意到一些开发人员将插件作为文件或子目录与主题一起包含,但随着时间的推移,最终可能会导致维护同一插件的两个版本,一个用于插件库,一个用于主题,但如果可能的话,我希望避免这样做。

将插件作为主题的一部分的最佳实践是什么?

2 个回复
最合适的回答,由SO网友:EAMann 整理而成

如果您计划独立发布它们,那么请独立发布它们,并尝试将它们都托管在WP存储库中。这将允许您远程更新系统,并让人们尽可能使用最新的系统。

然后,在主题中,使用is_plugin_active() 筛选命令。如果您有需要插件的主题功能,请使用is_plugin_active() 在使用该功能或唠叨用户安装插件之间动态切换。

要记住的重要一点是,如果没有安装插件,主题应该仍然可以工作

或者,如果您知道某个插件在很长一段时间内不会更改(我使用了一些只添加/删除特定WP过滤器的插件),您可以删除PHP 归档到/library 包含主题和include() 中的文件functions.php. 然后默认情况下启用该功能-折衷的是,您现在正在维护插件的两个版本(正如您在原始问题中提到的)。

SO网友:Rarst

基本上有三种可能的情况:

主题和插件均已安装考虑哪些更容易更新:

存储库托管插件-可能

显然,主题必须能够使用捆绑的或单独的插件,插件不应该依赖于主题的代码。

最好(但复杂的做法)是将扩展构建为上下文独立的(aka框架),并使用自定义加载程序检查版本并加载最新可用的版本。有关框架方法的实际示例,请参见scbFramework 它既作为单独的插件分发,也用于多个其他插件。

结束

相关推荐