在主题声明父类之后,使您的类对PHP可见。
插件首先加载,主题可能稍后加载。这可以被覆盖。
主题代码在操作时可用after_setup_theme
被解雇了,所以你可以这样使用它:
add_action( \'after_setup_theme\', function() {
require \'ChildClass.php\';
});
但是,如果主题稍后加载父类,您可能会遇到相同的问题:您不知道它何时真正可用。
另一种选择是autloader: 不要提前加载类。让PHP等待,直到您创建一个类的新实例,然后让已注册的自动加载程序包含正确的文件。
下面是一个非常简单的示例,您可以将其放入插件的主文件中。确保文件名与类名匹配,例如。ET_Builder_Module_Blurb.php
.
spl_autoload_register( function( $name ) {
$path = __DIR__ . "/$name.php";
if ( file_exists( $path ) )
require $path;
});