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!