我使用OOP创建了一个WordPress插件。如果插件尚未激活,并且在主题文件中调用了一个方法,则会抛出PHP致命错误“调用未定义的函数”。
如果插件没有启用,那么正确的方法是什么?
是否应该在主题目录中使用该类的每个文件中进行检查,以查看该类是否存在?还是应该让错误保持原样,让用户知道必须根据函数名启用插件?
以下是我想做的:
if ( mypluginname_is_event_active() ) {
echo \'it is!\';
}
但是,如果插件尚未激活,上述代码将触发PHP致命错误。
下面的代码可以防止出现错误,但它看起来确实很笨拙。尤其是如果必须在主题下使用的每个文件中执行此操作:
// begin top of file
$is_event_live = false;
if ( class_exists( \'MyPluginName\' ) ) {
$is_event_live = mypluginname_is_event_active();
}
// end top of file
if ( $is_event_live ) {
echo \'it is!\';
}