我正在尝试扩展另一个插件的功能。我需要从中获取数据到数组中,以不同于原始插件的方式使用。 (在这种情况下,是WPMUDev类别和列表插件)。法典中有什么吗?如何创建可以使用其他插件功能的插件?我可以扩展它们并构造父节点函数吗?我不确定这些插件是使用类还是直接使用函数。

我只是想将插件中的数据获取到侧边栏小部件中(在表单选项元素中),但最终我还将通过自定义短代码将其用于内容区域。现在,我只需要一个开始的地方。

评论

FWIW有关于这个主题core.trac.wordpress.org/ticket/22316
的门票

#1 楼

是的,可以创建一个扩展另一个插件的插件。以下是一些有关您可能如何使用它的想法:


一个插件可以设置自己的动作并过滤钩子(使用do_actionapply_filter函数),就像WordPress核心一样。 。如果您要定位的插件可以执行此操作,则可以使用这些钩子来更改功能。
如果插件使用面向对象的结构,则可以扩展类并在原始插件的基础上构建。
您可以读取原始插件存储在数据库中的数据并在您的插件代码中使用。
在检查插件是否处于活动状态并已加载后,您可以从原始插件中调用任何函数(请参见下文) )。只需注意该函数除了返回的值外还可能具有的其他效果。

您需要检查原始插件是否已激活。您可以使用is_plugin_active函数;但是,这仅适用于管理页面。或者,您可以使用function_existsclass_exists检查原始插件中的特定功能或类是否可用,这会告诉您它正在运行。

请记住,原始插件会随时更新,您需要使用新版本测试您的插件,以查找可能与您的插件冲突的任何新内容。