Alle Zahlungsmethoden sind nicht in der Warenkorbpreisregel enthalten


Antworten:


10

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;
    }
}

Funktioniert nicht und ich kann keine Kerndateien bearbeiten.
— Magecode

In Magento 2.3.1 können wir Regeln mit der Zahlungsmethode erstellen, aber warum werden bei der Auswahl der Bedingungen nicht alle Zahlungsmethoden angezeigt?
— Magecode

Es funktioniert für mich. Können Sie den Screenshot teilen, was Sie genau platzieren, wenn Sie die Kerndatei nicht bearbeiten möchten, dann überschreiben Sie diese Datei und ändern sie
— Jigs Parmar



5

Sie können den folgenden Link verwenden

/magento//a/128606/70565

Ich hoffe, es ist nützlich für Sie.


In Magento 2.3.1 können wir Regeln mit der Zahlungsmethode erstellen, aber warum werden bei der Auswahl der Bedingungen nicht alle Zahlungsmethoden angezeigt?
— Magecode

Ich habe in Magento 231 Version eingecheckt, in dieser Zahlungsmethode ist keine Bedingung verfügbar.
— Sweety Masmiya

Verwenden Sie eine Erweiterung oder eine Standard-Magento-Funktionalität?
— Sweety Masmiya

Standard Magento Funktionalität
— Magecode

Ich habe in der Standardversion Magento 231 eingecheckt, in dieser Zahlungsmethode ist die Bedingung nicht verfügbar.
— Sweety Masmiya
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.