Magento 2.3.1에서 결제 수단에 대한 장바구니 가격 규칙을 작성 중입니다. 은행 송금을 위해 만들어야하지만 은행 송금 옵션이 제공되지 않습니다.
Magento 2.3.1에서 결제 수단에 대한 장바구니 가격 규칙을 작성 중입니다. 은행 송금을 위해 만들어야하지만 은행 송금 옵션이 제공되지 않습니다.
답변:
파일 공급 업체 /magento/module-payment/Helper/data.php 열기
268 행에서이 행을 넣어
$data['active'] = 1;
코어 파일을 변경하지 않으려면 해당 파일을 재정의 해야하는 것보다 아래 코드를 따르십시오.
Vendor / Extension / etc / di.xml로 이동하여 아래 코드를 di.xml에 작성하십시오.
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Payment\Helper\Data" type="Vendor\Extension\Helper\Data"/>
</config>
다음 단계는 Vendor \ Extension \ Helper \ Data.php에 Data.php 파일을 생성하는 것입니다
<?php
namespace Vendor\Extension\Helper;
use Magento\Payment\Helper\Data as MainHelper;
class Data extends MainHelper
{
public function getPaymentMethodList($sorted = true, $asLabelValue = false, $withGroups = false, $store = null)
{
$methods = [];
$groups = [];
$groupRelations = [];
foreach ($this->getPaymentMethods() as $code => $data) {
$data['active'] = 1;
if (!empty($data['active'])) {
$storedTitle = $this->getMethodInstance($code)->getConfigData('title', $store);
if (isset($storedTitle)) {
$methods[$code] = $storedTitle;
} elseif (isset($data['title'])) {
$methods[$code] = $data['title'];
}
}
if ($asLabelValue && $withGroups && isset($data['group'])) {
$groupRelations[$code] = $data['group'];
}
}
if ($asLabelValue && $withGroups) {
$groups = $this->_paymentConfig->getGroups();
foreach ($groups as $code => $title) {
$methods[$code] = $title;
}
}
if ($sorted) {
asort($methods);
}
if ($asLabelValue) {
$labelValues = [];
foreach ($methods as $code => $title) {
$labelValues[$code] = [];
}
foreach ($methods as $code => $title) {
if (isset($groups[$code])) {
$labelValues[$code]['label'] = $title;
if (!isset($labelValues[$code]['value'])) {
$labelValues[$code]['value'] = null;
}
} elseif (isset($groupRelations[$code])) {
unset($labelValues[$code]);
$labelValues[$groupRelations[$code]]['value'][$code] = ['value' => $code, 'label' => $title];
} else {
$labelValues[$code] = ['value' => $code, 'label' => $title];
}
}
return $labelValues;
}
return $methods;
}
}