2011-03-07 58 views
1

我正在尝试整合WordPress和MyBB论坛。具体来说,我只是想将WordPress的导航栏(新菜单)添加到我的MyBB网站。继CODEX例子,我已经添加了以下到我的我的MyBB安装的header.php:转身无法在PHP中重新声明错误

require('/home/linuxdis/public_html/wp-blog-header.php'); 

然而,导航到论坛时,我得到500错误。检查error_log透露了这一点:

PHP Fatal error: Cannot redeclare is_super_admin() (previously declared in /home/linuxdis/public_html/forum/inc/functions.php:5484) in /home/linuxdis/public_html/wp-includes/capabilities.php on line 1213

无赖,功能被命名为相同。除了重命名其中的一个功能,并且可能打破所有的功能,是否有办法解决这个问题? :/

回答

3

用户require_once()而不是require()它将确保它将只包含该文件每页一次。

虽然在这种情况下不理想,你可以在一个function_exists()检查包装每个功能:

if(!function_exists('myfunc') { 
    function myfunc() {....} 
} 

是否有与WP/MyBB的直接冲突,这可能是你唯一的选择,你坚持,如果他们虽然两者都需要is_super_admin()

+0

感谢您的支持。不幸的是,当你的代码工作时,它看起来也有其他一些功能。我得到了#4的功能,并决定停止,谁知道有多少。 – 2011-03-07 09:56:57

相关问题