Der Preis wird in Magento 2 auf der Ebene einfacher Produkte festgelegt (und konfigurierbare Produkte erben den Sonderpreis von einfachen Produkten darunter).
Der schnellste Weg, dies richtig zu machen, wäre die Verwendung der REST-API in einem Skript. Dies ist der beste Weg, wenn Sie ein Anfänger sind - Magento hat dies als Schnittstelle für die externe Integration erstellt, die nach Möglichkeit verwendet werden sollte.
http://devdocs.magento.com/swagger/index_20.html#!/catalogProductRepositoryV1
Der richtige Endpunkt ist das PUT / V1 / products / {sku} - von catalogProductRepository -
Beachten Sie, dass Sie den Storeview-Code wie hier beschrieben in die aufrufende URL einfügen müssen.
http://devdocs.magento.com/guides/v2.0/rest/rest_endpoints.html
Hier ist ein guter Beitrag zur Verwendung eines Skripts mit der REST-API
GET oder SET Produkt Sonderpreis mit REST API
Eine weitere Option ist das Importieren einer CSV mit mehreren Speichern mithilfe der Magento 2-Importfunktion. Dies ist am besten geeignet, wenn Sie mit der Magento / PHP-Entwicklung nicht vertraut sind:
Hier ist ein Artikel darüber:
https://www.alexcorradi.org/blog/a-guide-on-how-to-import-export-products-in-magento-2
Andernfalls können Sie, wenn Sie über eine Testumgebung verfügen und mit der Codierung sicherer sind, ein eigenes Skript zum Aktualisieren erstellen:
In einer Klasse hätten Sie:
protected $action;
public function __construct(\Magento\Catalog\Model\Product\Action $productAction) {
$this->action = $productAction;
}
public function updatePrice($productIds, $data, $storeId) {
$this->action->updateAttributes($productIds, $data, $storeId);
}
Verwenden Sie dann Folgendes, um es auszuführen.
$specialPrice = null; // OR '' can't remember off the top of my head which clears it - perhaps either.
$data = ['special_price' => $specialPrice];
$storeId = 1; //whatever store id you like
$productIds = [1,2,3,4,5,6,7]; //whatever product ids you wish to change.
$this->updatePrice($productIds, $data, $storeId);
für jedes Geschäft ausführen.
Entschuldigung für etwaige Fehler, ich schreibe nur aus dem Gedächtnis. Bitte führen Sie zuerst eine Testumgebung aus!
Verwenden Sie Katalogpreisregeln. Marketing> Katalogpreisregeln
Auf diese Weise können Sie die Verkaufspreise für alle Geschäfte oder ausgewählte Geschäfte festlegen und es ist einfach, en masse zu aktualisieren und zu aktivieren oder zu deaktivieren.
Sie können die Bedingungen so einstellen, dass sie allen Arten von Kombinationen entsprechen: Kategorie / Hersteller / Größe / Farbe / SKU / MPN
Sie können im Backend auch Attribute erstellen, die Sie für Katalogpreisregeln verwenden können. z.B. Ich habe ein Attribut 'Saison' mit Dropdown-Optionen wie 2017-4, bei denen es sich um Winterprodukte handelt.
Daher erstelle ich eine Katalogpreisregel für: Hersteller = Billabong, Kategorie = Hemden, Saison = 2017-4 und wende 20% Rabatt auf Produkte an, die diesen Kriterien entsprechen. Außerdem können Sie die Websites festlegen, auf denen die Regel angewendet wird, sowie die Daten, an denen die Regeln ausgeführt werden sollen.
Sie können in Ihren Regeln auch Farben oder Größen verwenden. Dies ist sehr vorteilhaft, wenn das Produkt seit einigen Jahren keinen Namen mehr geändert hat und es eine alte Farbgebung gibt, die Sie entfernen möchten. Sie können nur die eine Farb- und / oder Größenkombination festlegen, die zum Verkauf angeboten werden soll, während der Rest des Produkts konfigurierbare Produkte bleiben zum regulären Preis.
quelle