In Magento 2.3.1 erstelle ich eine Warenkorbpreisregel für Zahlungsmethoden. Ich muss für die Überweisung erstellen, aber es gibt keine Überweisungsoption.
In Magento 2.3.1 erstelle ich eine Warenkorbpreisregel für Zahlungsmethoden. Ich muss für die Überweisung erstellen, aber es gibt keine Überweisungsoption.
Antworten:
Datei öffnen Anbieter / magento / Modulzahlung / Helfer / data.php
Geben Sie in Zeile 268 diese Zeile ein
$data['active'] = 1;
Wenn Sie die Kerndatei nicht ändern möchten, müssen Sie diese Datei überschreiben. Befolgen Sie dazu den folgenden Code
Gehen Sie zu Vendor / Extension / etc / di.xml und schreiben Sie den folgenden Code in 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>
Der nächste Schritt besteht darin, die Datei Data.php unter Vendor \ Extension \ Helper \ Data.php zu erstellen
<?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;
}
}
Sie können den folgenden Link verwenden
Ich hoffe, es ist nützlich für Sie.