ACP2E-4653: Bedingungen für den Kategoriebereich der Warenkorbpreisregel fehlen in REST API
Mit dem Patch ACP2E-4653 wird das Problem behoben, dass der Attributbereich Warenkorbpreisregel für Category (Parent Only) und Category (Children Only) nicht offen gelegt wird, wenn Regeln über die REST-API abgerufen oder aktualisiert werden. Dieser Patch ist verfügbar, wenn Quality Patches Tool (QPT) 1.1.80 installiert ist. Die Patch-ID lautet ACP2E-4653. Dieses Problem wird voraussichtlich in Adobe Commerce 2.4.9 behoben.
Betroffene Produkte und Versionen
Der Patch wird für die Adobe Commerce-Version erstellt:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.8-p2
Kompatibel mit Adobe Commerce-Versionen:
- Adobe Commerce (alle Bereitstellungsmethoden) 2.4.8 - 2.4.8-p5
magento/quality-patches auf die neueste Version und überprüfen Sie die Kompatibilität auf der Seite Quality Patches Tool: Nach Patches suchen. Verwenden Sie die Patch-ID als Suchbegriff, um den Patch zu finden.Problem
Wenn Regeln zum Warenkorbpreis über die REST-API abgerufen oder aktualisiert werden, wird der Attributbereich für Category (Parent Only) und Category (Children Only) nicht offen gelegt.
Schritte zur Reproduktion:
- Generieren Sie ein Admin-Token, indem Sie eine
POST-Anfrage anrest/V1/integration/admin/tokenmit den Admin-Anmeldeinformationen senden. - Erstellen Sie eine Warenkorb-Preisregel mithilfe der REST-Endpunkt-
rest/V1/salesRulesmit einer Aktionsbedingung, die dascategory_ids-Attribut verwendet. - Öffnen Sie im Admin-Bedienfeld die Regel Warenkorb-Preis . Fügen Sie im Actions Abschnitt unter Apply the rule only to cart items matching the following conditions (leave blank for all items manuell eine Category (Children Only) Bedingung hinzu.
- Legen Sie die Bedingung so fest, dass Category (Children Only) nicht
<category_id>wird. - Rufen Sie die Regel über die API ab, indem Sie eine
GETanrest/V1/salesRules/<rule_id>senden. - Beobachten Sie die in der Antwort zurückgegebenen
action_condition.
Erwartete Ergebnisse:
-
Es sollte möglich sein, eine Warenkorb-Preisregel mit der Category (Children Only)-Bedingung über die REST-API zu erstellen, abzurufen und zu aktualisieren.
-
Der Attributbereich sollte explizit verfügbar gemacht werden, damit Kategorie, Category (Parent Only) und Category (Children Only) korrekt unterschieden werden können. Beispielsweise sollte die
action_conditionwie folgt zurückgegeben werden:code language-none "action_condition": { "condition_type": "Magento\\SalesRule\\Model\\Rule\\Condition\\Product\\Combine", "conditions": [ { "condition_type": "Magento\\SalesRule\\Model\\Rule\\Condition\\Product", "operator": "!=", "attribute_name": "category_ids", "value": "4", "extension_attributes": { "attribute_scope": "" } }, { "condition_type": "Magento\\SalesRule\\Model\\Rule\\Condition\\Product", "operator": "==", "attribute_name": "category_ids", "value": "5", "extension_attributes": { "attribute_scope": "children" } } ], "aggregator_type": "all", "operator": null, "value": "1" },
Tatsächliche Ergebnisse:
- Beide Bedingungsattributnamen werden als
category_idszurückgegeben. - Es ist nicht klar, wie eine Regel mit der Category (Children Only) Bedingung über die REST-API erstellt oder aktualisiert werden soll.
Patch anwenden
Verwenden Sie je nach Bereitstellungsmethode die folgenden Links, um einzelne Patches anzuwenden:
- Adobe Commerce oder Magento Open Source On-Premise: Quality Patches Tool > Nutzung im Quality Patches Tool.
- Adobe Commerce in Cloud-Infrastruktur: Upgrades und Patches > Patches anwenden im Handbuch zu Commerce in Cloud-Infrastruktur.
Verwandtes Lesen
Weitere Informationen zu Quality Patches Tool finden Sie unter:
- Quality Patches Tool: Ein Self-Service-Tool für hochwertige Patches im Tools-Handbuch.