在添加挂钩客户端';s无法登录WHMCS


After adding a hook client's not able to login WHMCS

我们正试图修改WHMCS中的菜单,但当我们为此添加挂钩时,我们的客户端无法登录到客户端区域。请告诉我我们做错了什么。

这是我们的挂钩代码

 <?php

 use WHMCS'View'Menu'Item as MenuItem;
 add_hook('ClientAreaNavbars', 1, function ()
 {
$primaryNavbar = Menu::primaryNavbar();
$primaryNavbar->removeChild('Contact Us');
$primaryNavbar->removeChild('Network Status');
$primaryNavbar->removeChild('Live-Help-Button');
$primaryNavbar->addChild('Free Shortcut')
        ->setUri('/cart.php?a=add&pid=2')
        ->setOrder(70);
// Moves a menu item to the last position
$primaryNavbar->getChild('Affiliates')->moveToBack();
 }); 

测试您的代码并给出以下错误:

PHP致命错误:在my_hoos.PHP 中对null的成员函数moveToBack()进行调用

可能Affiliates系统被禁用,菜单项不在那里,$primaryNavbar->getChild("Affiliations")返回一个空值。

要修复它,请替换:

$primaryNavbar->getChild('Affiliates')->moveToBack();

带有:

$item = $primaryNavbar->getChild('Affiliates');
if ($item instanceof MenuItem) {
     $item->moveToBack();
}