WordPress插件加载后,如何加载非主要的PHP文件?

时间:2019-05-16 00:03:04

标签: php wordpress

我正在开发一个依赖于第二个插件OtherPlugin的插件。我的插件目录中有一个非主要的PHP文件,需要加载该文件才能在OtherPlugin中注册钩子。我的问题是此文件似乎没有被加载(错误日志没有被打印并且期望的副作用没有得到执行。)

我尝试使用描述为here--require='path_to_b.php'全局参数,但是由于我的类B继承自OtherPlugin类{ {1}}:

A

解决方案不能以相反的顺序Fatal error: Class 'A' not found in /var/www/html/wp-content/plugins/myplugin/b.php 遍历整个类层次结构,但是我看不出另一种解决方法。

1 个答案:

答案 0 :(得分:0)

在您的情况下,看来B extends A(A来自otherPlugin),但是在b.php中声明B时,otherPlugin尚未加载文件a.php。

解决方法是在B类声明之前,在require_once('full_path_to_a.php')的顶部使用b.php。这将加载a.php,以便A类现在可供B扩展。

您可能需要向包含A类依赖项的其他文件中添加其他require_once