可以将插件分组到一个文件夹中吗?

时间:2018-04-12 作者:Swen

我正在从事一个相当大的WordPress项目,其中有40多个插件,还包括一系列专门针对该项目定制的插件。

这使得导航WordPress插件文件夹相当麻烦。是否可以“组织”插件文件夹,使其看起来更像下面的示例?

- plugins
    - wp-plugins // All plugins downloaded from WordPress
    - custom-plugins // All custom written plugins

2 个回复
SO网友:Aurovrata

简而言之,答案是否定的。

WordPress定义插件路径,允许插件作者使用plugin content functions 定位其文件,这些文件由WordPress内容控制constants 在文件中设置的

wp-includes/default-constants.php

然而,尽管路径是可自定义的,WordPress只搜索这一个位置。唯一的例外是有额外文件夹的网络安装muplugin 哪个WP将扫描must-use plugins.

WordPress调用函数wp_get_active_and_valid_plugins 在运行时加载插件,但不提供任何挂钩来修改加载过程。

SO网友:Mark Kaplun

在某种程度上,这是可能的。

根据定义,插件是一个具有插件头的文件,它位于插件目录或一层“较低”位置。如果您的所有自定义插件每个都只是一个文件,那么可以很容易地创建您想要的目录结构。从技术上讲,更大的插件也可以这样做,但从开发角度来看,您可能会发现管理每个插件的开发和创建更新流会更加困难(例如,git假设一个目录的整个子树属于一个项目,并且很难管理同一目录上的多个子树)。

将一个大插件组织为模块,并使用控制面板控制模块,应该会容易得多。这应该足够好了,因为更新和删除之类的功能与您的自定义插件无关。

OTOH您可能应该考虑将这些插件移动到您的主题代码中。虽然将代码作为插件的开销可能为零,但在您自己的代码部分之间进行这样的分离是毫无意义的。

结束

相关推荐

Testing Plugins for Multisite

我最近发布了一个WordPress插件,它在单个站点上非常有效。我被告知该插件在多站点安装上不能正常工作,我理解其中的一些原因。我已经更新了代码,现在需要一种方法来测试更新后的代码,然后才能转到实时客户的多站点安装。我有一个用于测试的WordPress安装程序的单站点安装,但需要在多站点安装上进行测试。根据我所能找到的唯一方法是在网络上至少有两个站点来安装整个多站点安装,以测试我的插件。设置WordPress的整个多站点安装是插件开发人员的唯一/首选方式,还是有更快的测试环境可用。