[英]I am trying to enable cash on delivery only for Retailer group
I am trying to doing disable cash on delivery for a particular customer group, i want to enable only one payment method like cash on delivery only for a Retailer, in magento, i have tried some options but it is throwing some errors.我正在尝试为特定客户群禁用货到付款,我只想为零售商启用一种付款方式,例如货到付款,在 magento 中,我尝试了一些选项,但它引发了一些错误。 i have followed these links enter link description here我已经按照这些链接在这里输入链接描述
config file配置文件
<?xml version="1.0"?> <config>
<modules>
<Suyati_Cashondelivery>
<version>1.6.0.0</version>
</Suyati_Cashondelivery>
</modules>
<!-- <global>
<blocks>
<checkout>
<rewrite>
<onepage_payment_methods>Suyati_Cashondelivery_Block_Methods</onepage_payment_methods>
</rewrite>
</checkout>
</blocks>
</global> -->
<events>
<payment_method_is_active>
<observers>
<paymentfilter_payment_method_is_active>
<type>singleton</type>
<class>Suyati_Cashondelivery_model_observer</class>
<method>filterpaymentmethod</method>
</paymentfilter_payment_method_is_active>
</observers>
</payment_method_is_active>
</events>
</config>
observer.php观察者.php
class Suyati_Cashondelivery_model_observer
{
public function filterpaymentmethod(Varien_Event_Observer $observer) {
/* call get payment method */
$method = $observer->getEvent()->getMethodInstance();
$role = "Retailer";
/* get Quote */
$quote = $observer->getEvent()->getQuote();
/* Disable Your payment method for adminStore */
if($role == "Retiler"){
allow cash ondelivery // am not sure which code needs to be written here.
}
}
You can try this: if ($role == 'Retailer') { $result = $observer->getEvent()->getResult(); $result->isAvailable = true; }
你可以试试这个: if ($role == 'Retailer') { $result = $observer->getEvent()->getResult(); $result->isAvailable = true; }
if ($role == 'Retailer') { $result = $observer->getEvent()->getResult(); $result->isAvailable = true; }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.