In \magento\framework\Pricing\PriceCurrencyInterface
möchte ich die Konstante in dieser php
Schnittstellendatei folgendermaßen ändern :
/**
* Default precision
*/
const DEFAULT_PRECISION = 2;
dazu:
/**
* Default precision
*/
const DEFAULT_PRECISION = 0;
Was sind die besten Methoden, um diese PHP-Schnittstelle aus den Magento-Core-Dateien zu überschreiben?
magento2
override-model
Wingski
quelle
quelle
Antworten:
Grundsätzlich müssen Sie die Abhängigkeitsdatei der priceCurrency-Schnittstelle wie folgt überschreiben, um die Preisgenauigkeit zu ändern.
Sie können die Preisgenauigkeit wie folgt einstellen:
Sie müssen lediglich ein einfaches Modul dafür erstellen.
Erstellen Sie das Rbj / PriceCurrency- Modul unter dem App / Code-Ordner Magento.
Erstellen registration.php Datei,
Ordner etc erstellen ,
app / code / Rbj / PriceCurrency / etc / di.xml
app / code / Rbj / PriceCurrency / etc / frontend / di.xml
Erstellen Sie eine Modelldatei, die wir in der Datei di.xml dekaliert haben.
app / code / Rbj / PriceCurrency / Model / Directory / Currency.php
Erstellen Sie app / code / Rbj / PriceCurrency / Plugin / FormatPrice.php
php bin/magento setup:upgrade
Befehl ausführen .quelle
Zunächst werde ich Ihre Frage beantworten
Nach dem Grundwissen können wir eine Schnittstelle nicht überschreiben. In Magento wäre es dasselbe.
Zweitens werfen Sie einen Blick auf
vendor/magento/module-catalog/etc/di.xml
Wie wir die eigentliche Klasse sehen können, die wir außer Kraft setzen müssen , ist
Magento\Directory\Model\PriceCurrency
.Drittens kann dieses Modul Ihr Bedarf sein: https://github.com/Magento-Japan/m2-jplocalize/tree/master/price
quelle