Hello World Magento插件

时间:2018-03-25 18:13:41

标签: magento magento2

我对magento& amp;我试图让一个简单的插件工作。

当用户将产品添加到购物篮时,我希望magento显示一个包含一些文字的对话框。

任何人都可以提供指向此类或相似内容的指南的链接吗? 我使用的是magento2

由于

编辑:

谢谢你,

我找到了一个教程,这就是我所拥有的,就我所见,该插件看起来已经启用了。

当我尝试开始工作时,用户将产品添加到购物车时会显示一条消息。

目前,“添加到购物车”按钮上的文字更改为“添加...”'并挂起。我该怎么调试呢?

谢谢你,

我找到了一个教程,这就是我所拥有的,就我所见,该插件看起来已经启用了。

当我尝试开始工作时,用户将产品添加到购物车时会显示一条消息。

目前,“添加到购物车”按钮上的文字更改为“添加...”'并挂起。我该如何调试或修复此问题?

<?php

namespace Acme\AddToCartMessage\Plugin;

use Magento\Checkout\Model\Cart\CartInterface;
use Magento\Framework\Message\ManagerInterface as MessageManager;

class AddToCartMessage{

private $messageManager;

public fucntion __construct(MessageManager $messageManager){
  $this->messageManager = $messageManager;
}

public afterAddProduct(\Magento\Checkout\Model\Cart\CartInterface $cart,     $result){
$this->messageManager->addNoticeMessage('Testing');

return result;
}

}

1 个答案:

答案 0 :(得分:0)

实际上有几种方法可以实现您的目标。最干净的方法是利用事件观察员。这是他们文档的链接 - Magento 2 - Events and Observers

快速概述:

  1. 创建etc/frontend/events.xml文件。
  2. checkout_cart_add_product_complete事件创建观察者。
  3. \Magento\Framework\Message\ManagerInterface注入您的观察者类。

    public function __construct (
        \Magento\Framework\Message\ManagerInterface $messageManager
    ) {
        $this->_messageManager = $messageManager;
    }
    
  4. 消息管理器将在添加项目后显示通知。要显示弹出窗口,您应该查看M2的JS组件 - JavaScript Developer Guide