支付系统管理可以被认为是 Magento 2 商店系统的核心之一,因为一个好的处理系统可以帮助您优化您的销售、利润以及您的努力。

有时,您会希望根据客户组、产品/订单属性、运输参数等限制特定的付款方式。换句话说,您可以通过 Magento 2 后端配置以编程方式禁用付款方式。

在今天的文章中,我将向您展示在 Magento 2 中以编程方式禁用付款方式的2 个简单阶段。

在 Magento 2 中以编程方式禁用付款方式的 2 个步骤:

  • 步骤1:编辑config.xml文件
  • 步骤2:编辑Observer.php文件

步骤1:编辑config.xml文件

要以编程方式禁用付款方式,首先,您需要打开该config.xml文件,然后将以下代码添加到该文件中:

<global>
    ...
    <events>
        <payment_method_is_active>
            <observers>
                <disable_paymentmethod>
                    <class>Vendor_Extension_Model_Observer</class>
                    <method>paymentMethodIsActive</method>
                </disable_paymentmethod>
            </observers>
        </payment_method_is_active>
    </events>
    ...
</global>

步骤2:编辑Observer.php文件

Observer.php在此步骤中,应在文件中添加以下代码

<?php
class Vendor_Extension_Model_Observer {
    public function paymentMethodIsActive(Varien_Event_Observer $observer) {
        $method = $observer->getMethodInstance();
        
        if ($method->getCode() == 'payment_method_code') {
            
            if (condition) {
                $result = $observer->getResult();
                $result->isAvailable = false;
            }
        }
        
    }
}