未激发Magento 2 checkout_onepage_controller_success_action事件



我正在Magento 2平台上工作。我已经创建了我的自定义模式名称MerchantTrack。Into events.xml(MagentoSite\app\code\Magento\MerchantTrack\Checkout\etc\frontend\events.xml(编写的代码低于

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
<event name="checkout_onepage_controller_success_action ">
<observer name="merchanttrack_checkout_onepage_controller_success_action" instance="MagentoMerchantTrackCheckoutObserverMyObserver" />
</event>
</config>

Into MyObserver.php(MagentoSite\app\code\Magento\MerchantTrack\Checkout\Observer \MyObserver.php(在下编写代码

<?php

namespace MagentoMerchantTrackCheckoutObserver; 
use MagentoFrameworkEventObserverInterface;
class MyObserver implements ObserverInterface { 

public function execute(MagentoFrameworkEventObserver $observer)
{
$orderIds = $observer->getEvent()->getOrderIds();
echo $orderId = $orderIds[0]; exit;
}
}

当下订单时,在成功(/MagentoSite/checkout/onepage/success/(页面中,我看不到订单ID,我将其回显到观察者页面中。所以我不能理解我的活动是否被解雇。

我做错了什么?

您必须正确遵循模块目录结构。请参阅:https://devdocs.magento.com/guides/v2.3/extension-dev-guide/build/module-file-structure.html#module-文件结构

MagentoSite\app\code\Magento\MerchantTrack\Checkout\etc\frontend\events.xml

您已经创建了额外的文件夹,即Magento

您的目录应该是这样的。MagentoSite\app\code\MerchantTrack\Checkout\etc\frontend\events.xml

最新更新