问题描述
我正在创建一个我打算在某个时候出售的 wordpress 主题。
现在,我发现一些 wordpress.org 插件对于我想做的事情来说是非常棒的。他们已经拥有了我旨在实现的大部分功能,所以我想直接使用它们 (他们是 GPL 在我想象的) 。
我可能需要调整东西,但是我在想。是否有任何 universal-like 方式在我的主题中包含 wordpress 插件,而不是在单独的插件文件夹?
这将是理想的,因为我真的不希望客户必须复制到不同的文件夹。乍一看的插件,似乎是不可能的,但我想它从来没有伤害过问:)
最佳解决方案
让我做一个建议:不要把插件与你的主题捆绑在一起!
乍一看,是的,这是一个非常简单的方法来添加默认功能与您的主题,但有一些原因不包括这样的插件:
-
更新:如果该插件已经从 WordPress.org 免费获得,那么自动更新插件。原始作者可以添加功能,修复错误并快速部署。您的客户和客户随后从 on-going 开发中受益。但是,如果你打算将它们打包成你的主题,那么在这个时间点你基本上就是冻结了代码,任何进一步的更新,bug 修复等等都是来自你的。这意味着,只要随附的插件更新,您就需要不断发布主题更新。
-
更新:当 WordPress 更新时,一些插件将中断。这是因为原始作者没有花时间去除已弃用的功能或使用新版本的 WP 进行测试。你真的想承诺维护你的主题+别人的代码吗?
-
互操作性:正如伟大的 mfields 曾经说过的,「如果你正在建一个浴室,你改变壁纸,厕所也不应该消失。用户应该可以随时更换主题,而不会丢失他们的内容,他们的自定义数据或他们在他们的网站上附加的功能。记住,主题是为了演示,插件是为功能。
已经有很多其他人谈过 about this in the past 。
更好的方法是让您的主题检查特定的插件,并提示用户安装,如果它们丢失。
次佳解决方案
这个课程是根据你的问题和想法构建的。它解决了这个问题,允许主题作者轻松地从 repo 包含 pre-packaged 插件或插件。
https://github.com/thomasgriffin/TGM-Plugin-Activation
第三种解决方案
我强烈地认为,如果您打算在某个时候出售您不应该包含/使用 GPL 插件,只有自己的!
现在之后,只是简单地包含插件的主要文件,你的主题的 functions.php 和编辑所有的路径
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。