如何在 magento2 中添加带有观察者的新菜单项?

how to add new menu item with observer in magento2?

如何在 magento2 中添加带有观察者的新菜单项?

我在我的模块 config.xml 中定义了事件,如下所示

<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
    <event name="page_block_html_topmenu_gethtml_after">
        <observer name="namespacetest_page_block_html_topmenu_gethtml_after" instance="Namespace\Test\Observer\AddMenu"/>
    </event>
</config>

及以下观察者文件包含代码

<?php


namespace Namespace\Test\Observer;
use Magento\Framework\Event\ObserverInterface;


class AddMenu implements ObserverInterface
{


    public function execute(\Magento\Framework\Event\Observer $observer)
    {

        $event    = $observer->getEvent();
       // function not called when event occur


    }

}

我在这里做错了什么?请帮我弄清楚这个问题。 谢谢

您在错误的文件名中定义了事件。即 config.xml

目录

中应该是events.xml
[magentoroot]/app/code/Namespace/Test/etc/frontend/events.xml