Magento bietet als E-Commerce-Plattform umfangreiche Möglichkeiten zur Produktverwaltung, einschließlich Funktionen zum Import und Export von Produkten. Es gibt jedoch Fälle, in denen der Import von Downloadable Products zu Fehlern in der Attributverwaltung führen kann. In diesem Artikel besprechen wir einen Patch für die Datei Downloadable.php, der das Problem beim Speichern des überflüssigen Attributs 'links_purchased_separately' behebt. Zusätzlich gehen wir auf eine vorübergehende Lösung für das Problem ein, dass die Option „Links can be purchased separately" aufgrund eines Magento-Bugs nach dem Import von Downloadable Products immer aktiviert bleibt.
Schritt 1: Beschreibung des Problems
Nach dem Import von Downloadable Products in Magento kann ein Problem mit der Option „Links can be purchased separately" auftreten. Aufgrund eines Magento-Bugs ist diese Option immer aktiviert, selbst wenn die zugehörigen Attribute ('links_purchased_separately' oder 'purchased_separately') in den Eingabedaten fehlen. Das kann zu unerwünschten Folgen führen, etwa zur falschen Anzeige des Produktverfügbarkeitsstatus.
Schritt 2: Patch anwenden
Der nachfolgend bereitgestellte Patch für die Datei Downloadable.php behebt das Problem beim Speichern des Attributs 'links_purchased_separately'. Der Patch ändert die Methode prepareAttributesWithDefaultValueForSave, sodass das Attribut nicht gespeichert wird, wenn die entsprechenden Daten in der Eingabe fehlen.
--- /Model/Import/Product/Type/Downloadable.php 2022-03-08 00:52:02.000000000 +0200
+++ /Model/Import/Product/Type/Downloadable.php 2023-11-29 16:38:53.060641590 +0200
@@ -448,6 +448,9 @@
{
$resultAttrs = parent::prepareAttributesWithDefaultValueForSave($rowData, $withDefaultValue);
$resultAttrs = array_merge($resultAttrs, $this->addAdditionalAttributes($rowData));
+ if (!in_array('links_purchased_separately', $rowData) && !in_array('purchased_separately', $rowData)) {
+ unset($resultAttrs['links_purchased_separately']);
+ }
return $resultAttrs;
}
Fazit
Die Verwaltung Ihres Shops mit Magento kann zuverlässig und effizient sein, doch gelegentlich sind Eingriffe erforderlich. Der bereitgestellte Patch und die vorübergehende Lösung helfen Ihnen, das Problem mit dem Speichern des Attributs 'links_purchased_separately' und der Option „Links can be purchased separately" nach dem Import von Downloadable Products zu beheben. Denken Sie daran, wie wichtig es ist, Ihre Plattform regelmäßig zu aktualisieren und Änderungen vor dem Einspielen auf der Live-Site zu testen.