插件更改的目录结构

时间:2014-05-01 作者:Pete

当我在Wordpress工作时,我经常需要对插件进行调整。据我所知,推荐的方法是使用我想要修改的插件文件(比如,mypluginfile.php), 并将其复制到我的主题文件夹。该文件现在将覆盖插件的文件版本。

我的问题是,为了让它工作,文件必须位于主题目录的根目录中。。。这意味着主题根很快就会变得非常混乱。由于调整后的插件文件散布在整个主题根目录中,因此很难一目了然地跟踪哪个文件属于哪个插件。

是否有任何方法可以修改插件文件,但仍然保持良好的目录结构。可能类似于:

- /mytheme/style.css
- /mytheme/functions.php
- /mytheme/myplugin/mypluginfile.php
- /mytheme/myplugin/mysecondpluginfile.php
- /mytheme/mysecondplugin/anotherpluginfile.php
我很难相信每个人都只是用一系列属于不同插件的文件来填充他们的主题文件夹。这里的最佳实践是什么?

1 个回复
SO网友:fuxia

将插件文件放入主题是not recommend, quite the contrary.

如果你really have to change the plugin, 为插件目录创建Git存储库:

cd plugindirectory
git init
现在创建一个新分支:

git checkout -b modified
Git现在将在分支中保持原始状态master 您可以编辑分支中的文件modified.

当原始版本有更新可用时,您将切换到主版本…

git checkout master
…运行更新,提交…

git add .
git commit -m \'update\'
然后将改进合并到您的修改中:

git checkout modified
git merge master
您可以自动执行这些任务,并在更新时根据脚本运行git命令。

保持主题目录尽可能干净,插件代码“可更新”。

结束

相关推荐

为什么不调用/触发“Plugins_Load”?

我正在打电话load_plugin_textdomain 然而,一旦加载了插件,就不会发生这种情况。我确实激活了一个插件,所以这不应该触发吗?add_action(\"plugins_loaded\", \"test_override\"); function init_localization() { echo \"init_localization<br>\"; load_plugin_textdomain (&#x