Magento 1.9禁用特定IP的插件

时间:2018-10-05 10:51:58

标签: magento plugins module magento-1.9

我有一个Magento商店(1.9),带有一个非常简单的插件。当有人在网站上下订单时,它将更改客户组。但是我们也使用POS。

在POS中,插件也试图更改客户组,但它给出了错误。

所以我想做的是为我们的本地IP(或用户)禁用插件。

代码如下或检查Github

observer.php

     <?php
    class RvdH_GroupChange_Model_Observer
    {
public function changeGroup(Varien_Event_Observer $observer)
{
    $order = $observer->getEvent()->getOrder();
    $customer = Mage::getModel('customer/customer')->load($order->getCustomerId());
    /*$event = $observer->getEvent(); //Fetches the current event"
    $customer = $event->getCustomer();
    $dbcustomer = Mage::getModel('customer/customer')->load($customer[entity_id]);*/
    // ensure it's not guest checkout
    if ($customer->getId()) {
        $customer->setGroupId(5);
        $customer->save();

    }
}
}

config.xml

<?xml version="1.0"?>
<config>

  <modules>
    <RvdH_GroupChange>
      <version>0.1.0</version>
    </RvdH_GroupChange>
  </modules>

  <global>
    <models>
      <RvdH_GroupChange>
        <class>RvdH_GroupChange_Model</class>
        <resourceModel>module_mysql4</resourceModel>
      </RvdH_GroupChange>
    </models>
    <events>
      <sales_order_place_after>
        <observers>
            <RvdH_GroupChange>
                <class>RvdH_GroupChange_Model_Observer</class>
                <method>changeGroup</method>
            </RvdH_GroupChange>
        </observers>
    </sales_order_place_after>
    </events>
  </global>
</config> 

1 个答案:

答案 0 :(得分:0)

已解决。

我只需要在config.xml中将<global>标记更改为<frontend>。 现在,它只能在前端运行,而不能在全局运行。