Übernehmen MC-43048__set_rate_limits__2.4.3.Patch zur Behebung eines Problems mit der API-Ratenbegrenzung

Dieser Hotfix bietet eine Lösung für das Problem, dass Web-APIs keine Anforderungen verarbeiten können, die mehr als 20 Elemente in einem Array enthalten.Dieses Problem betrifft Bereitstellungen, die Magento Open Source 2.4.3, Adobe Systems Commerce 2.4.3 oder 2.3.7-p1 ausgeführt werden. Diesen Versionen wurde eine integrierte Ratenbegrenzung hinzugefügt, um Denial-of-Service-Angriffe (DoS) zu verhindern, und das Standardmaximum wurde auf 20 festgelegt. Dadurch wird der Standardgrenzwert Patch auf einen höheren Wert zurückgesetzt. Wenn Sie vermuten, dass Ihre Geschäft einem DoS-Angriff ausgesetzt ist, empfiehlt Adobe Systems, die Standardeingabelimits auf einen niedrigeren Wert zu senken, um die Anzahl der Ressourcen einzuschränken, die angefordert werden können. Siehe Web-API Anforderungen mit mehr als 20 Elementen im Array kann nicht verarbeitet werden Knowledge Basis Artikel.

Übernehmen AC-384__Fix_Incompatible_PHP_Methode__2.4.3_ce.Patch zur Behebung eines schwerwiegenden PHP-Fehlers beim Upgrade

Der folgende schwerwiegende Fehler kann während des Upgrades auf Adobe Systems Commerce 2.4.3 auftreten:

PHP Fatal error: Uncaught Error: Call to undefined function Magento\Framework\Filesystem\Directory\str_contains() in [...]/magento/vendor/magento/framework/Filesystem/Directory/DenyListPathValidator.php:74

Dieser Fehler resultiert aus der Verwendung der Funktion, bei der str_contains es sich um eine PHP 8.x-Funktion handelt. Adobe Systems Commerce 2.4.3 unterstützt PHP 8.x nicht. Dieser Hotfix ersetzt diese Funktion durch eine unterstützte PHP 7.x-Funktion. Weitere Informationen finden Sie im Artikel Adobe Systems Commerce-Upgrade 2.4.3, 2.3.7-p1 PHP Fataler Fehler Hotfix Knowledge Basis Artikel.

AC-3022.patch Übernehmen, DHL weiterhin als Versanddienstleister anzubieten

DHL hat die Schemaversion 6.2 eingeführt und wird die Schemaversion 6.0 in naher Zukunft einstellen. Adobe Commerce 2.4.4 und frühere Versionen, die die DHL-Integration unterstützen, unterstützen nur Version 6.0. Händler, die diese Versionen bereitstellen, sollten AC-3022.patch so bald wie möglich beantragen, DHL weiterhin als Reederei anzubieten. Informationen Herunterladen und Installieren des Patches finden Sie im Knowledgebase-ArtikelApply a patch to continue offer DHL as shipping carrier) .

Höhepunkte

Achten Sie auf die folgenden Highlights in dieser Version.

Wesentliche Sicherheitsverbesserungen

Diese Version enthält 33 Fehlerbehebungen und Verbesserungen bei der Plattformsicherheit. Viele dieser Sicherheitskorrekturen wurden auf 2.4.2-p2 und 2.3.7-p1 zurückportiert.

Dreiunddreißig Sicherheitsverbesserungen, die dabei helfen, Sicherheitslücken in der Ferncodeausführung (Remote Code Execution, RCE) und Cross-Site-Scripting (XSS) zu schließen

Bisher wurden keine bestätigten Angriffe im Zusammenhang mit diesen Problemen durchgeführt. Bestimmte Schwachstellen können jedoch potenziell ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Administrator erhält. Daher erinnern wir Sie daran, alle notwendigen Schritte zu unternehmen, um Ihren Administrator zu schützen, einschließlich, aber nicht beschränkt auf diese Bemühungen: IP-Zulassungsliste, Zwei-Faktor-Authentifizierung, Verwendung eines VPN, die Verwendung eines eindeutigen Standorts anstelle von /adminund gute Kennwort Hygiene. Eine Erläuterung dieser behobenen Probleme finden Sie Adobe Systems Sicherheitsbulletin .

Weitere Verbesserungen bei der Sicherheit

Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit, einschließlich:

  • Ein neues Composer-Plug verhindert Abhängigkeitsverwirrungen und identifiziert bösartige Pakete mit denselben Namen wie interne Pakete im öffentlichen Paket-Repository. Siehe den Blogpost von Adobe Releases New Composer Plugin with 2.4.33.

  • Ratenbegrenzung ist jetzt in -APIs integriert um DoS-Angriffe (Denial-of-Service) zu verhindern. Web-APIs erlegen jetzt Einschränkungen hinsichtlich der Größe oder Anzahl der Ressourcen auf (der standardmäßige Maximalwert ist auf 20 festgelegt und kann je nach Geschäftsanforderungen auf einen anderen Wert konfiguriert werden), die von einem Client angefordert werden können. Informationen Konfigurieren dieserfinden Sie unter „Ratenbegrenzung“.

  • Die reCAPTCHA-Abdeckung wurde erweitert und umfasst:

    • Web-APIs mit entsprechenden HTML-Seiten werden durch ReCAPTCHA abgedeckt. (Ausgenommen sind Web-APIs, auf die durch Integrationen zugegriffen wird.) Die reCAPTCHA-Abdeckung schützt Endpunkte vor Spam-Angriffen. Wenn ein Drittanbieter-Integrationsdienst, der OAuth verwendet, auf Web-APIs zugreift, ist ReCAPTCHA deaktiviert.

    • Die Storefront für Bestellungen Seite und zahlungsbezogene Web-APIs. Der reCAPTCHA-Schutz für diese Seiten ist standardmäßig deaktiviert und kann vom Administrator aus aktiviert werden. Diese Abdeckung fügt einen Anti-Brute-Force-Mechanismus hinzu, um Geschäfte vor Carding-Angriffen zu schützen.

NOTE
Ab Version 2.3.2 werden wir indexierte Common Vulnerabilities and Expositions (CVE)-Nummern mit jedem Sicherheitsfehler zuweisen und veröffentlichen, der uns von externen Parteien gemeldet wurde. Auf diese Weise können Benutzer nicht adressierte Schwachstellen in ihrer Bereitstellung leichter identifizieren. Weitere Informationen zu CVE-Kennungen finden Sie unter CVE.

Verbesserungen der Infrastruktur

Diese Version enthält Verbesserungen, die die Qualität des Frameworks verbessern, sowie die folgenden Funktionsbereiche:

  • Kundenkonto

  • Katalog

  • CMS

  • OMS

  • Import/Export

  • Promotions und Targeting

  • Warenkorb und Checkout

  • B2B

  • Staging und Vorschau

PayPal Pay Later wird jetzt Bereitstellungen unterstützt, die PayPal enthalten. Mit dieser Funktion können Käufer eine Bestellung in zweiwöchentlichen Raten bezahlen, anstatt den vollen Betrag zum Zeitpunkt des Kaufs zu bezahlen.

Neuer use_application_lock-Indizierungsmodus. Im use_application_lock Modus können Sie die Neuindizierung aktivieren, indem Sie entweder Umgebungsvariablen verwenden oder die app/etc/env.php konfigurieren. Bei aktiviertem Modus müssen Sie den Indexer nach einem Fehler nicht mehr manuell zurücksetzen. Siehe Verwenden des Anwendungssperrmodus für Neuindizierungsprozesse.

Plattformverbesserungen

Version 2.4.3 ist noch nicht mit PHP 8.x kompatibel, aber die folgenden Plattformupgrades bringen uns der zukünftigen Kompatibilität mit PHP 8.x näher.

  • Core Composer-Abhängigkeiten und Bibliotheken von Drittanbietern wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.x kompatibel sind.

  • Die KnockoutJS-Bibliothek wurde auf Version 3.5.1 (die neueste Version) aktualisiert.

  • Die veraltete TinyMCE v3-Bibliothek wurde entfernt. Das Magento_Tinymce3Banner und die MFTF-Tests im Zusammenhang mit TinyMCE v3.x wurden aus Adobe Commerce entfernt.

  • Version 2.4.3 wurde getestet und als kompatibel mit Redis 6.0.12 bestätigt. (Version 2.4.x bleibt kompatibel mit Redis 5.x.)

  • Die Laminas-Bibliotheksabhängigkeiten wurden auf PHP 8.x-kompatible Versionen aktualisiert. Einige redundante Abhängigkeiten wurden aus der composer.json Datei entfernt. Adobe Systems Commerce 2.4.3 verwendet Laminas 3.4.0.

Performancesteigerung

Diese Version enthält Verbesserungen, die die Indizierungszeit für die Indexer "Produktpreis" und "Katalogregel" verkürzen. Händler können jetzt eine Website aus einem Kunden Gruppe oder einem freigegebenen Katalog ausschließen, was die Anzahl der Datensätze für die Indizierung reduziert und die Indizierungszeiten verbessert.

Live-Suche

Live Search unterstützt von Adobe Sensei bietet ein intuitives Sucherlebnis, indem Algorithmen für künstliche Intelligenz und maschinelles Lernen verwendet werden, um eine umfassende Analyse aggregierter Besucherdaten durchzuführen. Siehe Versionshinweise zur Live Search.

GraphQL

Diese Version fügt GraphQL-Unterstützung für die folgenden Funktionen hinzu:

Weitere Informationen zu diesen Verbesserungen finden Sie im GraphQL-Entwicklerhandbuch .

B2B

Version 2.4.3 wird B2B v1.3.2 eingeführt. Diese Version enthält mehrere Fehlerbehebungen. Siehe B2B Versionshinweise.

Page Builder

Page Builder ist jetzt als gebündelte Erweiterung in Magento Open Source verfügbar. Es ist jetzt das standardmäßige Tool zur Inhaltsbearbeitung für Adobe Commerce 2.4.3 und Magento Open Source 2.4.3. Er kann den WYSIWG-Editor durch beliebige Drittanbietermodule ersetzen.

Page Builder ersetzt den TinyMCE-Editor in den folgenden Admin-Bereichen:

  • CMS-Seite
  • CMS-Block
  • Kategorie Beschreibung
  • Produktbeschreibung

Alle in TinyMCE erstellten Inhalte wurden in Page Builder als HTML migriert.

PWA Studio

Weitere Informationen zu Verbesserungen und Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Kompatibilität finden Sie eine Liste der Versionen von PWA Studio und der entsprechenden kompatiblen Versionen.

Upgrade-Kompatibilitätstool

Der Umfang des Upgrade-Kompatibilitätstools wurde auf der Grundlage von Feedback aus der Community erweitert. Treten Sie unserem #upgrade-compatibility-tool Slack-Kanal bei, um Unterstützung vom Adobe-Produktteam und der Community zu erhalten und um Unterstützung bei der zukünftigen Ausrichtung des Tools zu erhalten.

Cloud Managed Services-Aktualisierungen

Diese Version beinhaltet Verbesserungen unserer Unterstützung für Amazon Simple Storage Service (AWS S3) und Amazon Aurora Cloud Managed Services. Sie bietet zertifizierte Unterstützung für AWS ElastiCache, AWS Elasticsearch und AWS Managed Queues (Rabbit MQ). (Wir haben die Funktionalität, Leistung und Integration dieser Services mit Adobe Commerce getestet.)

Adobe Stock-Integration

Diese Version enthält Adobe Stock Integration v2.1.1.

Vom Anbieter entwickelte Erweiterungen

In den folgenden Themen finden Sie Aktualisierungen zu Funktionen und Änderungen für diese Version:

Behobene Probleme

Wir haben Hunderte von Problemen im Code 2.4.3 behoben.

Installation, Upgrade, Bereitstellung

  • Der bin/magento setup:db:status-Befehl gibt jetzt eine Meldung zurück, die angibt, dass nach einem erfolgreichen Upgrade alles auf dem neuesten Stand ist. Zuvor hat die Anwendung diesen Fehler angezeigt: Declarative Schema is not up to date.
  • Konfigurationswerte werden nun auf Formular neu laden beibehalten, wenn die Erstellung eines neuen konfigurierbaren Produkts fehlschlägt. Zuvor gingen beim neu laden des Formulars Werte verloren, und das Applikation zeigte folgenden Fehler an: The value specified in the URL Key field would generate a URL that already exists. GitHub-32102
  • Das Applikation löst keine Ausnahme mehr aus, wenn Sie ein Upgrade von einem Magento Open Source Implementierung mit Redis auf Adobe Systems Commerce durchführen bin/magento setup:upgrade .
  • Zuvor erstellte Warenkorb Preisregeln werden jetzt auf der Seite Content Staging Dashboard angezeigt, nachdem ein Implementierung von Magento Open Source auf Adobe Systems Commerce aktualisiert wurde.
  • Bereitstellungen, die auf Galera Cluster ausgeführt werden, unterstützen jetzt mehr Kunden. GitHub-31038
  • Administratoren können sich jetzt erfolgreich bei einem Implementierung anmelden, wenn das Applikation entweder mit der —use-rewrites=0 Option oder mit web/seo/use_rewrites dem Wert 0 in installiert core_config_data_tablewurde. GitHub-32100
  • Aktualisierte sortOrder Ladung für AsyncCssPlugin. Die Applikation wird jetzt geladenAsyncCssPlugin, bevor JsFooterPlugin GitHub-30882
  • Magento\Config\Model\Config\PathValidator prüft jetzt die Anzeige Pfad, um festzustellen, ob ein Element vorhanden ist, und verwendet stattdessen die config.xml Pfad für Tauglichkeitsprüfung, wenn es eine Konfigurations Pfad hat. GitHub-27678
  • Das Kompilieren von weniger Dateien mit Grunt oder durch Server-seitig Kompilierung führt nun zu den gleichen Ergebnissen. Zuvor. .abs- styles, die andere .abs- styles in _extends.lesserweitert, wurden bei der Kompilierung mit Grunt nicht richtig ausgegeben. Dies führte zu Unterschieden zwischen Produktions- und Entwicklungsbereitstellungen. GitHub-7231

AdminGWS

  • Admin GWS verwendet int jetzt Werte für die website_id SQL-Bedingung in Admin-Sammlungen für Administratoren mit benutzerdefinierten Berechtigungen.

Adobe Stock-Integration

  • Die Anwendung zeigt jetzt eine informative Nachricht und einen Link zur Seite Admin Stores > Configuration > Erweitert > System auf der Seite Suchen nach Adobe Stock an, wenn API-Schlüssel (Client-ID) und Client- nicht festgelegt sind. Zuvor hat die Anwendung diesen Fehler angezeigt: We couldn't find any records und kein Link.

Backend-Bereich

  • Admins mit eingeschränktem Zugriff (die beispielsweise nur Zugriff auf eine Website haben) können Kategorien, die auf den globalen Umfang festgelegt sind, nicht mehr bearbeiten.
  • Der generierte Systembericht (System > Support > Systembericht) wird jetzt korrekt gerendert. Zuvor war der Berichtsinhalt falsch ausgerichtet.
  • Die Anwendung deaktiviert jetzt die Validierung im Feld Preis wie erwartet, wenn die Einstellung Dynamischer Preis bei der Erstellung eines Bundles aktiviert wird. Zuvor gab es einen Validierungsfehler, als Sie einen Wert aus dem Feld Preis entfernten, als die Einstellung Dynamischer Preis aktiviert war. GitHub-26214
  • Unendliche Weiterleitungen treten nicht mehr auf, wenn sich die Admin-URL in Bereitstellungen, in denen die Anwendung so konfiguriert ist, dass sie von zwei URLs aus zugänglich ist, von der Standard-Website-URL unterscheidet.

Produkte im Paket

  • Sie können jetzt die addProductsToCart-Mutation verwenden, um einem Warenkorb ein Bundle-Produkt mit mehr als einer Kontrollkästchen-Option hinzuzufügen.
  • Die Preisindexierung Paket Produkte wird nun über temporäre Tabellen ausgeführt, wodurch das Sperren von Datenbanktabellen vermieden wird. Zuvor verwendete die Anwendung physische Tabellen, was zu gesperrten Tabellen führte.
  • Der Preis eines Bundle-Artikels kann jetzt auf 0,00 festgelegt werden. Als Sie zuvor zur Bearbeitungsseite zurückkehrten, nachdem Sie den Preis auf 0,00 gesetzt hatten, wurde der Preis auf den Standardwert zurückgesetzt. GitHub-32383
  • In den Bestelldetails für Bestellungen, die Paket Produkte enthalten, wird nun der korrekte Preis für die Paket Produkte angezeigt, wenn der Preis vor der bestellen geändert wurde.
  • Der Lagerbestand eines Bundle-Produkts wird jetzt basierend auf dem Lagerstatus seiner untergeordneten Produkte aktualisiert. Bisher wurden Paket Produkte als nicht vorrätig angezeigt, wenn eine Option aus dem Produkt entfernt wurde, und das Paket Produkt hatte zwei Optionen mit derselben Produktnummer.
  • Ein Administrator kann jetzt den Wert für das Attribut eines Paket Shipment Type Produkts ändern, nachdem es in ein anderes Attribut Gruppe verschoben wurde. Bisher wurde dieses Attribut immer mit einem Together Wert gespeichert, wenn es in ein anderes Attribut Gruppe als das Standard-Gruppe im Attributsatz verschoben wurde.
  • Die GraphQL-Mutation setGuestEmailOnCart aktualisiert nun die Gast-E-Mail korrekt. Zuvor wurden die Angebots- und Angebotsadresstabellen nicht aktualisiert.
  • Das Hinzufügen, Entfernen oder Aktualisieren eines untergeordneten Produkts zu einem Produktpaket über die REST-API ruft jetzt eine Neuindizierung durch den Trigger wie erwartet auf. Trigger Zuvor wurde bei diesen Aktionen keine Neuindizierung vorgenommen. Infolgedessen änderte das Bundle-Produkt seinen Lagerstatus erst nach der manuellen Neuindizierung.
  • Die Anwendung zeigt jetzt die richtige Preisspanne für Bundle-Produkte mit Stufenpreisen an. GitHub-30284
  • Die Anwendung zeigt jetzt den gleichen Gesamtpreis wie erwartet auf der Warenkorbseite und im Versandschritt des Checkout-Workflows an, nachdem sich der Preis einer Bundle-Option geändert hat.
  • Sie können jetzt ein Produktpaket erfolgreich konfigurieren, indem Sie über einen Warenkorb eines Kunden darauf zugreifen. Zuvor wurde die Seite „Produkt konfigurieren“ nie vollständig geladen, und Sie konnten Ihre Einstellungen nicht speichern.
  • Händler können jetzt für ein Produktpaket in jeder Shop-Ansicht einer Multi-Store-Bereitstellung einen eindeutigen Preis zuweisen. Website-spezifische Preise werden in der catalog_product_bundle_selection_price Tabelle gespeichert. Zuvor basierte der Preis eines Bundle-Produkts in der Anwendung nicht auf dem Website-Umfang, selbst wenn Stores > Configuration > Catalog > Catalog > Price > Catalog Price Scope auf Website gesetzt war. In catalog_product_bundle_selection_price wurden keine webseitenspezifischen Preise gespeichert. GitHub-12584
  • Rechnungen für Bundle-Produkte zeigen jetzt die richtige Menge für die zugehörigen einfachen Produkte an, wenn Dynamische Preisfindung deaktiviert ist. Zuvor hatten einfache Produkte, die mit dem Bundle-Produkt verknüpft waren, die Menge des übergeordneten Produkts (nicht das Bundle-Produkt). GitHub-30802
  • Die updateProductsInWishlist-Mutation aktualisiert jetzt erfolgreich Elemente, die zu einem Bundle-Produkt in einer Wunschliste gehören. Zuvor löschte diese Mutation das Element, anstatt das Wunschlistenelement zu aktualisieren, und erstellte ein neues, wodurch die Element-ID geändert wurde.
  • Sie können jetzt beim Erstellen oder Aktualisieren eines Bundle-Produkts mit dem POST /V1/product/:sku-Endpunkt die required_options- und has_options-Bundle-Attribute wie erwartet festlegen. Zuvor wurden diese benutzerdefinierten Attribute trotz der Bemühungen, sie auf 1 (eins) festzulegen, auf 0 (null) gesetzt.
  • Bundle-Produktdaten, die zuvor fehlten, werden jetzt in den Staging-Prozess einbezogen. Dadurch werden Inkonsistenzen im Produktverhalten behoben, wenn Käufer ein Produktpaket über die Produktlistenseite kauften, anstatt es direkt über eine Produktseite hinzuzufügen.

Cache

  • Die varnish6.vcl wurde aktualisiert, um das Zwischenspeichern der Kundenseite zu umgehen.

CAPTCHA

  • CAPTCHA validiert jetzt die von einem Kunden bereitgestellten Daten korrekt, und CAPTCHA-Felder werden nun wie erwartet angezeigt, nachdem ein Kunde mehrmals erfolglos versucht hat, mit PayPal Payflow Pro einen Checkout durchzuführen.
  • Die CAPTCHA-Validierung schlägt auf der Zahlungsseite des Checkout-Workflows nicht mehr zufällig fehl.
  • Die Anwendung zeigt jetzt CAPTCHA-Felder wie erwartet an, nachdem die Anzahl der fehlgeschlagenen Abschlussversuche überschritten wurde. Zuvor hat die Anwendung zwar Sie aufgefordert, die CAPTCHA-Abfrage erneut zu versuchen, aber die CAPTCHA-Felder nicht angezeigt.
  • CAPTCHA funktioniert jetzt auf der Kaufbestätigungsseite erwartungsgemäß. Nachdem ein Käufer eine CAPTCHA-Frage korrekt beantwortet hatte, wurde der Lader auf der Kaufbestätigungsseite noch nie abgeschlossen und die Anwendung zeigte diesen Fehler an: captchaData[formId] is undefined. (Dieser Fehler trat nur auf, wenn der Käufer denselben Browser verwendete, von dem aus er zuvor auf eine Bereitstellung mit 2.3.5-p1 zugegriffen hatte.)
  • _.isEmpty() Einchecken der defaultCaptcha.js-Datei wurde jetzt erfolgreich abgeschlossen. Zuvor wurden diese Prüfungen nicht abgeschlossen, sodass die Checkout-Seite nach dem Upgrade nicht geladen werden konnte. GitHub-31641

Warenkorb und Checkout

  • Das Applikation berücksichtigt beim Konto Konvertieren und Aktualisieren von Produkt-Anzahl im Warenkorb nun Gebietsschema-spezifische Dezimallocators.
  • Bei Bestellungen wird der angegebene Kundenname nicht mehr ohne Lieferadresse angegeben. Bisher wurden Namen weggelassen, weil die same_as_billing Hervorhebung nicht in der Datenbank gespeichert war.
  • Links zu Geschenklisten bleiben jetzt wie erwartet bestehen, wenn Sie ein Produkt in der Warenkorb bearbeiten. Zuvor verschwanden diese Links, als Sie auf die Schaltfläche Warenkorb aktualisieren klickten.
  • Alle Warteschlangennachrichten für Verbraucher-quoteItemCleaner ändern nun nach dem Löschen mehrerer Produkte ihren Status in complete wie erwartet. Zuvor hat nur eine Nachricht für diesen Verbraucher seinen Status in complete geändert, und der Rest hat den Status in in progress geändert.
  • Die Anwendung zeigt nun die Validierungsmeldung für Geschäftsbedingungen nur noch dann im entsprechenden Block an, wenn ein Käufer auf die Schaltfläche Bestellung aufgeben klickt. Zuvor wurde diese Nachricht im Block Rabattcode anwenden angezeigt, wenn ein Käufer im Checkout-Workflow die Zahlungsmethode geändert hat: The order wasn't placed. First, agree to the terms and conditions, then try placing your order again.
  • Sie werden nun wie erwartet zum Checkout Seite weitergeleitet, nachdem Sie der Warenkorb von einem verzögern Update Vorschau ein Paket Produkt hinzugefügt und auf die Warenkorb geklickt haben. GitHub-447
  • Der Applikation verwirft nun Änderungen am Abrechnung Adressformular im Checkout Zahlungsschritt, wenn der Erstkäufer nicht auf die ​Aktualisierungs-Button klickt und zum Versandschritt zurückkehrt.
  • Die Applikation zeigt jetzt eine informative Fehlermeldung an und aktualisiert die Produkt-Anzahl nicht, wenn ein Erstkäufer eine ungültig Produkt-Anzahl hinzufügt und auf der Seite "Einkauf Warenkorb verwalten" auf die Button "Artikel und Mengen aktualisieren" klickt. Zuvor führte die Anwendung ein Upgrade des Produkts Anzahl durch, ohne eine Fehlermeldung anzuzeigen. GitHub-459
  • Produkte mit einer anpassbaren Option (File) jetzt wie erwartet aktive Links während des Multi-Shipping-Checkout-Prozesses enthalten. Dieses verknüpfen fehlte bisher. GitHub-31095
  • Das Admin-Warenkorb zeigt jetzt Produktpreise in korrekten Währungen für Shops an, die mehrere Währungen unterstützen. Bisher wurden Preise mehr als einmal in die angegebene Währung umgerechnet – zuerst, wenn Produkte aus der Storefront zum Warenkorb hinzugefügt wurden, und dann noch einmal, wenn das bestellen anschließend im Admin gerendert wurde.
  • Die Applikation leert die Warenkorb nun wie erwartet, nachdem ein Administrator eine bestellen vom Administrator abgeschlossen hat, die von einem Erstkäufer in der Storefront erstellt wurde. Wenn sich der Kunde zuvor wieder anmeldete, nachdem der Administrator die bestellen abgeschlossen hatte, enthielt die Storefront Warenkorb immer noch bestellen Inhalte. GitHub-30262
  • Käufer können jetzt ein Produkt zu ihrem Warenkorb hinzufügen, dessen Minimal beworbener Preis (MAP) den regulären Produktpreis übersteigt.
  • Käufer können jetzt beim Auschecken mit mehreren Adressen ihre Rechnungsadresse erfolgreich aus dem Checkout-Workflow ändern.
  • Alle von Gästen erstellten Paid-Payment-Transaktionen werden nun in der Datenbank gespeichert und in der Admin wie erwartet angezeigt. Zuvor wurde nur eine kleine Teilmenge gleichzeitiger Bestellungen in der Datenbank gespeichert und die meisten Bestellungen gingen aufgrund von Zeitüberschreitungen verloren, die sich aus Datenbanksperren ergaben. GitHub-25862
  • Die Anwendung zeigt jetzt korrekt Inline-Begrüßungsnachrichten an, die Sonderzeichen enthalten, wenn ein Gast ein Produkt in den Mini-Warenkorb legt. Zuvor hat die Anwendung das Produkt nicht zum Mini-Warenkorb hinzugefügt oder die Begrüßungsnachricht angezeigt. GitHub-32250
  • Die Versandseite des Checkout-Workflows wird jetzt erfolgreich geladen, wenn der Versand im Geschäft aktiviert ist. Zuvor gab die Anwendung einen JavaScript-Fehler aus und die Versandkassenseite wurde nicht vollständig gerendert.
  • Das itemResolvers Argument wurde zur di.xml hinzugefügt. Daher ist der Checkout nicht mehr fehlerhaft, wenn konfigurierbare und gruppierte Produktmodule deaktiviert sind. GitHub-30860
  • Die Anwendung zeigt jetzt die Optionsschaltflächen im Abschnitt Zahlungs- und Versandinformationen wie beim Workflow „Admin-Neubestellung“ erwartet an. GitHub-30257
  • Die Anwendung wendet jetzt die Regeln für den Warenkorbpreis korrekt mit einem festen Rabatt auf Warenkorbebene an, wenn der Warenkorb ein Produkt mit mehreren Optionen enthält. Zuvor wurde die Warenkorbpreisregel nicht vollständig auf die Bestellung angewendet. GitHub-30952
  • Die Schaltfläche Zum Warenkorb hinzufügen in der Ansicht der Kategorieliste funktioniert jetzt wie erwartet. GitHub-32232
  • Sie können jetzt POST-/V1/carts/mine/items verwenden, um eine benutzerdefinierte Menge gruppierter Produkte zu einem Warenkorb hinzuzufügen. GitHub-26909
  • Die Anwendung füllt den Bereich Rechnungsadresse des Checkout-Workflows nicht mehr mit der Versandadresse. Wenn zuvor das Feld Bundesland/" für die Rechnungsadresse leer war und sich die Versand- und Rechnungsadressen unterschieden, hat der Antrag das Feld Rechnungsadresse Bundesland/) mit Informationen aus der Lieferadresse ausgefüllt. GitHub-31608