手动返回Function_Existes的FALSE

时间:2015-02-10 作者:Kevin Nugent

我正在开发一个主题选项插件,目前正在实现一个“英雄”标题,首先检查我的插件是否处于活动状态,使用:

if( function_exists( \'my_header_function ) ): my_header_function();
else: 
/* carry on and output the default header... */
endif;
现在,由于我的英雄标题取决于图像和徽标是否已上载,我想知道是否可以手动从挂钩返回“false”结果,以便使标题中的原始条件进行正常标题的输出。

有什么想法吗?非常感谢。

1 个回复
最合适的回答,由SO网友:karpstrucking 整理而成

让函数返回HTML,而不是回显它。执行函数中的逻辑以查看图像/徽标是否存在,如果存在,则仅返回HTML,否则返回null/false。

function my_header_function( $output = false ) {
     if ( /*image and logo have been uploaded */ ) {
          $output = /* HTML of your hero header */;
     }
     return $output;
}
向钩子函数添加检查,查看函数是否返回内容;如果有,请回音。

if ( function_exists( \'my_header_function\' ) && ( $hero = my_header_function() ) ) {
     echo $hero;
}

结束

相关推荐

在加载plugins_后,get_plugins()不工作

知道为什么下面的代码function my_plugin_load() { get_plugins(); } add_action( \'plugins_loaded\', \'my_plugin_load\' ); 抛出此错误?Fatal error: 不应调用未定义的函数get\\u plugins()get_plugins() 定义在plugins_loaded 胡克开火了?如果不是,那么什么才是合适的钩子呢?(这个钩子应该启动插件的引导/加载过程)