Versionshinweise zu Adobe Commerce 2.4.7

Mit Adobe Commerce 2.4.7 wird PHP 8.3 unterstützt. Es werden Hunderte von Qualitätskorrekturen und Verbesserungen eingeführt. Abhängigkeiten von Core Composer und Bibliotheken von Drittanbietern wurden auf die neuesten verfügbaren Versionen aktualisiert. Diese Version umfasst erhebliche Leistungsverbesserungen, einschließlich des schnelleren Ladens von Produktlistenseiten für komplexe Produkte mit vielen Optionen und Verbesserungen für die Indexerverwaltung. Diese Version erhöht die GraphQL-Abdeckung für benutzerdefinierte Attribute und GraphQL-Resolver-Caches. Außerdem werden die kürzlich aktualisierten FedEx- und UPS-Dienste unterstützt.

NOTE
Adobe Commerce-Versionen können abwärtsinkompatible Änderungen (BICs) enthalten. Informationen zu abwärtsinkompatiblen Änderungen finden Sie unter BIC-Referenz. Die wichtigsten abwärtsinkompatiblen Probleme werden in BIC-Highlights beschrieben. Nicht alle Versionen enthalten wichtige BICs.

Weitere Versionsinformationen

Obwohl der Code für diese Funktionen mit Versionen des Adobe Commerce-Kerncodes gebündelt ist, werden mehrere dieser Projekte (z. B. B2B und Progressiven Webs Application (PWA) Studio) ebenfalls unabhängig voneinander veröffentlicht. Fehlerbehebungen für diese Projekte werden in den separaten, projektspezifischen Versionsinformationen dokumentiert, die in der Dokumentation für jedes Projekt verfügbar sind.

Highlights von Adobe Commerce 2.4.7

Achten Sie auf die folgenden Highlights in dieser Version.

Sicherheitsverbesserungen

Diese Version enthält dieselben Sicherheitskorrekturen und Plattformsicherheitsverbesserungen, die auch in Adobe Commerce 2.4.6-p5, 2.4.5-p7 und 2.4.4-p8 enthalten sind. Die neueste Diskussion über diese behobenen Probleme 🔗 Sie im Adobe-Sicherheitsbulletin.

Bisher sind keine bestätigten Angriffe im Zusammenhang mit diesen Problemen aufgetreten. Bestimmte Schwachstellen können jedoch 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 erforderlichen Schritte zum Schutz Ihres Administrators zu unternehmen, einschließlich, aber nicht beschränkt auf diese Schritte:

  • IP-Zulassungsauflistung
  • Zwei-Faktor-Authentifizierung
  • Verwendung eines VPN
  • Verwendung eines eindeutigen Speicherorts anstelle von /admin
  • Gute Passworthygiene

Zusätzliche Sicherheitsverbesserungen

Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.

  • Änderungen am Verhalten nicht generierter Cache-Schlüssel:

    • Nicht generierte Cache-Schlüssel für -Blöcke enthalten jetzt Präfixe, die sich von Präfixen für automatisch generierte Schlüssel unterscheiden. (Nicht generierte Cache-Schlüssel sind Schlüssel, die über die Vorlagenanweisungssyntax oder die setCacheKey- oder setData festgelegt werden.)
    • Nicht generierte Cache-Schlüssel für -Blöcke dürfen jetzt nur noch Buchstaben, Ziffern, Bindestriche (-) und Unterstriche (_) enthalten.
  • Beschränkungen für die Anzahl der automatisch generierten Couponcodes. Commerce begrenzt jetzt die Anzahl der Gutscheincodes, die automatisch generiert werden. Der standardmäßige Maximalwert ist 250.000. Händler können die neue Code Quantity Limit-Konfigurationsoption (Stores > Settings:Configuration > Customers > Promotions) verwenden, um zu verhindern, dass das System mit vielen Coupons überfordert wird.

  • Optimierung des standardmäßigen URL-Generierungsprozesses für Admin. Die Generierung der standardmäßigen Admin-URL wurde für eine erhöhte Zufälligkeit optimiert, wodurch die Vorhersagbarkeit generierter URLs verringert wird.

  • Unterstützung für Subresource Integrity (SRI) wurde hinzugefügt um die PCI 4.0-Anforderungen für die Überprüfung der Skriptintegrität auf Zahlungsseiten zu erfüllen. Die Unterstützung von Subresource Integrity (SRI) bietet Integritäts-Hashes für alle JavaScript-Assets im lokalen Dateisystem. Die standardmäßige SRI-Funktion wird nur auf den Zahlungsseiten für die Bereiche Admin und Storefront implementiert. Händler können die Standardkonfiguration jedoch auf andere Seiten erweitern. Siehe Subresource-Integrität im Commerce PHP-Entwicklerhandbuch.

  • Änderungen an der Content Security Policy (CSP) - Konfigurationsaktualisierungen und -verbesserungen an den Adobe Commerce Content Security Policies (CSPs) zur Erfüllung der PCI 4.0-Anforderungen. Weitere Informationen finden Sie unter Inhaltssicherheitsrichtlinien im Commerce PHP-

    • Die standardmäßige CSP-Konfiguration für Zahlungsseiten für Commerce Admin- und Storefront-Bereiche ist jetzt restrict. Für alle anderen Seiten ist die Standardkonfiguration report-only. In Versionen vor 2.4.7 wurde CSP für alle Seiten im report-only konfiguriert.

    • Es wurde ein Nonce-Provider hinzugefügt, der die Ausführung von Inline-Skripten in einer CSP ermöglicht. Der Nonce-Anbieter erleichtert die Erstellung eindeutiger Nonce-Zeichenfolgen für jede Anfrage. Die Zeichenfolgen werden dann an den CSP-Header angehängt.

    • Es wurden Optionen zum Konfigurieren von benutzerdefinierten URIs hinzugefügt, um CSP-Verletzungen für die Seite „Auftrag erstellen“ in der Admin- und die Checkout-Seite im Storefront zu melden. Sie können die Konfiguration über den Administrator oder durch Hinzufügen des URI zur config.xml-Datei hinzufügen.

      note note
      NOTE
      Wenn Sie die CSP-Konfiguration auf den restrict-Modus aktualisieren, werden möglicherweise vorhandene Inline-Skripte auf Zahlungsseiten in der Admin- und Storefront blockiert, was beim Laden einer Seite den folgenden Browser-Fehler verursacht: Refused to execute inline script because it violates the following Content Security Policy directive: "script-src. Beheben Sie diese Fehler, indem Sie die Konfiguration der Zulassungsliste aktualisieren, um die erforderlichen Skripte zuzulassen. Siehe Fehlerbehebung im Commerce PHP-.
  • Eine neue Konfigurationseinstellung für den vollständigen Seiten-Cache kann dazu beitragen, die mit dem HTTP-{BASE-URL}/page_cache/block/esi-Endpunkt verbundenen Risiken zu mindern. Dieser Endpunkt unterstützt uneingeschränkte, dynamisch geladene Inhaltsfragmente aus Commerce-Layout-Handles und -Blockstrukturen. Die neue Handles params size-Konfigurationseinstellung legt den Wert des handles-Parameters dieses Endpunkts fest, der die maximal zulässige Anzahl von Handles pro API bestimmt. Der Standardwert dieser Eigenschaft ist 100. Händler können diesen Wert unter Admin ändern (Stores > Settings:Configuration > System > Full Page Cache > Handles params size). Siehe Konfigurieren des Commerce-Programms für die Verwendung von Varnish.

  • Native Ratenbegrenzung für Zahlungsinformationen, die über REST- und GraphQL-APIs übermittelt. Händler können jetzt Ratenbegrenzung) fürZahlungsinformationen konfigurieren, die mit REST und GraphQL übermittelt werden. Diese zusätzliche Schutzschicht unterstützt die Prävention von Kartenangriffen und verringert möglicherweise das Volumen von Kartenangriffen, die viele Kreditkartennummern gleichzeitig testen. Dies ist eine Änderung des Standardverhaltens eines vorhandenen REST-Endpunkts. Siehe Ratenbegrenzung.

  • Das Standardverhalten der GraphQL-Abfrage isEmailAvailable und des REST-Endpunkts (V1/customers/isEmailAvailable) hat sich geändert. Standardmäßig geben die APIs jetzt immer true zurück. Händler können das ursprüngliche Verhalten aktivieren, indem sie die Option Guest Checkout-Anmeldung aktivieren in der Admin auf yes setzen. Dadurch können jedoch Kundeninformationen für nicht authentifizierte Benutzer verfügbar gemacht werden.

Plattformverbesserungen

Plattform-Upgrades für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.

Adobe Commerce 2.4.7 umfasst die folgenden Plattformaktualisierungen:

  • PHP 8.3-Kompatibilität. Diese Version führt zur Unterstützung von PHP 8.3. Commerce unterstützt jetzt sowohl PHP 8.3 als auch PHP 8.2. PHP 8.2 wird bis zum Ende des Service (EOS) im Dezember 2025 unterstützt. Nach Dezember 2025 sollten alle Händler, die Bereitstellungen mit Version 2.4.7 ausführen, auf PHP 8.3 migrieren.

Adobe Commerce 2.4.7 ist weiterhin nur zu Upgrade-Zwecken mit PHP 8.1 kompatibel. PHP 8.1 wird nicht unterstützt und nicht empfohlen. Adobe Commerce 2.4.7-Kerncode, alle gebündelten Erweiterungen sowie alle Adobe-eigenen Erweiterungen und SaaS-Services sind mit PHP 8.3 kompatibel.

  • Unterstützung für RabbitMQ 3.13. Diese Version ist mit der neuesten Version von RabbitMQ 3.13 kompatibel. Die Kompatibilität mit RabbitMQ 3.11 und 3.12 bleibt bestehen, die bis August 2024 bzw. Dezember 2024 unterstützt werden, aber Adobe empfiehlt die Verwendung von Adobe Commerce 2.4.7 nur mit RabbitMQ 3.13.

  • Composer 2.7.x. Die Kompatibilität mit Composer 2.2.x bleibt bestehen.

  • Unterstützung des Lackcache 7.4. Diese Version ist kompatibel mit der neuesten Version von Varnish Cache 7.4. Die Kompatibilität mit den Versionen 6.0.x und 7.2.x bleibt bestehen, wir haben jedoch empfohlen, Adobe Commerce 2.4.7 nur mit Varnish Cache Version 7.4 oder Version 6.0 LTS zu verwenden.

  • Elasticsearch 8.11-

  • OpenSearch 2.12 und OpenSearch 1.3 unterstützen

  • Redis 7.2

  • Die extjs-Bibliothek wurde durch die neueste Version von jsTree ersetzt.

  • jquery/fileUpload Bibliothek wurde entfernt.

Alle JavaScript-Bibliotheken und NPM-Abhängigkeiten im Adobe Commerce-Kern-Code wurden auf die neuesten verfügbaren Versionen aktualisiert. Alle Laminas-Bibliotheksabhängigkeiten wurden auf die neueste Version aktualisiert, die mit PHP 8.3 kompatibel ist.

Zusätzliche Upgrades

  • Mehrere Gutscheine pro Bestellung. Händler können jetzt die maximale Anzahl von Coupons konfigurieren die pro Bestellung mit der neuen Maximum number of coupons per order Konfigurationsoption angewendet werden können. Dieser Wert ist standardmäßig auf 1 festgelegt. Sie können jetzt REST oder GraphQL verwenden, um mehrere Coupons auf einen Warenkorb anzuwenden.

  • Das Commerce UPS XML API-Gateway wurde zur neuen Commerce UPS REST API migriert, um Aktualisierungen zu unterstützen, die UPS an seinem API-Sicherheitsmodell vornimmt. (UPS implementiert ein OAuth 2.0-Sicherheitsmodell (Bearer-Token) für alle APIs.) Alle vorherigen Commerce UPS XML-APIs wurden aus der Code-Basis von Adobe Commerce 2.4.7 entfernt.

  • Adobe Commerce Integration mit FedEx wurde von den alten FedEx WSDL Web Services zu den neuesten FedEx RESTful APIs migriert. FedEx Web Services Tracking, Address Validation, and Validate Postal Codes WSDLS werden im Mai 2024 eingestellt.

  • Hinzugefügte Unterstützung für die neue USPS Ground Advantage-Versandmethode. Dies ist eine vorkonfigurierte Integration mit der neuen Versandmethode von USPS, USPS Ground Advantage, die im Juli 2023 veröffentlicht wurde. Diese neue Integration kann verwendet werden, um Versandraten abzurufen und Sendungen und Rücksendungen über den USPS-Versandservice zu planen. Die USPS Ground Advantage-Versandmethode ersetzt diese Versandmethoden, die eingestellt wurden, als die USPS Ground Advantage-Versandmethode veröffentlicht wurde:

    • USPS-Verkaufsgelände
    • Erstklassiger Paketdienst
    • Parzelle wählen
  • Die Versandmodule von Temando wurden aus der Code-Basis von Commerce entfernt. Diese Funktion ist seit Adobe Commerce 2.4.4 veraltet.

Verbesserungen der Leistung und Skalierbarkeit

Commerce 2.4.7 umfasst die folgenden Verbesserungen der Leistung und Skalierbarkeit von Commerce:

  • Händler in Unternehmen können jetzt bis zu Million aktive, Coupon-basierte in Adobe Commerce konfigurieren, ohne dass dies zu signifikanten Leistungseinbußen bei Warenkorb- oder Checkout-Vorgängen führt.

  • Verbesserte Indexerverwaltung. Der neue indexer:set-status-Befehl unterstützt die dynamische Verwaltung des Indexstatus. Admin-Benutzer können diesen Befehl verwenden, um den Indexerstatus in "suspended", "invalid" oder "valid" zu ändern. Diese Funktion ist besonders nützlich für die Verwaltung der Systemleistung bei umfangreichen Massenvorgängen wie Produktimporten oder -aktualisierungen, da sie die Kontrolle darüber ermöglicht, wann Indexer automatisch durch die Cron-Aufträge des Systems ausgelöst werden. Siehe Verwalten der Indexer.

  • Produktlistenseite für komplexe Produkte mit vielen Optionen. Die Ladezeit wurde für Produktlistenseiten verbessert, die komplexe Produkte mit über 100 Optionen enthalten. Die Leistung von GraphQL-Anfragen zum Auflisten von Produkten nach Kategorie wurde ebenfalls verbessert.

  • Das JSON-Format wird jetzt für die REST- (Import-API unterstützt. Händler können jetzt bis zu 100.000 Datensätze pro Minute im JSON-Format in Adobe Commerce importieren.

  • Leistungsverbesserungen bei Verkaufsregeln. Verbesserte Leistung von Unternehmensbereitstellungen mit vielen (ca. 100.000) aktiven Vertriebsregeln. Enterprise-Bereitstellungen, die Promotions stark implementieren, stellen oft viele aktive Warenkorbregeln bereit. Bei diesen Arten von Unternehmensbereitstellungen, in denen Commerce 2.4.7 ausgeführt wird, tritt keine Leistungsbeeinträchtigung im Zusammenhang mit der Anzahl der konfigurierten Warenkorbpreisregeln während des Checkout-Vorgangs auf.

  • Schnellere Speichervorgänge von Konfigurationen auf Store-Ebene für Bereitstellungen mit vielen Stores. Das Speichern von Konfigurationseinstellungen in Bereitstellungen mit mehr als 500 Stores kann zeitaufwendig sein. Das neue Async Config-Modul ermöglicht asynchrone Konfigurationsspeichervorgänge durch Ausführen eines Cron-Vorgangs, der einen Verbraucher verwendet, um den Speichervorgang in einer Nachrichtenwarteschlange zu verarbeiten. AsyncConfig ist standardmäßig deaktiviert.

  • Schnellere Generierung des Konfigurations-Caches für große Konfigurationen. Der bin/magento cache:clean config Befehl erwärmt jetzt den Konfigurations-Cache vorab, wenn der Konfigurations-Cache aktiviert ist. Dadurch wird die Ausfallzeit reduziert, die zum Generieren des Konfigurations-Caches für große Konfigurationen erforderlich ist. Speichervorgänge mit Konfigurationen bereinigen den config_scopes-Cache nicht mehr, bevor Daten in den Cache geschrieben werden. Dadurch wird auch die Zeit reduziert, die andere Anforderungen während des Schreibens der Konfigurationsdaten gesperrt werden.

GraphQL-Anwendungsserver

GraphQL Application Server ermöglicht es Adobe Commerce, den Status zwischen Commerce GraphQL-API-Anfragen beizubehalten, und macht das Bootstrapping überflüssig, was zu höherem Durchsatz, geringerer Latenz und effizienter Ressourcennutzung für alle GraphQL-APIs führt. Durch die Aufteilung des Anwendungsstatus auf die Prozesse werden GraphQL-API-Anfragen erheblich effizienter und GraphQL-API-Antworten sind im Durchschnitt 30 % schneller.

Der GraphQL-Anwendungs-Server ist nur für Adobe Commerce verfügbar. Es steht nicht zur Magento Open Source zur Verfügung. Sie müssen ein Adobe Commerce-Support-Ticket, um GraphQL Application Server in Pro-Projekten zu aktivieren.

NOTE
Der GraphQL-Anwendungs-Server ist derzeit nicht mit Amazon Simple Storage Service (AWS S3) kompatibel. Kundinnen und Kunden von Adobe Commerce auf Cloud-Infrastrukturen, die derzeit AWS S3 für Remote-Speicher verwenden, können den GraphQL-Anwendungsserver erst verwenden, wenn Adobe Ende 2024 einen Hotfix veröffentlicht.

Adobe Commerce-Erweiterungs-Metapaket

Mit dieser Version wird das Adobe Commerce Extension-Metapaket v2.0.0 eingeführt, das ausgewählte Adobe Commerce-Erweiterungen automatisch mit dieser Kernversion bündelt. Die Versionen dieser Erweiterungen, die in diesem Metapaket enthalten sind, werden bei der Ausführung von composer update installiert, was den Prozess der Aktualisierung dieser Erweiterungen beim Upgrade auf die neueste Kernversion vereinfacht. Diese Erweiterungen behalten unabhängige Veröffentlichungszeitpläne bei.

Das Adobe Commerce-Erweiterungs-Metapaket für Adobe Commerce 2.4.7 enthält die folgenden Erweiterungen:

Zukünftige Versionen dieses Erweiterungs-Metapakets können zusätzliche Erweiterungen enthalten.

Adobe Commerce-Webhooks

Commerce Webhooks (v1.2.0 ) ermöglichen es Entwickelnden, eine synchrone Logik zu konfigurieren, um bei Triggern eines Adobe Commerce-Ereignisses Aufrufe an externe Systeme auszuführen. Synchrone Aufrufe sind erforderlich, wenn Commerce einen Wert wie Bestellsumme, Steuer oder Zahlung mithilfe eines Drittanbieter-Endpunkts sofort berechnen oder validieren und das Ergebnis anschließend wieder in Adobe Commerce schreiben muss.

Commerce Webhooks ist jetzt standardmäßig installiert. Siehe Übersicht über Adobe Commerce-Webhooks

Adobe Stock

Das Adobe Stock-Paket (adobe-stock-integration) ist jetzt im Commerce Extensions-Metapaket (extensions-metapackage) enthalten, um häufigere Aktualisierungen zu unterstützen.

B2B

NOTE
Die Version 2.4.7 ist mit B2B 1.4.2 kompatibel. Adobe empfiehlt jedoch, dass Kunden vor dem Upgrade auf die bevorstehende B2B-Version 1.5.0 GA warten, was die Unterstützung für PHP 8.3 beinhaltet. Siehe B2B-.

Braintree

  • Vaulted PayPalund Pay Later Änderungen - Angemeldete Kunden, die zuvor ihr PayPal-Konto gepachtet/gespeichert haben, haben die Möglichkeit, mit Folgendem zu bezahlen:

    • Pay Now (ohne sich bei ihrem PayPal-Konto anmelden zu müssen, kann der Benutzer mit seiner Standardkarte bezahlen)
    • Mit einer anderen Finanzierungsquelle bezahlen
    • Mit einem anderen Konto bezahlen
    • PayPal Pay Later oder PayPal Credit
  • 3DS-Unterstützung fürGoogle Pay - Enthaltene Unterstützung der 3DS-Verifizierung für die Google Pay nicht-Token-Karten. Weitere Informationen finden Sie in der Dokumentation 🔗 Braintree.

  • Vault Apple Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Apple Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault Google Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Google Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault Venmo Payments - Angemeldeten Kunden erlauben, ihre Venmo Konten in ihrem Commerce-Speicherkonto zu tresoren/zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Vault ACH Payments - Erlauben Sie angemeldeten Kunden, ihre ACH-Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Express PaymentSchaltflächen oben am Checkout - Um ein schnelleres Checkout-Erlebnis zu fördern, haben wir Express Payment Optionen zu Beginn des Checkouts eingeführt. Kunden können jetzt mit PayPal, PayPal Pay Later, Apple Pay und Google Pay Express bezahlen.

  • BraintreeVersionshinweise und Support-Links innerhalb der Admin-Konfiguration - Händler können jetzt direkt von Commerce Admin aus auf Braintree-Support und Versionshinweise online verlinken.

  • GraphQL-Unterstützung für alle Braintree Zahlungsmethoden mit Ausnahme vonVenmo—Weitere Konfigurationen werden in der GraphQL-API verfügbar gemacht. Dies ist besonders für Headless-Anwendungen nützlich.

  • VaultingZahlungen im Kontobereich - Angemeldete Kunden können jetzt neue Kredit-/Debitkarten tresor/) und PayPal Konten im Kundenkontobereich erstellen. Zuvor konnten Kunden ihre Zahlungen nur für eine spätere Verwendung beim Abschließen einer Transaktion an der Kasse tresoren/speichern. Jetzt können sie neue Kredit-/Debitkarten und PayPal-Konten tresoren, ohne eine neue Transaktion erstellen zu müssen.

  • Reibungslose Transaktionen - Reibungslose Transaktionen beschleunigen den Zahlungsprozess, indem sie die Anzahl der Klicks/Schritte von Kunden reduzieren, um eine Online-Kreditkartentransaktion abzuschließen. Zuvor (als 3DS aktiviert wurde) wurde jeder Kunde mit einer 3DS-Herausforderung konfrontiert. Mit der neuen Frictionless-Transaktionsfunktion werden Kunden nur dann für 3DS herausgefordert, wenn die Bank sie anfordert. Dies reduziert Warenkorbabbrüche, erhöht Konversionsraten und führt zu mehr Umsatz.

  • Kontroll-Webhooks - Wenn ein Kunde eine Transaktion auf Braintree anficht, wird der Streitstatus jetzt an Commerce weitergegeben. Er ist im Raster Sales > Order durchsuchbar und an jede Bestellung angehängt.

Integration von Commerce mit Adobe IMS

Das Adobe IMS-Integrationspaket (adobe-commerce/adobe-ims-metapackage) ist jetzt im Commerce Extensions-Metapaket (extensions-metapackage) enthalten, um häufigere Aktualisierungen zu unterstützen.

GraphQL

Commerce 2.4.7 umfasst erweiterte GraphQL-Caching-Funktionen, Unterstützung des GraphQL-Schemas für benutzerdefinierte Attribute, Unterstützung für Headless-Auftragsstornierungen und verbesserte Resolver-Caching.

  • Flexibleres Warenkorbmanagement. Die clearCart-Mutation löscht nun in einer einzigen Aktion den Inhalt eines angegebenen Warenkorbs. Sie ersetzt die clearCustomerCart Mutation, die nicht mehr unterstützt wird.

  • Verbesserungen beim Erstellen von Warenkorbmutationen. Die createGuestCart-Mutation wurde hinzugefügt, um die veraltete createEmptyCart-Mutation zu ersetzen. Wenn Sie zuvor createEmptyCart verwendet haben, konnten Sie nicht feststellen, ob der Warenkorb für einen Gast oder einen angemeldeten Kunden war.

  • Bestellartikel enthalten jetzt Produktbilder. OrderItemInterface stellt Produktbilder bereit, mit denen Bilder bestellten Produkten zugeordnet und effizienter geladen werden können. GitHub-32369-

  • Erweiterte Unterstützung für das Resolver-Caching. Die folgenden GraphQL-Abfrageauflöser können jetzt im GraphQL-Resolver-Ergebniscache zwischengespeichert werden, was die Leistung verbessert, wenn Abfragen mit POST-Anfragen gesendet werden:

    • Magento\CustomerGraphQl\Model\Resolver\Customer::resolve
    • Magento\CustomerGraphQl\Model\Resolver\CustomerAddress::resolve
    • Magento\CustomerGraphQl\Model\Resolver\IsSubscribed::resolve
    • Magento\CatalogGraphQl\Model\Resolver\Product\MediaGallery::resolve
  • Unterstützung für Auftragsstornierung. Die cancelOrder-Mutation ermöglicht es einem Kunden, eine Bestellung zu stornieren, indem er ihre Kennung und einen Stornierungsgrund übergibt.

  • Verbesserte Unterstützung für benutzerdefinierte Attribute. Die Unterstützung benutzerdefinierter GraphQL-Attribute wurde verbessert, indem API-Daten zur Unterstützung aller Attributtypen erweitert wurden. Das GraphQL-EAV-Attributschema unterstützt jetzt die Erweiterung von Kundenattributen und Kundenadressobjekten in der Admin und das Abrufen dieser Attribute mithilfe von GraphQL. Spezifische Bereiche, in denen Verbesserungen vorgenommen werden müssen, sind:

    • Erweiterte/hinzugefügte Unterstützung benutzerdefinierter Attribute für bestimmte Bereiche wie Kunden- und Kundenadresse
    • Zwischenspeicherung für benutzerdefinierte Attribute hinzugefügt
    • Verbesserte Unterstützung vorhandener benutzerdefinierter Attribute für -Produkte
  • Verbesserte GraphQL-Caching-Funktionen verbessern die Seitenladegeschwindigkeit. Diesen Abfragen wurde eine Caching-Funktion hinzugefügt, die die Seitenladezeit für die meisten PWA-Seiten beschleunigt:

  • Verbesserte GraphQL-Parser-Leistung. Die Leistung des GraphQL-Parsers wurde verbessert, indem die Anzahl der Aufrufe der Parser-Methode pro Anfrage reduziert wurde. Er heißt jetzt einmal. Zuvor wurde der Parser mindestens dreimal aufgerufen.

Neue Felder für vorhandene Mutationen

  • Das Feld quickorder_active wurde den Abfragen storeConfig und availableStores hinzugefügt. Dieses Feld gibt an, ob die Schnellbestellungsfunktion aktiviert ist.

  • Die folgenden Felder wurden den setBillingAddressOnCart und setShippingAddressesOnCart Mutationen hinzugefügt:

    • fax
    • middlename
    • prefix
    • suffix

Neue Abfragen und Mutationen

Veraltete Abfragen und Mutationen

Inventory management

Inventory management (v1.2.7) bietet Tools zum Verwalten des Produktbestands. Diese von der Community entwickelte Funktion ist im Paket mit Adobe Commerce und Magento Open Source Core Code enthalten.

Zahlungen

  • GraphQL-Unterstützung wurde für Kernoperationen für alle Zahlungsmethoden mit Ausnahme von Venmo hinzugefügt. Neue GraphQL-Endpunkte für Zahlungsdienste werden unter Checkout beschrieben

  • Das Vaulting von Kreditkarten wurde für alle Zahlungsmethoden mit Ausnahme von Venmo verbessert. Käufer können jetzt ihre ACH-Zahlungen Vault anlegen oder speichern und sie auf ihrer Kontoseite anzeigen oder löschen. Händler können ACH-Tresorzahlungen über den Administrator aktivieren und deaktivieren.

  • Der Checkout-Workflow enthält jetzt einen Express-Zahlungsabschnitt, der die Schaltflächen PayPal, Google Pay und Apple Pay Express bereitstellt.

Zahlungsoptionen führt unterstützte Zahlungsmethoden ein.

PWA Studio

PWA Studio v14.0 ist mit Adobe Commerce 2.4.7 kompatibel. Es enthält mehrere Verbesserungen zur Verbesserung der Barrierefreiheit. Informationen zu Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Versionskompatibilität finden Sie eine Liste der PWA Studio-Versionen und der entsprechenden kompatiblen Adobe Commerce-Kernversionen.

Web-API-Framework

Verwendung mehrerer Gutscheine pro Warenkorb

Neue REST-Endpunkte unterstützen das Anzeigen, Hinzufügen und Löschen mehrerer Coupons, die mit einem Warenkorb verknüpft sind.

NOTE
Erstmals enthalten mehrere REST-Endpunktrouten die Zeichenfolge V2 anstelle von V1. Beispiel: GET /rest/default/V2/carts/{cartId}/coupons. Für Commerce-Händler sollen diese Endpunkte die V1 Versionen der Endpunkte ersetzen. Diese Endpunkte sind nur in Adobe Commerce verfügbar.

Gibt alle Gutscheincodes zurück, die mit einem Warenkorb verknüpft sind:

GET /rest/{store_code}/V2/carts/{cartId}/coupons
GET /rest/{store_code}/V2/carts/mine/coupons

Couponcode an Warenkorb anhängen:

POST /rest/{store_code}/V2/carts/{cartId}/coupons/{couponCode}
POST /rest/{store_code}/V2/carts/mine/coupons/{couponCode}

Ersetzen von Gutscheincodes in einem Warenkorb:

PUT /rest/{store_code}/V2/carts/{cartId}/coupons
PUT /rest/{store_code}/V2/carts/mine/coupons

Entfernen von Gutscheincodes aus einem Warenkorb:

POST /rest/{store_code}/V2/carts/{cartId}/coupons/deleteByCodes
POST /rest/{store_code}/V2/carts/mine/coupons/deleteByCodes

Zusätzliche Endpunkte
Diese Version führt zwei neue REST-Endpunkte ein, die eine Problemumgehung für eine Einschränkung bei den REST-API-GET und POST V1/products/attributes-Endpunkten bieten. Diese Endpunkte geben denselben Wert für das is_filterable-Attribut sowohl für die Filterable(with results)- als auch für die Filterable(no results)-Option der Use in Layered Navigation-Option zurück. (Die is_filterable-Attributeigenschaft ist vom Typ Boolean, was das Festlegen dieser Eigenschaft auf Filterable(no results) nicht zulässt.)

Als Problemumgehung wurden zwei neue REST-Endpunkte implementiert:

  • PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}. Pfadparameter: attributeCode (String) und isFilterable (int Werte sind: 0 ist Nein; 1 ist Filterable (with results); 2 ist Filterable (no results)).
  • GET /V1/products/attributes/{attributeCode}/is-filterable. Pfadparameter: attributeCode (String).

Behobene Probleme

Wir haben Hunderte von Problemen im Adobe Commerce 2.4.7-Kerncode behoben. Nachfolgend werden einige der in dieser Version enthaltenen behobenen Probleme beschrieben. Fehlerbehebungen in früheren Commerce-Versionen 2.4.7-Beta werden ebenfalls beschrieben.

Installation, Upgrade, Bereitstellung

  • Unnötige Cache-Manipulationen wurden aus dem Einrichtungsprozess entfernt. Zuvor schrieb Commerce seine Konfiguration unnötigerweise auf die Festplatte, wenn bin/magento setup:db-data:upgrade oder bin/magento setup:upgrade ausgeführt wurde, was bei einigen Modulen während des Setups zu Problemen führte. GitHub-38124
  • Bereitstellungsprobleme aufgrund von unzureichendem Arbeitsspeicher und großen Tabellen wurden behoben. Der bin/magento setup:upgrade-Befehl schlägt nicht mehr aufgrund von Fehlern mit Speicherüberschreitung fehl, die im Zusammenhang mit großen MySQL-Tabellen stehen.
  • bin/magento setup:install wird jetzt erfolgreich abgeschlossen, nachdem app/etc/config.php gelöscht wurde. Zuvor wurde die fehlende Datei während der Installation nicht neu generiert, und Commerce gab einen Fehler aus. GitHub-37805
  • bin/magento setup:upgrade wurde so umgestaltet, dass es erfolgreich ausgeführt wird, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörige mview-Indexer installiert. GitHub-37304
  • Die Datenbankwiederherstellung schlägt aufgrund eines Trennzeichen-Fehlers nicht mehr fehl. Zuvor gab Commerce diesen Fehler bei der Ausführung von bin/magento setup:rollback --db aus: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • Der bin/magento setup:upgrade-Befehl schlägt mit diesem mit der Speicherbegrenzung in MySQL zusammenhängenden Fehler nicht mehr fehl: PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes). Die Migration von Attributen mit mehreren Auswahlmöglichkeiten wurde optimiert, um während der setup:upgrade weniger Speicher zu verbrauchen.
  • Das Generieren eines Datenbank-Backups funktioniert jetzt sowohl von der Admin- als auch von der Befehlszeile erwartungsgemäß. Zuvor gab Adobe Commerce diesen Fehler aus: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;.
  • Wenn Sie setup:config:set ausführen, ohne den --lock-db-prefix-Parameter anzugeben, wird der aktuelle Wert nicht mehr aus der env.php gelöscht.
  • Die Lackkonfiguration wurde aktualisiert, um Gastbenutzer am Zugriff auf zwischengespeicherte Inhalte zu hindern, die sich auf andere Kundengruppen beziehen.
  • Käufer können jetzt eine Bestellung in einer -Bereitstellung aufgeben, die eine aufgeteilte Datenbank implementiert, wenn Checkout Async aktiviert ist. Zuvor gab Adobe Commerce diesen Fehler aus: An error occurred on the server. Please try to place the order again.
  • bin/magento setup:upgrade wird jetzt erfolgreich abgeschlossen, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörige mview-Indexer installiert.
  • bin/magento setup:upgrade zeigt jetzt eine informativere Fehlermeldung an, wenn ein Warteschlangenthema keinen Themennamen enthält. GitHub-34246
  • bin/magento setup:upgrade zeigt jetzt eine informativere Fehlermeldung an, wenn zusammengeführte XML-Dateien ungültig sind. Die Fehlermeldung enthält jetzt den Dateinamen.

Admin-Benutzeroberfläche

  • Diagramme sind jetzt standardmäßig erfolgreich im Dashboard deaktiviert. GitHub-38430
  • Das Menü Admin Sales zeigt jetzt die Untermenüs korrekt an. Zuvor funktionierte der Spaltenumbruch nicht ordnungsgemäß und einige Untermenüs wurden nicht angezeigt. GitHub-37812
  • Select Dropdown-Menüoptionen sind jetzt auf Admin Content > Pages sichtbar, wenn mehrere Seiten im Raster ausgewählt sind. GitHub-35386
  • Der Pfad wurde auf den Standardwert system/dashboard/enable_charts in den Konfigurationseinstellungen korrigiert. Diagramme werden nun wie erwartet in der Admin-Benutzeroberfläche angezeigt. GitHub-37668
  • Anzeigeproblem mit Admin-Kundenrastern wurde behoben. Zuvor waren Rasterspalten nicht vollständig in der angezeigten Seite enthalten.
  • Hover-Farben werden jetzt erwartungsgemäß auf die Zeilen der statischen Admin-Raster angewendet. GitHub-35358
  • Der Checkout-Workflow zeigt keine Warnung mehr an, wenn ein Käufer eine Postleitzahl für Griechenland eingibt, die keine Leerzeichen enthält. GitHub-36676
  • Der Link Admin-It's time to change your password wird jetzt erwartungsgemäß zur Seite „Administratorkennwort ändern“ weitergeleitet. GitHub-37902
  • Untermenütitel zeigen jetzt alle gleichrangigen Elemente an, unabhängig von der Zugriffsebene, die dem Benutzer zugewiesen ist. Zuvor waren diese Informationen für Admin-Benutzer mit eingeschränktem Zugriff ausgeblendet, selbst wenn für das Untermenü mehrere gleichrangige Gruppen vorhanden waren.
  • Seitentitel-Suffixe sind jetzt sowohl im title-Tag als auch im meta title-Tag für Produktseiten enthalten. GitHub-37680
  • Die Bedingung für den Produktbestandsstatus wird jetzt korrekt auf die Regeln für zugehörige Produkte angewendet.
  • Die Login as Customer-Schaltfläche wird nun auf Mobilgeräten korrekt angezeigt.
  • Adobe Commerce zeigt die Schaltfläche Admin Add new customer group nicht mehr an, wenn der angemeldete Admin-Benutzer nicht über die Berechtigung zum Hinzufügen einer neuen Kundengruppe verfügt.
  • Ein Admin-Benutzer mit eingeschränkten Berechtigungen kann jetzt ein untergeordnetes Produkt speichern, dessen übergeordnetes Produkt einem anderen Bereich zugewiesen ist. Zuvor hat Commerce den Cache für ein übergeordnetes Produkt, das nicht dem Umfang zugewiesen wurde, in dem das untergeordnete Produkt geändert wurde, ungültig gemacht.
  • Admin-Benutzer können jetzt erfolgreich zwischen Admin-Filteransichten wechseln, ohne dass die Ansichtsdaten beschädigt oder verloren gehen. GitHub-37529
  • Das archivierte Auftragsraster wird nun erwartungsgemäß asynchron mit neuen Auftragsstatus aktualisiert. Ein ereignisbasierter Ansatz zur Aktualisierung des Bestellstatus im Archivraster führt zu einem korrekten Bestellstatus, einschließlich Rückerstattungen nach der Gutschrift.
  • Das Dropdown-Menü für Admin-Rasteraktionen kann jetzt den Mauszeiger wie erwartet über einen ausgewählten Link für Content > Pages (und freigegebene Kataloge im B2B-Modul) bewegen. Zuvor war dieses Menü größtenteils ausgeblendet, und Admin-Benutzer mussten scrollen, um Optionen anzuzeigen. GitHub-36710

Analytics

  • Die meta itemprop="image" und meta itemprop="description" Eigenschaften der Produktdetailseite sind jetzt für das Hauptproduktbild verfügbar. GitHub-37497
  • Der Berichtabschnitt des Rasters Produkte in Warenkörben zeigt jetzt den richtigen Produktpreis an, wenn Catalog Price Scope auf Website gesetzt ist. Zuvor wurde der Produktpreis als Null angezeigt, wenn das Produkt einer anderen Website als der Standard-Website zugewiesen wurde.
  • Umsatzberichte werden nun wie erwartet im Portal Google Analytics (GA4) angezeigt. GitHub-37605
  • price- und quantity in der Google Tag Manager-Datenschicht werden jetzt wie erwartet als numerische Werte an die Google Analytics gesendet. Zuvor wurden diese Werte als Zeichenfolgen gesendet.
  • Fehler beim Verarbeiten von Kopfzeilendaten beim Senden von Bereitstellungsdaten an das New Relic-Modul wurden behoben.
  • Google Analytics-3-Tags werden jetzt erwartungsgemäß ausgelöst, wenn die Google Analytics-4-Tags deaktiviert sind.
  • Die Art und Weise, wie Bannerinhalte geladen werden, wurde überarbeitet, um übermäßige Datenbankabfragen zu entfernen, was zu verbesserten Warenkorb-Ladezeiten führte.

Produkte im Paket

  • Die Anzahl der Produkte in der Kategorie berücksichtigt jetzt bei aktivierter Display Out Of Stock* die Bundle-Produkte korrekt.
  • Die customerCart-Abfrage gibt jetzt wie erwartet alle angewendeten Rabatte auf Bundle-Produkte zurück. Zuvor wurden die gesamten Rabatte, die auf ein Produktpaket angewendet wurden, als Null zurückgegeben.
  • Produktdetailseiten zeigen jetzt den korrekten Preis für Bundle-Produkte an, für die ein Rabatt von 100 % angewendet wurde. Zuvor hat Commerce keinen 100%igen Rabatt auf die Bundle-Produktpreise angewendet.
  • Die Regeln zum Warenkorbpreis werden jetzt auf Produktpakete angewendet, anstatt auf jedes untergeordnete Produkt für Pakete mit dynamischem Preis.
  • Es wurde ein Fehler korrigiert, der auftritt, wenn Sie den POST V1/shipment-Endpunkt verwenden, um eine Sendung mit einem Produktpaket zu erstellen. Der Endpunkt fügt jetzt erwartungsgemäß Elemente hinzu und gibt nicht mehr diesen Fehler zurück: The shipment couldn't be saved.
  • Sie können jetzt ein geplantes Update eines Produktpakets speichern, das ein einfaches Produkt mit einer zeitlich unbegrenzten Aktualisierung enthält. Wenn der Snapshot des Bundles erstellt wird, werden die verknüpften Produkte jetzt nach ID, Entitäts-ID und auch nach SKU erfasst. Zuvor wurde die Originalversion des einfachen Produkts überprüft, wenn das geplante Update für das Bundle-Produkt anstatt der aktuellen Version des einfachen Produkts gespeichert wurde.
  • Sie können jetzt die GET V1/shipment/-API-Route verwenden, um eine Sendung mit einem Produktpaket zu erstellen, wenn für das Produkt der together Sendungstyp festgelegt ist. Paketprodukte werden jetzt auch auf Grundlage ihrer Eigenschaft „Sendungstyp“ validiert.
  • Käufer können jetzt die Menge eines Bundle-Produkts in ihrem Warenkorb bearbeiten. Zuvor verarbeitete Adobe Commerce keine Nullwerte für ItemId, wenn Produkte im Warenkorb der Storefront bearbeitet wurden, und zeigte einen Fehler an. GitHub-37696
  • Bundle-Produkte können jetzt mithilfe von SKUs mit einem Schrägstrich (/) erfolgreich zu einer Admin-Bestellung hinzugefügt werden. Zuvor konnten Admin-Benutzer diese Methode nicht verwenden, um Produkte zu einer Admin-Bestellung hinzuzufügen, und Commerce gab einen JavaScript-Fehler aus.
  • Admin-Benutzer können jetzt Dezimalstandardwerte für neu hinzugefügte Bundle-Optionen festlegen, wenn Qty Uses Decimal für das entsprechende einfache Produkt aktiviert ist. Zuvor konnten Dezimalwerte nur für gespeicherte Auswahlen festgelegt werden.
  • Optimierte Leistung zum Speichern von Bundle-Produkten mit einer großen Anzahl von Optionen
  • Paketprodukte werden jetzt erfolgreich importiert, ohne SKUs in den Produktoptionen zu duplizieren. Zuvor hat Adobe Commerce mehrere doppelte SKUs in den Produktoptionen erstellt, wenn Sie Bundle-Produkte mit doppelten Einträgen importiert haben.
  • Der Preis des Bundles wird jetzt korrekt berechnet, wenn eines der Produkte im Bundle nicht mehr vorrätig ist. Wenn ein Produkt, das Teil des Pakets war, nicht vorrätig war, wurde es aus der Preisberechnung entfernt.
  • Paketprodukte werden jetzt als nicht vorrätig angezeigt, wenn das letzte ihrer erforderlichen untergeordneten Produkte gekauft wird. Zuvor wurden Bundle-Produkte in der Storefront als vorrätig angezeigt, wenn ihre einfachen Produkte nicht vorrätig waren.
  • Leistungsprobleme beim Hinzufügen von Bundle-Produkten mit nicht erforderlichen Optionen zum Warenkorb mithilfe der addBundleProductsToCart-Mutation wurden behoben.
  • Die categoryList-Abfrage gibt jetzt alle Bundle-Optionen wie erwartet zurück, wenn die Show out-of-stock products-Konfigurationseinstellung aktiviert ist. Zuvor waren nicht vorrätige Optionen nicht in der Abfrageantwort enthalten.
  • Mit POST V1/products erstellte Bundle-Produkte sind jetzt erfolgreich, wenn der Katalogpreisbereich auf website festgelegt ist. Zuvor ist eine Verletzung der Integritätsbeschränkung aufgetreten. GitHub-35595

Cache

  • Kategorien sind jetzt für Käufer in Geschäften sichtbar, in denen der Cache auf Fastly CDN (Caching Application=Fastly CDN) festgelegt ist. Dies betraf sowohl Gastkäufer als auch registrierte Kunden.
  • Die Cache-Cookies nach der Anmeldung sind nun nach dem Browsen auf der Website identisch. Zuvor hat der Anmelde-Controller das falsche Cache-Cookie gesendet, und Seiten wurden möglicherweise mehrmals zwischengespeichert.
  • Antworten von GraphQL GET-Vorgängen auf CMS-Seiten, die CMS-Blöcke enthalten, werden jetzt wie erwartet im Fastly-Cache gelöscht. Nachfolgende Zeitplanaktualisierungen zeigen jetzt genaue, aktualisierte Inhalte für diese Seiten an.
  • Der Seiten-Cache wird jetzt für ein übergeordnetes Produkt erwartungsgemäß gelöscht, wenn eines seiner untergeordneten Produkte vom Administrator gespeichert wurde. Es wurde eine Plug-in-Prüfung eingeführt, um die Cache-Invalidierung für konfigurierbare Varianten zu erreichen, ähnlich wie bei anderen Produkttypen, unabhängig vom Indexerstatus (geplant oder in Echtzeit). Zuvor wurden die Preise in der Storefront nicht ordnungsgemäß aktualisiert, nachdem eine konfigurierbare Variante von der Administratorin bzw. vom Administrator aktualisiert wurde.
  • Es wurde ein Zwischenspeicherungsmechanismus für AWS-Anmeldeinformationen hinzugefügt. Ein Anmeldedaten-Anbieter verwendet jetzt den Commerce-Cache, um die von AWS für die EC2-Konfiguration abgerufenen Anmeldedaten zwischenzuspeichern.
  • Das Plug-in, dessen Zweck es ist, das konfigurierbare Cache-Tag hinzuzufügen, wenn ein einfaches Produkt, das mit einem konfigurierbaren Produkt verknüpft ist, gespeichert wird, funktioniert jetzt wie erwartet. Alle relevanten konfigurierbaren Cache-Tags werden erwartungsgemäß entfernt, wenn ein einfaches Produkt von POST V1/products aktualisiert wird. Zuvor wurden nicht alle Preise in der Storefront aktualisiert, und Caches mussten manuell geleert werden. GitHub-36726

Warenkorb und Checkout

  • Commerce optimiert jetzt die Leistung, indem benutzerspezifische Anführungsdaten nicht geladen werden, wenn zwischenspeicherbare Seiten mit vollständigen Seiten wie Produktdetailseiten (Product Details Pages, PDP) und CMS-Seiten generiert werden, wenn der persistente Warenkorb aktiviert ist. Zuvor hatte das System bei der Erstellung dieser Seiten unnötigerweise benutzerspezifische Sitzungs- und Anführungsdaten geladen, was sich auf die Leistung auswirkte.
  • Benutzerdefinierte Adressattribute werden jetzt erwartungsgemäß in der Datenbank gespeichert. Zuvor wurde Attributwerten, die in der Datenbank gespeichert wurden, Attributcode vorangestellt.
  • Die Erstellung von Warenkorbregeln für Filtertext für Produktattribute wurde verbessert. Einzelne Produkte werden nicht mehr mehrfach geladen.
  • Adobe Commerce zeigt jetzt eine informative Fehlermeldung an, wenn beim Auschecken ein Fehler auftritt, und gibt den Käufer nicht mehr an einen früheren Auscheckschritt zurück. Zuvor wurde der Käufer auf die Versandseite zurückgeleitet.
  • Die cart Abfrage gibt für virtuelle Warenkörbe keine Versandmethode und -adresse mehr zurück. Wenn ein Warenkorb zuvor sowohl physische als auch virtuelle Produkte enthielt und alle physischen Produkte entfernt wurden, enthielt die Antwort auf die Warenkorbabfrage weiterhin Versandinformationen.
  • Commerce zeigt jetzt informative Nachrichten an, wenn eine Aktion „In den Warenkorb legen“ ausgelöst wird. Zuvor wurde der The requested qty is not available nicht immer wie benötigt in der Storefront angezeigt.
  • Die Ladezeiten der Kaufbestätigungsseite wurden für Kunden mit großen Adressbüchern verbessert. Commerce verarbeitet jetzt nur noch die in der Customer Addresses Limit angegebene Anzahl von Kundenadressen. Zuvor hat Commerce das gesamte Adressbuch geladen.
  • Die Produktmenge kann jetzt im Warenkorb wie erwartet für Artikel auf Lager geändert werden, wenn ein Artikel nicht vorrätig ist. Zuvor konnten Käufer die Produktmenge von Artikeln nicht ändern, wenn einer nicht vorrätig war.
  • Der AdvancedSalesRule-Produktattributfilter funktioniert jetzt ordnungsgemäß mit dem Backend-Typ des Dezimalattributs. Infolgedessen funktionieren die Regeln für den Warenkorb mit Coupon Type, die auf No Coupon gesetzt sind, jetzt erwartungsgemäß.
  • Der gesamte Betrag eines Rabatts auf den gesamten Warenkorb wird nun wie erwartet auf Warenkörbe angewendet, die sowohl gebündelte als auch konfigurierbare Produkte enthalten.
  • Die Cookies des Kundenbereichs berücksichtigen jetzt die Domain-Einstellung des Cookies. Zuvor wurde der Mini-Warenkorb nicht wie erwartet in Stores aktualisiert, die Subdomains enthielten, obwohl die Sitzung geteilt wurde.
  • Beim Versand einer Bestellung an mehrere Adressen tritt während der Verarbeitung der Regions-ID kein Trigger mehr auf.
  • Feste Rabattbeträge, die auf Warenkorbebene angewendet werden, sind jetzt korrekt.GitHub-37496
  • Die Coupons werden jetzt erfolgreich auf eine Bestellung angewendet, wenn ein Käufer den Coupon anwendet, nachdem er die Versandart „Flatrate“ ausgewählt hat, bei der eine Warenkorb-Preisregel mit der Versandmethode gilt, die als Bedingung festgelegt wurde. Zuvor wurde auf der Warenkorbseite der Fehler „Coupon ist nicht gültig“ angezeigt und der Coupon wurde nicht angewendet. GitHub-34866
  • Das Kontrollkästchen "My billing and shipping address are the same" bleibt jetzt standardmäßig aktiviert, wenn ein Käufer mit der automatischen Vervollständigung von Chrome seine Versandadresse eingibt und dann auf "", bevor der Block Versandmethoden neu geladen wird. GitHub-33725
  • Der applied_rule_ids in der quote_item enthält jetzt eine korrekte Liste der angewendeten Regel-IDs. Zuvor enthielt dieser Wert nur die zuletzt angewendete Regel-ID.
  • Mini-Warenkorb- und Kundendaten im lokalen Speicher werden jetzt zurückgesetzt, wenn eine Sitzung vom Server entfernt wird. Zuvor wurden diese Daten beim Entfernen der Sitzungsdatei noch angezeigt.
  • Diskrete Warenkörbe werden nicht mehr versehentlich vom Administrator zusammengeführt, wenn der persistente Warenkorb aktiviert ist.
  • Die Standard-Versandadresse im Schritt Versand zur Kasse enthält nicht mehr die zuvor ausgewählte Pick-in-Store-Adresse.
  • Produkte im Warenkorb werden nach der Leerung des Caches nicht mehr aus den zugehörigen Upsell-Produktlisten ausgeschlossen.
  • Die Schätzung der Warenkorbsteuer und des Versands spiegelt jetzt genau die standardmäßige Zielkonfiguration wider. Wenn Sie zuvor die Standardeinstellungen für die Berechnung des Steuerziels konfiguriert und Bundesland/Region und Postleitzahl angegeben haben, wurde nur der Postleitzahl-Wert im Warenkorb unter Estimate Tax and Shipping angezeigt. Dies resultierte daraus, dass Adobe Commerce die Regions-ID auf undefiniert setzte, bevor die bedingte Anweisung aufgerufen wurde, die die Standard-Regions-ID vom Administrator festlegte.
  • Adobe Commerce gibt diesen Fehler während des Checkouts nicht mehr aus, wenn der persistente Warenkorb aktiviert ist: Invalid state change requested. Zuvor wurden beim Auslösen dieses Fehlers gelegentlich mehrere Bestellungen mit demselben quote_id erstellt.
  • Der Mini-Warenkorb zeigt jetzt Produktpaketpreise an, die die Einstellungen für die Warenkorbsteuer widerspiegeln. Bisher enthielt der Mini-Warenkorb immer Steuern in den Preisen der Paketprodukte.
  • Die Leistung von Kundensegmentregeln, die auf aktiven Warenkörben basieren, wurde verbessert, wodurch die Zeit zum Hinzufügen eines Produkts zum Warenkorb verkürzt wurde.
  • Die Versandschätzung auf der Warenkorbseite ist jetzt korrekt. collectShippingRates ist jetzt nur noch einmal festgelegt. Zuvor wurde die Versandschätzung dupliziert. GitHub-36648
  • Die cart-Abfrage gibt keinen Fehler mehr zurück, wenn ein Produkt im angegebenen Warenkorb nicht mehr vorrätig ist. Zuvor konnten Käufer, die diese Abfrage für einen Kauf verwendeten, ihren Kauf nicht abschließen, wenn ein Artikel nicht vorrätig war und ihre Checkout-Seite leer war.
  • Gast-API-Anfragen an POST V1/guest-carts/<cartId>/shipping-information geben keinen cancel mehr zurück, wenn die Seite während der Anmeldung in einer mobilen Umgebung neu geladen wird. Zuvor gab Adobe Commerce einen 500-Fehler aus und protokollierte diese Ausnahme: TypeError: Argument 2 passed to Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes::beforeSaveAddressInformation() must be of the type string, null given.
  • Die Berechtigung für den kostenlosen Versand wird jetzt wie erwartet berechnet, wenn die Subtotal (Excl. Tax) für Warenkorbregeln angewendet wird. GitHub-36760
  • Die cart Abfrage gibt jetzt die richtigen Stufenpreise für ein Produkt zurück. GitHub-29655
  • Es wurden informative Fehlermeldungen zur Kaufbestätigungsseite hinzugefügt, die den Erstkäufer anleiten, wenn die Anwendung eines Gutscheins auf der Versandseite mit der ausgewählten Versandmethode in Konflikt steht. Zuvor wurden die Käufer in einer Nachricht aufgefordert, zur vorherigen Seite zurückzukehren.
  • Das Authentifizierungs-Popup wird jetzt nur noch initialisiert, wenn es benötigt wird, und nicht mehr, wenn der Gast-Checkout aktiviert ist. Es ist jetzt initialisiert, wenn der Gast-Shopper versucht, mit dem Checkout fortzufahren, und der Gast-Checkout ist deaktiviert. GitHub-30672

Warenkorb-Preisregel

  • Die Bedingung für die Unterauswahl der Warenkorbpreisregel enthält jetzt wie erwartet die total (incl.tax). GitHub-34871
  • Die If an item is FOUND/NOT FOUND in the cart with ALL/ANY of these conditions true Katalogpreisregel-Bedingung funktioniert jetzt korrekt mit Kategorie- und SKU-Attributen. Zuvor wurde diese Bedingung in der Couponlogik zum Warenkorb nicht korrekt angewendet, und ungültige Coupons wurden auf Bestellungen angewendet. GitHub-37660
  • Sie können jetzt erfolgreich eine neue Warenkorb-Preisregel speichern, wobei die Magento_OfflineShipping-Erweiterung deaktiviert ist. Zuvor gab Adobe Commerce diesen Fehler aus: report.ERROR: Warning: Undefined array key "simple_free_shipping". GitHub-37580
  • Die Regeln für den Warenkorbpreis werden jetzt erwartungsgemäß angewendet, wenn eine Warenkorbpreisregel, die sich auf eine Versandmethode bezieht, für den Store konfiguriert ist und diese Versandmethode beim Auschecken in eine andere geändert wird. Zuvor wurde der applied_rule_ids in der sales_order_item-Tabelle nie geändert, und die Warenkorbpreisregel wurde nicht auf die Bestellung angewendet.

Katalog

  • Bei der Ausführung von bin/magento cache:clean oder bin/magento cache:flush wird nicht mehr der gesamte integrierte oder Varnish-Vollseiten-Cache geleert, es sei denn, dies wurde angegeben. GitHub-38301
  • Händler können jetzt das Produktkarussell verwenden, um CMS-Blöcke zu erstellen, wenn catalog_product_price dimensions-mode auf website festgelegt ist. Zuvor hat Commerce den Block nicht gespeichert und folgenden SQL-Fehler ausgegeben: report.CRITICAL: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table.
  • Commerce zeigt keine doppelten Bilder mehr an, wenn die Produktfarbe auf einer Produktdetailseite geändert wird. GitHub-36243
  • Der Algorithmus zur Synchronisierung website-spezifischer Werte wurde optimiert, nachdem ein neuer Store hinzugefügt oder ein vorhandener in großen Umgebungen mit mehreren Stores geändert wurde.
  • Der Bereinigungsprozess für zwischengespeicherte Bilddateien wurde verbessert, um die Erstellung ausgeblendeter Ordner im pub/media/catalog/product-Ordner zu vermeiden. Zuvor führten ausgeblendete Verzeichnisse zu Problemen mit dem Speicherplatz während Bereinigungsvorgängen. Der Vorgang konnte beendet werden, wodurch temporäre versteckte Verzeichnisse zurückgelassen wurden, die nie gelöscht wurden.
  • Die Produktpaketpreise werden jetzt korrekt berechnet, und ein Problem mit der Reihenfolge der Vorgänge bei der Preisberechnung wurde behoben. GitHub-35665
  • Eine unnötige -Klausel wurde aus catalog_product_price Indexabfragen entfernt, was die Leistung dieses Indexers in Geschäften mit großen Katalogen verbessert hat. GitHub-32382
  • Commerce fügt den Produktbeschreibungstext nicht mehr in das Meta Description der Produktdetailseite ein, wenn dieses Feld leer gelassen wurde. Wenn eine Produktbeschreibung zuvor HTML-Code enthielt, der von Page Builder oder einem anderen HTML-Editor generiert wurde, wurde die HTML im Feld Meta-Description angezeigt, und Sie konnten dieses Feld nicht leer lassen.
  • Konfigurierbare Produktoptionen auf konfigurierbaren PDP-Produktseiten sind von anderen konfigurierbaren Produktoptionen auf der Seite nicht mehr betroffen. Zuvor bildeten konfigurierbare Produkte mit Dropdown-Attributen keinen Trigger mehr, wenn ein Produktkarussell auf der Produktdetailseite vorhanden ist. Konfigurierbare Produktoptionen konnten nicht ausgewählt werden, wenn andere konfigurierbare Produkte mit Farbfeldoptionen auf der Seite vorhanden waren.
  • Kürzlich angezeigte Produktinformationen werden jetzt entsprechend der Konfiguration der Store-Ansicht angezeigt. Zuvor wurden die kürzlich angezeigten Produktdaten nicht pro Shop-Ansicht aktualisiert, einschließlich Name und bevorzugter Sprache.
  • Vimeo-Videos werden jetzt in Chromium-basierten Webbrowsern wie erwartet auf Produktseiten in der Mobile-Ansicht wiedergegeben.
  • Der Befehl bin/magento catalog:images:resize generiert jetzt korrekt Produktbilder für die Produkte, die einer benutzerdefinierten Website mit einem benutzerdefinierten Design zugewiesen sind.
  • Metadaten mit NULL oder NOT NULL werden jetzt für den Standardspeicher entsprechend dem erwarteten Kontrollkästchen Standardwert verwenden gespeichert. Zuvor wurden Metadaten mit NULL Wert nicht gespeichert, wenn dieses Kontrollkästchen deaktiviert wurde.
  • Händler können jetzt ein vorhandenes Bild erfolgreich von der Produktdetailseite löschen und dann ein neues Bild mit demselben Namen hochladen. Zuvor wurde unter diesen Umständen auf der Storefront-Produktseite nicht das richtige Bild angezeigt.
  • Die productDetail-Abfrage gibt jetzt den Produktnamen anstelle von null zurück, wenn das Produktbild-alt-Attribut als leer festgelegt ist.
  • Bestellungen, die sowohl herunterladbare als auch physische Produkte enthalten, enthalten jetzt Arbeitslinks zum herunterladbaren Produkt, sobald die Bestellung abgeschlossen ist. Zuvor waren Links zu herunterladbaren Produkten erst verfügbar, als die physischen Produkte in der gleichen Bestellung versendet wurden.
  • URL-Neuschreibungen werden jetzt aktualisiert, wenn eine Kategorie von einer Store-/Stammkategorie in eine andere Store-/Stammkategorie verschoben wird. Veraltete Datenbankeinträge werden jetzt entfernt, wenn die Unterkategorien in neue übergeordnete Kategorien übertragen werden. Die Datenbank enthält jetzt nur noch relevante Einträge. Zuvor wurde die url_path nicht mit der richtigen Store-ID aktualisiert.
  • Der REST-V1/products/<sku>/media-Endpunkt kann jetzt das gleichzeitige Hochladen mehrerer Medienbilder verarbeiten. Zuvor wurden bei der gleichzeitigen Verarbeitung mehrerer Anfragen inkonsistente Daten erstellt, und Commerce gab einen Fehler aus, wenn diese Daten in der Datenbank gespeichert wurden.
  • Kundensegmentbanner verhalten sich jetzt wie erwartet, wenn sich ein Käufer, der ein neu erstelltes Kundenkonto verwendet, abmeldet. Zuvor wurden Banner, die für das angemeldete Kundensegment erstellt wurden, auch nach Beendigung dieser Kontositzung angezeigt (d. h. der registrierte Käufer hat sich abgemeldet).
  • Die Leistung bei der teilweisen Neuindizierung für die Indexer für Kategorien „Produkte“ und „Produktkategorien“ wurde verbessert. Zuvor wurden im indexer_update_all_views Cron-Auftrag mehrmals Neuindizierungen pro einzelnem Produkt oder Kategorie ausgeführt.
  • Wenn der Produktlagerstatus automatisch auf „Nicht vorrätig“ aktualisiert wird, basierend auf der Lagerkonfiguration (Menge), wird der Lagerstatus anschließend auf „Auf Lager“ aktualisiert, wenn die Lagermenge aktualisiert wird. Zuvor wurde die stock_status_changed_auto-Einstellung ignoriert, wenn die Stock-Konfiguration eines Produkts auf „Auf Lager“ aktualisiert wurde.
  • Die Symbolleistensortierung funktioniert jetzt auf Suchseiten wie erwartet, wenn die Remember Category Pagination aktiviert ist. GitHub-33220
  • Attribute mit Mehrfachauswahl werden jetzt erwartungsgemäß gespeichert, wenn Use Default Value Kontrollkästchen im Bereich der Store-Ansicht aktiviert ist. Zuvor war dieses Kontrollkästchen deaktiviert, wenn das Produkt bearbeitet und der Standardwert gespeichert wurde.
  • Admin-Benutzer mit Website-eingeschränktem Zugriff können jetzt Bilder zu einem Produkt hinzufügen, das in ihren Umfang fällt. Wenn der Admin-Benutzer keine Zugriffsrechte für das Produkt hat, zeigt Commerce eine informative Nachricht an. Zuvor konnten Admin-Benutzer mit Website-begrenztem Zugriff keine Bilder zu Produkten hinzufügen, auf die sie Zugriff hatten.
  • Benutzerdefinierte special_from_date-, special_to_date-, news_from_date- und news_to_date werden nicht überschrieben, wenn ein Produkt im Bereich der Store-Ansicht bearbeitet wird.
  • Commerce zeigt jetzt den richtigen Namen an, nachdem die Produkte in „Admin“ > "Category" > "Products in category" in Bereitstellungen mit mehreren Stores sortiert wurden, in denen die Produktnamen je nach Store variieren. GitHub-36208
  • Die addProductsToCart-Mutation gibt jetzt anpassbare Optionen mit Daten zurück. Zuvor wurden nur leere anpassbare Optionen zurückgegeben. GitHub-37599
  • Die Auswahl von Produktposition und ID wird jetzt korrekt angezeigt, wenn ein Administrator bzw. eine Administratorin ein neues Produkt zu einer Kategorie hinzufügt, nachdem der Cache gelöscht, die Kategorieseite jedoch nicht neu geladen wurde. Zuvor waren Produktposition und -auswahl nicht aufeinander abgestimmt und wurden falsch angezeigt.
  • Händler können jetzt das zukünftige Startdatum oder die zukünftige Startzeit einer geplanten Änderung für das herunterladbare Produkt aktualisieren. Zuvor gab Adobe Commerce diesen Fehler während der Aktualisierung des zukünftigen Startdatums oder der zukünftigen Startzeit für das herunterladbare Produkt aus: The downloadable link isn't related to the product. Verify the link and try again.
  • Der Status „Produkt zurückgestellt“ wird jetzt korrekt in der Storefront angezeigt. Zuvor wurden Produkte, die für den Versand verfügbar waren, fälschlicherweise als zurückbestellt identifiziert.
  • Der Zugriff auf herunterladbare Produkte vom Administrator führt nicht mehr zu einem Fehler, wenn der Administrator die Store-Ansicht von der bei der Produkterstellung verwendeten Ansicht in eine andere Store-Ansicht ändert. Die Produktpreise wurden jetzt erfolgreich in Gleitkommazahlen umgewandelt, wenn ein Administrator bzw. eine Administratorin die Store-Ansicht von allen Store-Ansichten zur Standard-Store-Ansicht wechselt. Zuvor gab Adobe Commerce einen Fehler aus. GitHub-37519
  • Exportierte Produkte haben jetzt den richtigen manage_stock, wenn der use_config_manage_stock gleich 1 ist. Zuvor war dieser Standardwert falsch.
  • Adobe Commerce zeigt keine Warnmeldung mehr an, wenn Sie ein Produkt speichern, das nach dem Löschen seines Bildes mit benutzerdefinierten Optionen erstellt wurde.
  • Miniaturbilder von Produkten werden jetzt wie erwartet in der E-Mail mit dem Warnhinweis für den Produktbestand angezeigt, die gesendet wird, wenn ein Produkt wieder auf Lager ist. Zuvor wurde dieses Bild nicht in der Benachrichtigungs-E-Mail angezeigt
  • Die Anzahl der Produkte in der Kategoriestruktur (Admin Catalog > Category) ist jetzt korrekt. Zuvor konnte die Anzahl der Kategorieprodukte nicht aus der catalog_category_product_index-Tabelle abgerufen werden. Der Tippfehler, der diesen Fehler auslöste, wurde behoben. GitHub-35417
  • Das Hauptproduktbild auf der Seite mit den Produktdetails wird beim Laden der Seite nicht mehr sichtbar nach unten verschoben, wenn product_image_white_borders in Design view.xml deaktiviert ist. Zuvor wurde das Produktbild beim Laden der Seite aufgrund falscher Höheneinstellungen in Fotorama JS sichtbar nach unten verschoben.
  • Kunden werden jetzt über sinkende Produktpreise benachrichtigt, wenn der Kunde Warnhinweise zu Preisrückgängen abonniert hat. Zuvor wurden aufgrund des Caching auf Anwendungsebene nicht immer Benachrichtigungen zu Preisrückgängen gesendet.
  • Die Server-seitige Validierung wurde zum Prozess der Erstellung von Produktattributen über die Web-API hinzugefügt. Sie können das Use in Layered Navigation Catalog Feld nicht aktivieren, wenn der Catalog Input Type for Store Owner Feldwert Text Field, Text Area, Text Editor, Date oder Date and Time ist. Zuvor wurden Produkte in Kategorien und Suchergebnissen weggelassen.
  • Die Kategorieseite wird jetzt mit der richtigen Paginierung neu geladen, nachdem ein Einkäufer die Seite geöffnet, die Paginierung geändert, zu einer Produktseite navigiert und dann zur Kategorieseite zurückkehrt. GitHub-36563
  • Nicht vorrätige einfache Produkte, die Optionen für ein konfigurierbares Produkt sind, werden jetzt als deaktiviert in der Storefront angezeigt, wenn Display Out of Stock Products auf "". Zuvor wurden alle Optionen als verfügbar angezeigt, trotz ihres Status und ihrer tatsächlichen Verfügbarkeit.
  • Durch die Aktualisierung des Attributs für den Website-Umfang in einer bestimmten Store-Ansicht wird der Wert dieses Attributs im globalen Umfang nicht mehr überschrieben. Zuvor führte der Import von Produktpreisen, wenn mehrere Zeilen mit derselben SKU und store_view_code verfügbar waren, zu ungenauen Preisen für die Standard- und Alle Store-Ansichtsbereiche.
  • Händler können jetzt vom Administrator aus ein GIF-Bild zur Bildergalerie eines Produkts hinzufügen. Zuvor hat Adobe Commerce diesen Fehler angezeigt: imagecolorsforindex(): Argument #2 ($color) is out of range.
  • Es wurden Prüfungen hinzugefügt, um Fehler zu behandeln, die aus undefinierten Array-Schlüsseln resultieren. Zuvor ist während der Erstellung der deklarativen Schema-Whitelist ein Fehler aufgetreten.
  • Adobe Commerce gibt jetzt ein gültiges Ergebnis für die benutzerdefinierte 01/01/1970 zurück. Zuvor hat das benutzerdefinierte Attribut folgenden Fehler zurückgegeben: Invalid input datetime format of value '1/01/1970. GitHub-37274
  • routes Abfragen, die Fragmente verwenden, geben jetzt die Kategorieinformationen erwartungsgemäß zurück. Zuvor ist auf der Kategorieseite ein interner Server-Fehler aufgetreten. GitHub-35906
  • Probleme mit dem cataloginventory_stock partiellen Neuindizierungsprozess wurden behoben und die Indexerleistung wurde verbessert. Zuvor wurden Lager- und Produktkategorien nicht korrekt aktualisiert.
  • Adobe Commerce generiert jetzt eine 301-Umleitung für ein Produkt, wenn die Kategorie, zu der es gehört, in ein neues übergeordnetes Element verschoben wurde. GitHub-37039

Katalogregeln

  • Katalogregeln sind jetzt korrekt indiziert, wenn sie durch die zeitgesteuerte Aktualisierung aktiviert werden. Infolgedessen werden die abgezinsten Preise nun korrekt generiert und indexiert. Wenn zuvor zwei Katalogregeln verfügbar waren und eine Regel nach der ersten Regel aktiviert wird, bevor der Indexierungsvorgang der ersten Regel abgeschlossen ist, wurden die Rabattpreise der Katalogregel für die zweite Katalogregel nicht generiert.
  • Katalogregeln werden jetzt in einer Umgebung mit mehreren Websites erwartungsgemäß angewendet.

Konfigurierbare Produkte

  • Händler können jetzt beim Konfigurieren eines konfigurierbaren Produkts Skip quantity at this time und Skip image uploading at this time auswählen, ohne die Quelle der zugehörigen einfachen Produkte zu beeinflussen. Zuvor führte die Auswahl von Skip quantity at this time zum Verschwinden von Produktquellen.
  • Die As low as Beschriftung wird nicht mehr für einen konfigurierbaren Produktpreis angezeigt, wenn alle Optionen denselben Preis haben.
  • Admin-Benutzer mit Website-Berechtigungen können jetzt ein untergeordnetes Produkt, das Teil eines konfigurierbaren Produkts ist, in einem anderen Store-Kontext speichern. Bei Neuindizierungsprozessen wird dieser Typ eines konfigurierbaren Produkts jetzt übersprungen.
  • Konfigurierbare Produkte mit zwei untergeordneten Produkten sind nicht mehr als nicht vorrätig gekennzeichnet, wenn ein untergeordnetes Produkt durch eine geplante Aktualisierung deaktiviert wird.
  • Die Leistung von Speichervorgängen für konfigurierbare Produkte mit mehreren Optionen wurde verbessert. Zuvor konnten bei Vorgängen zum Speichern von Produkten Zeitüberschreitungen auftreten. GitHub-36928
  • Die Storefront-Anzeige konfigurierbarer Produktpreise ändert sich jetzt wie erwartet, wenn ein Käufer eine Produktoption auswählt. GitHub-37378

Coupons

  • Gutscheincodes mit einer begrenzten Anzahl von Verwendungen pro Kunde können jetzt ein zweites Mal verwendet werden, wenn die Bestellung, für die sie zuvor verwendet wurde, fehlschlägt. Zuvor wurde der Promo-Code nicht freigegeben, als die vorherige Bestellung storniert wurde.
  • Couponcodes, die Leerzeichen enthalten, werden nicht mehr ungültig. Zuvor schlug die Validierung fehl, wenn ein Couponcode ein Leerzeichen enthielt (vor oder nach dem tatsächlichen Code). GitHub-38048
  • Käufer können jetzt zwei separate automatisch generierte Gutscheincodes verwenden, die von derselben Warenkorbpreisregel generiert wurden. Das Feld Uses per Coupon ist jetzt aktiviert, wenn der Coupontyp als Auto ausgewählt wurde (ähnlich für Coupontyp =Specific Coupon) . Dies wiederum ermöglicht es dem Käufer, mehrere Gutscheincodes auf denselben Warenkorbpreis anzuwenden, wenn die Codes unterschiedlich sind.
  • Der Couponwert eines Käufers für den einmaligen Gebrauch wird jetzt wie erwartet wiederhergestellt, wenn die Bestellung, auf die er angewendet wurde, storniert wird.
  • Der GET V1/coupons/<couponId>-Endpunkt gibt jetzt die vollständige erwartete Antwort für manuell erstellte Coupons zurück, genau wie bei automatisch generierten Coupons. Zuvor wurden einige Felder ausgelassen (z. B. usage_limit, usage_per_customer und created_at).

Cron

  • Der aggregate_sales_report_bestsellers_data Cron-Auftrag erstellt keine sehr großen temporären MySQL-Tabellen mehr und wird jetzt erfolgreich abgeschlossen. Dieser Cron-Auftrag fügt jetzt Daten pro Store ein, nicht für alle Stores gleichzeitig. Zuvor konnte dieser Cron-Auftrag zu No space left on device führen.
  • Die Anzahl der ausstehenden Datensätze in der cron_schedule wurde reduziert, indem verhindert wurde, dass Cron-Aufträge versuchen, unnötige Cron-Auftragssperren zu erhalten. Zuvor versuchten Cron-Jobs, Sperren zu erwerben, als es zu spät war, um den Job auszuführen. Cron-Aufträge in cron_schedule wurden nicht als verpasst markiert, obwohl sie bereits ihre geplante Zeit überschritten hatten. Commerce hat diesen Fehler auch wiederholt im Fehlerprotokoll angezeigt: report.WARNING: Could not acquire lock for cron job: indexer_update_all_views.
  • Fehlerkorrektur - Der schwerwiegende Fehler „divide by zero“ in Cron-Ausdrücken wurde behoben. GitHub-37804
  • Der sales_clean_quotes Cron-Prozess wurde optimiert, um schneller zu laufen, indem ein zusammengesetzter Index für store_id und updated_at columns in der Anführungszeichentabelle hinzugefügt wurde. Diese Änderung verbessert die Leistung von Cron-Aufträgen bei der Verarbeitung vieler Anführungszeichen.
  • Admin-Benutzer können jetzt sehen, welche Aufgabe der bin/magento cron:run derzeit ausführt. Im Titel des aktuell ausgeführten Prozesses werden nun die Gruppen- und Auftragsnamen aufgeführt. GitHub-34321

KUNDE

  • Adobe Commerce zeigt jetzt die Felder Date of Birth, Tax/VAT Number, Gender, Telephone, Company und Fax auf der Seite „Kunden bearbeiten“ basierend auf den Konfigurationseinstellungen an. GitHub-36196

Kundensegmente

  • Die Segmentbedingungen des Kunden laden jetzt alle übereinstimmenden Kunden erwartungsgemäß. Zuvor enthielt die Liste Segment Matched Customers nicht alle Matched Customers.

EAV

  • Der EAV-Indexer erfordert nicht mehr das Löschen der nicht sichtbaren Entitäten während der Batch-Verarbeitung. Standardmäßig legt der Indexer keine Batches mehr für nicht sichtbare Produkte an, und die Indexerleistung wurde verbessert.

E-Mail

  • E-Mails, die diakritische Zeichen oder Akzente enthalten (d. h. UTF8-E-Mail), werden jetzt sowohl für Kunden und Unternehmen als auch für die Auftragserteilung durch Gäste und registrierte Kunden unterstützt. Zuvor wurden in Commerce keine Kundendatensätze gespeichert, die diakritische Zeichen enthielten, und folgender Fehler wurde angezeigt: Something went wrong while saving the customer.
  • E-Mail-Absendernamen dürfen keinen Doppelpunkt mehr enthalten. Eine neue Validierungsregel verhindert jetzt das Speichern von Absendernamen, die Doppelpunkt-Zeichen enthalten, im Abschnitt E-Mail-Adressen speichern unter Admin Stores > General. Zuvor konnten Händler einen Absendernamen speichern, der einen Doppelpunkt enthielt, was zu Mailserver-Fehlern führte.
  • Bildoptionen werden nicht mehr als HTML-Markup in den E-Mails für Kunden (Standardvorlage) für Produkte mit benutzerdefinierten Bildoptionen angezeigt.
  • Wenn E-Mails mit der Rolle „Unternehmensadministrator zuweisen“ eine CMS Block URL enthalten, werden Details zum Unternehmensadministrator erwartungsgemäß gespeichert und Administratoren werden korrekt umgeleitet.
  • E-Mail-Adressen von Kunden können jetzt diakritische Zeichen enthalten. Zuvor untersagte die Frontend-Validierung die Erstellung eines Benutzers mit diakritischen Zeichen in seiner E-Mail-Adresse. GitHub-12075
  • Bestands- und Preiswarnungs-E-Mails werden jetzt in die Sprache übersetzt, die für die standardmäßige Store-Ansicht der Website konfiguriert ist. Zuvor wurden diese E-Mails nicht übersetzt.
  • POST V1/order/notify-orders-are-ready-for-pickup sendet jetzt eine E-Mail, die Kunden warnt, dass eine Bestellung erst zur Abholung bereit ist, wenn die Bestellung bereit ist. E-Mail wird jetzt nur noch ausgelöst, wenn die Anfrage ausnahmslos erfüllt wurde.

Frameworks

  • Das Debugging wurde verbessert, indem beim Ausgeben eines HTTP-Headers mit Varnish der Wert UNCACHEABLE hinzugefügt wurde. Zuvor wurden nur HIT oder MISS Werte ausgegeben. GitHub-37912
  • Es wurde Code zur Unterstützung der standardmäßigen Lack-Komprimierungsbehandlung hinzugefügt. GitHub-38309
  • Der Befehl bin/magento varnish:vcl:generate enthält jetzt eine input-file argument. Dies unterstützt das Hinzufügen einer benutzerdefinierten VCL zu einem Git-Repository relativ zum Commerce-Stamm. GitHub-37363
  • Die Unterstützung für Lack 4.x und 5.x wurde aus der Codebasis entfernt. GitHub-38304
  • phpcodesniffer-composer-installer in composer.json wurde auf Version 1.0.0 aktualisiert. GitHub-36913
  • Zeichen, die nicht mit RFC3986 übereinstimmen, wurden aus der Codebasis entfernt. GitHub-38355
  • Fehlerkorrektur - Ein falsches PHP-doc-Tag in der Magento\Reports\Block\Adminhtml\Shopcart\Product\Grid-Klasse wurde korrigiert. GitHub-38186
  • Umgestalteter Code in der gesamten Code-Basis, die bei der Codierung erstellt wurde, schreibt vor, dass jeder Cache-Abschnitt, der in der app/etc/env.php-Datei enthalten ist, einen Frontend-Abschnitt enthalten muss. Diese Umgestaltung behebt potenzielle Probleme bei der Aktualisierung von Bereitstellungen von Commerce vor 2.4.4. GitHub-38363
  • Klarstellung der Fehlermeldung, die mit StockItemValidator.php verknüpft ist, wenn während eines API-Aufrufs eine Stock-ID mit einem Wert von 0 bereitgestellt wird. GitHub-31107
  • Es wurde ein leeres Standard-Array zum $tagGenerators hinzugefügt, CompositeTagGenerator Fehler während der Kompilierung der Injektion von Abhängigkeiten zu vermeiden. Zuvor führte die Ausführung des bin/magento setup:upgrade-Befehls, wenn die Magento_DirectoryGraphQl- und Magento_StoreGraphQl-Module deaktiviert waren, zu einem Fehler. GitHub-38165
  • Die nicht verwendete AlgorithmProviderFactory-Klasse sowie die Abhängigkeiten von dieser Klasse in Klassen wie JweAlgorithmManagerFactory.php, JweContentAlgorithmManagerFactory.php und JwsAlgorithmManagerFactory wurden entfernt. GitHub-37783
  • Die var/log/system.log enthält keine main.INFO error mehr. Das Menüeintragsprotokoll wurde von der Ebene INFO nach DEBUG verschoben. Zuvor wurde die var/log/system.log-Datei mit Meldungen wie dieser überflutet: Add of item with id Magento_Theme::design_config was processed … .
  • Das Vorabladen von Redis schlägt nicht mehr fehl, wenn exec() „false“ zurückgibt. Die Überprüfung wurde zum Vorausfüll-Prozess hinzugefügt, um zu verhindern, dass array_combine als zweites Argument false erhält. Daher wird das Vorabladen weiterhin ausgeführt, wenn exec() false zurückgibt. GitHub-37509
  • Das Magento_CatalogWidget wurde überarbeitet, um $block Escaping-Funktionen durch $escaper Escaping-Funktionen zu ersetzen. GitHub-37107
  • Swaziland wurde in der gesamten Code-Basis auf Eswatini aktualisiert. GitHub-37873
  • Die neue nicaraguanische Währung (NIO) wurde zur Liste der verfügbaren Währungen hinzugefügt.
  • Der Name der reponseBody-Variablen wurde in app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php in responseBody geändert.GitHub-38093
  • Aufgelöste Zwischensummen-Rundungsfehler, die bei Transaktionen für Produkte aufgetreten sind, für die die Dezimalmenge aktiviert wurde. GitHub-37817
  • Der Datumsfilter für das Admin-Kundenraster funktioniert jetzt gemäß dem angegebenen Gebietsschema erwartungsgemäß.
  • Der bin/magento setup:upgrade-Befehl schlägt aufgrund des Datentyps der $schemaPatch Variablen nicht mehr fehl. Zuvor wurde der Zeichenfolgenwert an die get_class-Funktion übergeben, was den Fehler verursachte. GitHub-37545
  • Kritische Datenbanklesefehler bei aktiviertem synchronous_replication für Slave-Verbindungen auf Adobe Commerce Cloud treten nicht mehr auf.
  • Die Verbindung zur MySQL-Datenbank wird jetzt wiederhergestellt, wenn die Verbindung während einer Transaktion unterbrochen wird, wenn Sie max_messages = 0 für Privatkunden festlegen. Zuvor wurde die Verbindung beendet.
  • Das magento/module-release-notification-Kernmodul wurde im 2.4-Entwicklungs-Code mit folgendem Kommentar als veraltet gekennzeichnet: Starting from Magento 2.4.7, Magento_ReleaseNotification module is deprecated in favor of another in-product messaging mechanism.
  • Die Proxy-Code-Generierung generiert jetzt Proxy- und Factory-Dateien wie erwartet für Bereitstellungen, die im Produktionsmodus ausgeführt werden. GitHub-35252
  • Der indische Bundesstaat Ladakh wird jetzt als Option in den Dropdown-Menüs Admin-Adresse State aufgeführt. GitHub-33698
  • Der Event-Countdown-Ticker wird nun wie erwartet auf der Kategorieseite angezeigt.
  • Das unzulässige @author-Tag wurde aus der Code-Basis entfernt, einschließlich der folgenden Module: Magento_user-variable-wee, Magento_Catalog und Magento_Customer, Magento_Wishlist, Magento_Review Tax und im gesamten Framework. GitHub-37245, GitHub-37246, GitHub-37249, GitHub-37263
  • Das JSON-Serialisierungsprogramm im User wurde durch ein neues, präziseres Serialisierungsprogramm (JsonHexTag) ersetzt. Zuvor stürzte Commerce manchmal ab, wenn versucht wurde, Daten zu verwenden, die vom regulären Serialisierungsprogramm serialisiert wurden, wenn sie Elemente ohne Escape-Zeichen enthielten. GitHub-31377
  • Beim Ausführen einer vollständigen Neuindizierung (bin/magento indexer:reindex) treten keine fehlerhaften Pipeline-Fehler mehr auf. AMPQ-Verbindungen werden jetzt geschlossen, bevor der Process Manager Prozesse abbricht.
  • Der Warteschlangennachrichten-Validator validiert jetzt den Untertyp aller Array-Elemente. Zuvor hatte Commerce eine Ausnahme ausgelöst.
  • Die Warteschlangenverbindungskonfiguration pro Thema in app/etc/env.php funktioniert jetzt ordnungsgemäß. Zuvor wurde die Warnwarteschlange für Produkte nicht korrekt generiert, wenn eine neue Nachrichtenwarteschlange mit einem benutzerdefinierten Austausch erstellt wurde. Wenn die Warteschlangenverbindung für ein Thema in app/etc/env.php mit einem benutzerdefinierten Austausch konfiguriert wurde, wurde eine neue Bindung für alle Themen mit diesem benutzerdefinierten Austausch erstellt. Händler konnten keine Produktalarme verarbeiten.
  • Zeitformate, die mit einem /* mariadb-5.3 */-Kommentar markiert sind, verursachen beim Upgrade von MariaDB-Server auf Version 10.5.1 oder höher keine Fehler mehr während der bin/magento setup:install.
  • Der AwsS3-Treiber funktioniert jetzt erwartungsgemäß als Ersatz für die standardmäßige Basisdateispeicherimplementierung. Zuvor konnten Daten beschädigt werden, wenn dieser Treiber für die Dateispeicherung konfiguriert wurde. GitHub-37844
  • bin/magento config:show- und set-Befehle, die $_ENV-Variablen verwenden, unterstützen jetzt die Verwendung von Website- und Speicher-Codes, die Großbuchstaben oder Großbuchstaben enthalten.
  • Es wurden Klassen mit !important hinzugefügt, wie sie in Rückenwind 3 für die Unterstützung des CSS-Layouts verwendet werden. GitHub-37568
  • Der trim-input.js wurde eine fehlende jQuery hinzugefügt. GitHub-37683
  • Ereignisspezifische Details werden jetzt als zweites Attribut (context) der log übergeben. GitHub-37879
  • Seitenverhältniswerte wurden zu Katalogbildern hinzugefügt und unnötige Skripte wurden aus dem UI-Framework entfernt. GitHub-37691
  • Überarbeitete Fehlermeldungen, die durch eine ungültige XML-Konfiguration ausgelöst wurden, um mehr Informationen zu erhalten. GitHub-37788
  • Veralteten Code im Zusammenhang mit der Erstellung dynamischer Eigenschaften in der gesamten Code-Basis umgestaltet.
  • Die Leistung von Indexern für große Stores mit extrem aktiven Produktdatenbanken wurde verbessert. Indexer indizieren jetzt die neuesten Produktinformationen einmal für jeden Index und nicht mehrmals. Zuvor waren Produkte von der Website verschwunden, und die Produktdaten auf der Website könnten veraltet sein. GitHub-30012
  • mview_state Datensatzstatus gibt nun den Status basierend auf der Changelog-Aktivität korrekt an, wenn eine Slave-Datenbankverbindung verfügbar ist. Zuvor blieben diese Datensätze in Cloud-Bereitstellungen in einem waiting Zustand, selbst wenn es keine neuen Einträge im Änderungsprotokoll gab.
  • Es wurde Unterstützung für die precision-Option für das Währungsformat hinzugefügt, um die Funktionsparität mit der veralteten ZendCurrency-Klasse beizubehalten.
  • Cookie-Nachrichten wurden in beobachtbare Attribute konvertiert, und Entwicklerinnen und Entwickler können jetzt den Status bearbeiten, was zu Änderungen an der Trigger-Benutzeroberfläche führen kann. Zuvor waren Cookies schreibgeschützt und konnten nicht bearbeitet werden. GitHub-37308
  • Administratoren können jetzt eine Rechnung generieren, wenn ihre Commerce-Instanz mit dem S3-Speicher verbunden ist. Zuvor hat Commerce diesen Fehler angezeigt: Cannot create image resource. File not found. GitHub-35706
  • Adobe Commerce protokolliert jetzt eine Ausnahmemeldung wie erwartet, wenn die Validierung der MwSt.-Nummer durch den VIES-Validierungsdienst fehlschlägt. GitHub-36065
  • Der Administrators wurde aus der Abfrage entfernt, mit der beim Erstellen der Administratorrolle eine Administratorrolle abgerufen wurde. GitHub-36998
  • Der bin/magento setup:config:set-Befehl schlägt nicht mehr fehl, wenn in der app/etc/env.php-Datei ein ungültiger Datenbankbenutzername enthalten ist. GitHub-37409
  • Das Sortieren nach Spalte für reservierte Wörter in einer standardmäßigen Admin-UI-Komponente führt nicht mehr zu einem SQL-Fehler in var/log/exception.log. GitHub-37423
  • Es wurden AddDataForCostaRica.php hinzugefügt, um Statusinformationen für Costa Rica bereitzustellen. GitHub-37382.
  • Die Fehlermeldung für Szenarien, in denen Benutzende versuchen, über den Administrator auf eine ungültige URL zuzugreifen, wurde verbessert. GitHub-35682.
  • Param $options[Position] für Währungssymbole funktioniert jetzt erwartungsgemäß und unterstützt die Anpassung der Position des Währungssymbols. Zuvor ignorierte die toCurrency-Methode nach der Migration von Zend Framework 1 den position. Dieses Problem trat in der gesamten Admin-Benutzeroberfläche auf.
  • Veralteten Code im Zusammenhang mit der Erstellung dynamischer Eigenschaften in der gesamten Code-Basis umgestaltet.
  • Benutzerdefinierte Stilformate, die durch Erweitern des TinyMCE-Editors in Adobe Commerce und Magento Open Source-Versionen vor 2.4.6 erstellt wurden, sind jetzt wie erwartet im Inhaltstyp Page Builder text verfügbar. Zuvor wurde das benutzerdefinierte Stilformat ignoriert, und nur die Standardformate wurden nach dem Upgrade auf Adobe Commerce 2.4.6-p1 geladen. GitHub-36950
  • Der folgende informative Hinweis wurde der quote.php-Datei hinzugefügt: Important: This method also copies customer data to quote and removes quote addresses. GitHub-37400
  • Die Instanziierung des Sperranbieters durchläuft jetzt \Magento\Framework\Lock\Proxy -Klasse. Der Sperranbieter wird jetzt mit der Einstellung lock über die app/etc/env.php konfiguriert.
  • Für Befehle wurde Mutex implementiert, um Wettlaufsituationen während der Aktualisierung durch gleichzeitige Anfragen zu verhindern. Zuvor führten gleichzeitige Anfragen (Wettbewerbsbedingungen) für Auftragsstornierungen zu doppelten Einträgen in der inventory_reservation.
  • Die Funktion populateWithArray wandelt jetzt Objekteigenschaften korrekt in Schlangencase um, sodass sie mit den AbstractModel Gettern und Settern kompatibel ist. Zuvor war die Formatierung von Schlangenbuchstaben falsch, wenn der Datenattributname mehrere Großbuchstaben in einer Zeile enthielt.
  • Der Wert für die automatische Inkrementierung in der catalog_product_entity_varchar-Tabelle wird nun nach dem Speichern eines Produkts korrekt inkrementiert. Zuvor stieg dieser Wert um zehn.
  • Adobe Commerce löst diese Dateisystemausnahme nicht mehr aus, wenn Sie versuchen, den JavaScript/CSS-Cache zu leeren: No such file or directory.
  • Der Wert von value_id in customer_entity_int wird jetzt korrekt inkrementiert. Beim Aktualisieren einer Entität, die diese Attribute enthält, wird eine Aktualisierungsabfrage anstelle von insert on duplicate key update ausgeführt. Infolgedessen wachsen die im EAV-Modell verwendeten Spalten mit automatischer Inkrementierung nun linear. Zuvor übersprungen der automatische Inkrementierungsprozess für Spalten Werte aufgrund fehlgeschlagener Einfügeabfragen. GitHub-28387
  • Unnötiger Leerraum wurde aus id entfernt, die ihn nicht benötigen. (Dieser Fehler wurde durch eine Code-Änderung in Adobe Commerce 2.4.6 eingeführt.)
  • Store-Codes werden nicht mehr in der Store-URL angezeigt, wenn der Store im Einzelspeichermodus ist. GitHub-36831
  • An around Plug-ins wurden kleinere Aktualisierungen vorgenommen. GitHub-31443
  • Die Farbfelder Helper wurden überarbeitet, um irreführende Importaliase zu entfernen. GitHub-31373
  • Admin-Benutzer können jetzt eine sitemap.xml Datei wie erwartet löschen oder umbenennen. Zuvor konnte ein Administrator bzw. eine Administratorin die Datei aus dem Administrator löschen, sie blieb jedoch im Dateisystem. GitHub-37468
  • Coupons werden nicht mehr als verwendet gekennzeichnet, wenn die Zahlung für die Bestellung, für die sie angewendet wurden, fehlschlägt. Warteschlangennachrichten werden jetzt in der Reihenfolge verarbeitet, in der sie beim Starten des Verbrauchers veröffentlicht werden. Zuvor wurde die erste Nachricht aus der Warteschlange gezogen, um einfach zu überprüfen, ob Nachrichten in die Warteschlange gestellt waren. Anschließend wurde sie zurückgewiesen, wodurch die erste Nachricht zuletzt verarbeitet wurde.
  • Adobe Commerce löst keine Ausnahme mehr in der Protokolldatei aus, wenn ein(e) Benutzende® versucht, ein Versandlabel zu drucken. Wenn eine Erweiterung zuvor Antwortkopfzeilen ändert, die eine Anlage enthalten, hat das System eine Ausnahme in der Protokolldatei ausgelöst.
  • Unterstützung für weitere HTML-Klassen wurde zu elements.xsd hinzugefügt. GitHub-36891

Allgemeine Fehlerbehebungen

  • Der Name der reponseBody-Variablen wurde in app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php in responseBody geändert.GitHub-38093
  • Durch die Planung von Produktaktualisierungen werden die Mehrfachauswahl-Attributdaten nicht mehr gelöscht. Zuvor wurden beim Planen einer Aktualisierung für ein Produkt die Attributdaten für die Mehrfachauswahl des Produkts fälschlicherweise gelöscht. GitHub-37675
  • Das Speichern eines Produkts mit einem nicht standardmäßigen Speicherbereich führt nicht mehr dazu, dass unveränderte Attribute beim Laden mit dem ProductRepository in den Speicherbereich einbezogen werden. GitHub-8897
  • Käufer können jetzt auf Seiten zugreifen, die als Hierarchieknoten konfiguriert sind, wenn Zugriffsbeschränkungen aktiviert sind. Zuvor trat eine unendliche Weiterleitungsschleife auf, und der Browser gab diesen Fehler aus: ERR_TOO_MANY_REDIRECTS.
  • Es wurden informative Fehlermeldungen zur Validierung benutzerdefinierter Felder auf Produktdetailseiten hinzugefügt. GitHub-38006
  • Sonderzeichen können jetzt in Namensfeldern verwendet werden. Zuvor war das kaufmännische Und-Zeichen (&) im Namensvalidator eingeschränkt, wodurch das Hinzufügen oder Bearbeiten von Kunden blockiert wurde, wenn der Kundenname ein kaufmännisches Und-Zeichen enthielt. GitHub-38080
  • Admin-Benutzer mit eingeschränktem Zugriff auf einen bestimmten Store können jetzt eine Massenaktualisierungsaktion verwenden, um Produktüberprüfungen zu aktualisieren. Zuvor gab es in Commerce diese Ausnahme: report.CRITICAL: TypeError: array_intersect(): Argument #1 ($array) must be of type array, null given in app/code/Magento/AdminGws/Model/Models.php:439.
  • Die Funktion Kennwort anzeigen auf der Anmeldeseite der Storefront zeigt jetzt die erwarteten Kennwörter an. Zuvor wurden keine Kennwörter angezeigt. GitHub-37432
  • Die Produktvergleichsliste ist jetzt für Gastkäufer immer Website-spezifisch und enthält keine Produkte, die von anderen Websites hinzugefügt wurden, einschließlich Produkte, die beiden Websites zugewiesen wurden.
  • CMS-Inhaltsblöcke, die Emojis enthalten, werden nach dem Emoji nicht mehr abgeschnitten, wenn sie in der Datenbank gespeichert werden. Zuvor wurde der Inhalt nach dem Emoji abgeschnitten, da die standardmäßige Datenbankkonfiguration keine Vier-Byte-Zeichen unterstützte.
  • Die Bedingung Ist eine von der zugehörigen Produktregel funktioniert jetzt korrekt, wenn sie mit der Einstellung Abzugleichende Produkte konfiguriert wird. Zuvor wurden durch diese Regel keine Produkte identifiziert.
  • Das CMS-Seitenraster filtert Seiten jetzt basierend auf der Store-Ansicht, die dem Admin-Benutzer zugewiesen ist. Zuvor wurde der Rollenbereich nicht angewendet.
  • Kennwörter werden nun wie erwartet angezeigt, wenn das Kontrollkästchen Show Password auf der Anmeldeseite aktiv ist.
  • Das Systemattribut „Kennwort zurücksetzen-Token“ der rp_token-Validierung (Kundenentität) wurde bei der Erstellung des Kundenkontos aus der Attributvalidierung entfernt, und die Diakritikervalidierung ist nur in der resultierenden Kunden-E-Mail enthalten. Zuvor hat Commerce den Kundendatensatz nicht gespeichert und den folgenden Fehler angezeigt: Something went wrong while saving the customer.
  • Sie können jetzt nach dem Löschen einer Spalte Änderungen an den Admin-Seiten und dem Blockraster erfolgreich speichern. GitHub-37525
  • Unternehmensadministratoren können jetzt Unternehmensbenutzer aus der Storefront hinzufügen. Zuvor hat Commerce diesen Fehler protokolliert, wenn ein Administrator bzw. eine Administratorin versucht hat, einen neuen Benutzer hinzuzufügen: report.CRITICAL: Error: Call to a member function __toArray() on null in app/code/Magento/LoginAsCustomerLogging/Observer/LogSaveCustomerObserver.php:123.
  • Kunden können sich jetzt erfolgreich mit einem neuen Kennwort von einem Gerät anmelden, nachdem sie ihr Kennwort auf einem anderen Gerät zurückgesetzt haben.
  • Das Feld Admin-Kundenadresse Bundesland/) behält jetzt den zuletzt gespeicherten Wert erwartungsgemäß bei. Zuvor zeigte Commerce, als Sie den Wert aus diesem Feld entfernten, weiterhin den gelöschten Wert im Feld Bundesland/" an. GitHub-36846
  • Adobe Commerce gibt keinen Einschränkungsverletzungsfehler mehr aus, wenn Sie zum ersten Mal die Auswahl aufheben und dann eine neu erstellte CMS-Seite auswählen.
  • Ein hierarchischer Website-Stamm ist nun korrekt einer neu erstellten CMS-Seite zugewiesen. Zuvor stimmte die Hierarchie der Website-Stammauswahl auf neu erstellten CMS-Seiten nicht überein.
  • Bei Anfragen für einen RSS-Feed für Kategorien treten bei aktivierter RSS Feed Top Level Category keine Fehler mehr auf. Zuvor führte das Durchsuchen der Seite mit der RSS-Feed-Kategorie zu Elasticsearch-CRITICAL-Fehlern in Protokolldateien, wenn RSS Feed Top Level Category aktiviert wurde.
  • Der richtige Wert wird jetzt für gws_store_groups gespeichert, wenn der Rollenbereich bei der Erstellung der Benutzerrolle geändert wird. Wenn der Rollenbereich zuvor als "All" ausgewählt wurde, wurde der gws_store_groups bei der Benutzererstellung als null gespeichert, jedoch nicht während der Rollenbearbeitung. Wenn der Rollenbereich als Custom ausgewählt wurde, wurde der gws_store_groups Wert ebenfalls immer als null gespeichert.
  • Sie können jetzt auf die Seite zum Zurücksetzen des Passworts zugreifen, indem Sie auf der Admin-Anmeldeseite auf den Link zum Zurücksetzen des Admin-Passworts klicken, wenn die Add Store Code to Urls aktiviert ist. Der Link zum Zurücksetzen des Admin-Kennworts hat zuvor die Anmeldeseite oder die 404-Seite geöffnet.
  • Der Datumsbereich im Dashboard für Admin-Statistiken wird jetzt basierend auf der in den Konfigurationseinstellungen festgelegten Zeitzone berechnet und dann in UTC konvertiert, um Daten aus der Datenbank abzurufen.
  • Der CMS-Hierarchiefilter funktioniert erwartungsgemäß, nachdem Sie eine Store-Ansicht gefiltert und dann auf Admin Content > Hierarchy Save geklickt haben. Zuvor wurde durch Klicken auf Save die Seite aktualisiert, aber der Kontext ging verloren und die ausgewählte Store-Ansicht wurde nicht mehr angezeigt.
  • Wenn Sie auf die Schaltfläche Send invitation (Admin Marketing > Private sales > Invitation) klicken, wird jetzt zusammen mit dem Formularschlüssel eine Anfrage zur POST gesendet und die Einladung erfolgreich gesendet. Wenn Sie diese Schaltfläche zuvor angeklickt haben, waren weder die HTTP-POST-Methode noch der Formularschlüssel vorhanden.
  • Zero-Byte-Dateien können jetzt mit AWS S3 erfolgreich in den Remote-Speicher kopiert werden.
  • Admin-Benutzer können jetzt über den Admin eine neue Kundenadresse hinzufügen, wenn dieser Kunde für eine andere Website erstellt wurde, deren Store-ID nicht mit der Website-ID übereinstimmt. Zuvor hat Adobe Commerce diese Popup-Meldung angezeigt: Something went wrong. GitHub-36582
  • Auf der Seite "CMS-Block-Editor“ wird jetzt der richtige Widget-block_id-Wert angezeigt. GitHub-29644

Geschenkgutscheine und Verpackung

  • Händler können keine Geschenkkarte mit einem negativen Wert mehr erstellen.
  • Die setGiftOptionsOnCart-Mutation entfernt jetzt wie erwartet das Geschenkverpacken aus einer Bestellung. Der Wert von gift_wrapping_id wird jetzt auf Warenkorbebene nicht mehr festgelegt. Zuvor wurde der gift_wrapping_id auf seinen vorherigen Wert aktualisiert, nachdem die Bestellung aufgegeben wurde, selbst wenn dieser Wert auf Warenkorbebene nicht festgelegt wurde.
  • Geschenkkartenkonten bleiben nun wie erwartet aktiv, wenn die teilweise Rückerstattung eines einfachen Produkts aus der Bestellung, auf die die Karte angewendet wurde, verarbeitet wird. Zuvor wurde das Geschenkkartenkonto gelöscht.
  • Die setGiftOptionsOnCart-Mutation aktualisiert jetzt erfolgreich die Datenbank, wenn eine Geschenknachricht aus dem Warenkorb entfernt wird. Zuvor wurden die Nachrichtendetails in der Datenbank nicht aktualisiert und die Geschenknachricht wurde nicht aus dem Warenkorb entfernt.
  • Das Event Information-Label der Geschenkregistrierung ist jetzt erwartungsgemäß übersetzt.
  • Zwischensummen werden jetzt für benutzerdefinierte Geschenkkartenbeträge korrekt berechnet.
  • Geschenkgutscheine werden jetzt beim Checkout mit mehreren Adressen korrekt angewendet. Zuvor wurden bei Sendungen mit mehreren Adressen fälschlicherweise die Beträge der Geschenkkarte verwendet, was zu ungültigen Beträgen der Geschenkkarte führte.
  • Die Emulation beginnt jetzt während send() Aufrufen, sobald die Emulation während des getInfoBlockHtml()-Aufrufs abgeschlossen ist, und es werden keine Fehler protokolliert. Zuvor wurde die system.log-Datei mit diesem Fehler überschwemmt: main.ERROR: Environment emulation nesting is not allowed. GitHub-35603
  • Sie können jetzt die updateCartItems-Mutation verwenden, um eine Geschenkkarte in einem Warenkorb zu aktualisieren. Zuvor konnte im Warenkorb nur der Kartenbetrag durch diese Mutation aktualisiert werden.
  • Das Geschenkverpacken ist jetzt wie erwartet in einem Angebot enthalten, das auf zusammengeführten Warenkörben basiert. Zuvor wurden Geschenknachrichten erfolgreich zusammengeführt, jedoch keine Auswahlen umgebrochen.
  • Die addProductsToCart Mutation fügt nun erfolgreich eine Geschenkkarte zum Warenkorb hinzu. Zuvor wurde bei dieser Abfrage der Empfängername der Geschenkkarte erwartet, stattdessen wurde jedoch der Absendername zurückgegeben. Adobe Commerce gab diesen Fehler aus: Please specify a recipient name. GitHub-36665

Google Tag Manager

  • Das Google-Tag-Modul überträgt jetzt die richtigen Daten an die Datenschicht. Zuvor wurden Seitenimpressionsdaten nicht an die Datenschicht gepusht.

GraphQL

  • Die getCustomerWishlist Abfrage führt nicht mehr zu einem internen Server-Fehler bei der Abfrage von Listen, die konfigurierbare Produkte enthalten.
  • Die customerCart-Abfrage gibt jetzt wie erwartet alle angewendeten Rabatte auf Bundle-Produkte zurück. Zuvor wurden die gesamten Rabatte, die auf ein Produktpaket angewendet wurden, als Null zurückgegeben.
  • Die getCustomerWishlist Abfrage führt nicht mehr zu einem internen Server-Fehler bei der Abfrage von Listen, die konfigurierbare Produkte enthalten.
  • Die Deklaration des is_subscribed-Flags, des Resolvers, des Caches und der zugehörigen Tests wurden vom CustomerGraphQl in das NewsletterGraphQl-Modul verschoben.
  • Die addProductsToCart-Mutation meldet keine nicht mehr damit verbundenen Fehler in user_errors. Zuvor wurden Fehler im Zusammenhang mit dem Warenkorb zusammen mit den erwarteten Vorgangsfehlern in user_errors aufgenommen. GitHub-37908
  • Der Produktfilter der products-Abfrage kann jetzt Ergebnisse für Teilübereinstimmungen sowie vollständige Übereinstimmungen zurückgeben. Das neue match_type-Attribut (PARTIAL, FULL) unterstützt die Angabe des Übereinstimmungstyps. Zuvor gab die Abfrage nur vollständige Übereinstimmungen zurück.
  • Der addConfigurableProductsToCart Abfrage wurde ein Mutex hinzugefügt, um Wettlaufbedingungen während einer Aktualisierung durch gleichzeitige Anfragen zu verhindern. Wenn ein Händler zuvor zwei parallele Anfragen zum Hinzufügen desselben konfigurierbaren Produkts zu einem Warenkorb gesendet hat, wurden zwei separate Artikel mit derselben Produkt-SKU hinzugefügt. GitHub-37847
  • Die Produktaggregation in GraphQL-Antworten enthält jetzt Werte ungleich null für Attribute, wenn Use in Layered Navigation auf Filterable (no results) gesetzt ist. Zuvor wurden nur Werte ungleich null zurückgegeben.
  • Die Leistung der setShippingAddressForEstimate Abfrage für Vorgänge im Zusammenhang mit dem Warenkorb, die benutzerdefinierte Produktattribute beinhalten, wurde verbessert. Zuvor hat die Abfrage alle Produktattribute geladen, wenn Parameter als Variablen gesendet wurden.
  • Das Feld products-ConfigurableProduct.configurable_options gibt jetzt nur noch Werte zurück, für die mindestens ein Produkt aktiviert ist. Zuvor wurden in diesem Feld deaktivierte einfache Produkte zurückgegeben.
  • Die Leistung der GetCategories query wurde verbessert, indem die Anzahl der unnötigen SQL-Abfragen, die sie generiert, reduziert wurde.
  • Die Behandlung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
  • Die products Abfrage gibt jetzt alle relevanten Details zur Storefront-Preisfindung zurück, wenn die dynamische Preisgestaltung auf „Nein“ festgelegt ist und Rabatte angewendet werden. Zuvor wurde die Preisspanne für Produkte nicht zurückgegeben. GitHub-35649
  • GraphQL-Transaktionsnamen enthalten jetzt Abfragenamen der obersten Ebene nur noch in den New Relic-Protokollen. Zuvor enthielten Transaktionsnamen auch sekundäre Abfragenamen.
  • Die Behandlung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
  • Wenn die Sichtbarkeitseinstellung für ein Produkt auf Catalog festgelegt ist, wird die Einstellung jetzt durch products Abfragen zu diesem Produkt korrekt aufgelöst. Zuvor wurde jeder bereitgestellte Filter auf die Einstellung Visibility: Catalog umgeschaltet. GitHub-36591
  • Die customer Abfrage gibt jetzt ein product_sale_price zurück, das die Steuer auf Bestellungen enthält, wenn der Produktpreis so konfiguriert wurde, dass die Steuer enthalten ist. GitHub-36946
  • Produktattribute vom Typ DateTime werden jetzt dem FilterRangeTypeInput Filter in den Produktabfragen zugeordnet. Zuvor wurden diese Attribute FilterMatchTypeInput zugeordnet. Infolge dieser Änderung erfordern Abfragen zum Filtern von DateTime-Attributen from und to Werte anstelle von Übereinstimmungswerten.
  • Die customer-Abfrage gibt jetzt nur noch Kundenbewertungen zurück, die sich wie erwartet auf eine bestimmte Shop-Ansicht beziehen, wenn nach Shop-ID gefiltert.
  • Die categories-Abfrage gibt keinen Fehler mehr zurück, wenn der Wert der items.redirect_code-Antwort einen Nullwert enthält. GitHub-36675
  • Regelbasierte verwandte Produkte werden jetzt nach einer vollständigen Cache-Bereinigung wie in GraphQL-Antworten erwartet geladen. Zuvor wurden die Produkt-EAV-Attribute, die für regelbasierte Übereinstimmungen verantwortlich waren, nicht für die angeforderte Entität geladen, obwohl sie nach dem erneuten Laden der Storefront-Produktseite geladen wurden.
  • Bei der changeCustomerPassword-Mutation wird jetzt die erwartete E-Mail-Adresse nach dem erfolgreichen Zurücksetzen eines Kennworts Trigger.
  • urlResolver- und route-Abfragen geben jetzt ein Ergebnis zurück, wenn die Target Path der URL-Umschreibung eine absolute URL ist. Zuvor hat die urlResolver-Abfrage NULL zurückgegeben, als Sie sie zum Abrufen von Weiterleitungsdaten verwendet haben.
  • Die products-Abfrage gibt jetzt die richtigen Bezeichnungen zurück, wenn mehrere Store-Ansichten vorhanden sind. GitHub-29635
  • Die categoryList-Abfrage gibt jetzt einen ausgefüllten product-Abschnitt des options für die untergeordneten Produkte der Bundle-Produkte wie erwartet zurück. Zuvor wurden keine Informationen zu untergeordneten Bundle-Produkt-Produkten zurückgegeben.
  • Die route-Abfrage gibt jetzt erwartungsgemäß Routen für Kategorien und Produkte ohne internen Server-Fehler zurück. GitHub-36544
  • Die products-Abfrage ruft jetzt url_key Werte ab, wenn mehrere Kategorien ausgewählt sind.
  • product Abfragen geben jetzt nur noch Aggregationen für Produkte zurück, die dem angegebenen freigegebenen Katalog zugewiesen sind. Zuvor wurden Aggregationsdaten für Produkte, die keinem freigegebenen Katalog zugewiesen waren, in der mehrschichtigen Navigation angezeigt.
  • Die get()-Methode der OptionValueProvider-Klasse gibt jetzt erwartungsgemäß einen Attributoptionenwert zurück, der auf dem angegebenen option_id basiert. Zuvor wurde ein Fehler zurückgegeben. GitHub-35910
  • Die products Abfrage gibt jetzt alle verfügbaren Aggregationen (Filter) und ihre korrekt übersetzten Bezeichnungen zurück. Zuvor wurden Preis- und Kategorieaggregationsbeschriftungen nicht wie erwartet übersetzt. GitHub-36140
  • Sie können jetzt eine ProductCard beim Abfragen von related_products, upsell_products und crosssell_products auf ProductInterface verwenden. GitHub-29769
  • Die products-Abfrage gibt jetzt verwandte, Upsell- und Crosssell-Produkte in der Reihenfolge zurück, in der sie gespeichert wurden. GitHub-36461
  • GraphQL-Abfragen geben jetzt zugehörige Produktdaten zurück, sortiert nach Position. GitHub-33010
  • category_url_path wurde zu ProductAttributeFilterInput hinzugefügt. Dadurch wird unterstützt, dass alle Produkte für eine Kategorie in einer einzigen Abfrage angefordert werden können. GitHub-32460
  • Es wurde ein Fehler korrigiert, bei dem die -Methode, die den aktuellen Speicher in einer GraphQL-Mutation festlegt, vor der -Methode ausgeführt wurde, die die Validierung verarbeitet. GitHub-31336

Bild

  • Das Upload-Formular für das Symbol „Admin“ unterstützt jetzt .ico Dateitypen. GitHub-34858

Import/Export

  • Der Produktimport analysiert nun die Werte mit dem richtigen Trennzeichen. Zuvor verwendete der Importprozess den senkrechten Strich (“|„), um Mehrfachauswahlwerte zu analysieren, bis das ermittelte Wertetrennzeichen nicht gleich dem Standardwert war. Der Importvorgang ist daraufhin fehlgeschlagen.
  • 301-Weiterleitungen werden jetzt automatisch erstellt, wenn URL Key Werte durch den CSV-Import aktualisiert werden.
  • Versandtabellen-Tarife werden jetzt wie erwartet in der CSV-Datei zum Importieren von Tabellenraten aktualisiert. Die Upload-Datei für die Tabellenrate wird vorübergehend gespeichert, bis der Cron-Vorgang für den asynchronen Konfigurationsprozessor ausgeführt wird. Dieser Cron-Auftrag erfasst den neuen Speicherort der Datei und verarbeitet sie entsprechend. Zuvor wurden die Tabellenraten nicht erwartungsgemäß aktualisiert, da der asynchrone Prozessor nach der Datei am falschen Speicherort suchte.
  • Das Raster Dateien exportieren zeigt jetzt alle exportierten Dateien unabhängig vom Zeitstempel an. Zuvor wurden im Raster nicht alle exportierten Dateien angezeigt, die denselben Zeitstempel hatten. GitHub-36951
  • Produkte mit anpassbaren Optionen können jetzt erfolgreich importiert werden. Zuvor gingen beim Import Daten zu Optionen verloren. GitHub-37598
  • Sonderzeichen in exportierten CSV-Dateien werden jetzt in Excel wie erwartet dargestellt. GitHub-37921
  • Importieren von Lagerquellen und Kundenadressen mithilfe der Customers and Addresses (single file) Option wurde jetzt erfolgreich abgeschlossen.
  • Der Produktimport schlägt aufgrund von Speichermangel nicht mehr fehl. Zuvor schlug der Import beliebiger Produkte in eine Datenbank, die bereits etwa zehn Millionen Produkte enthielt, aufgrund von Speichermangel fehl.
  • Bei Validierungsprüfungen wird der Importvorgang jetzt erwartungsgemäß angehalten, wenn keine gültigen Daten zum Importieren vorhanden sind, und Commerce zeigt jetzt diesen Fehler an: There are no valid rows to import. Zuvor wurde die Validierung unter diesen Bedingungen erfolgreich durchgeführt, aber der Importvorgang schlug mit der folgenden Meldung fehl: entity values are mixed. GitHub-32905
  • Beim Importieren von URL-Schlüsseln mit demselben Produkt werden vorhandene standardmäßige Store-Ansichtsschlüssel nicht mehr überschrieben oder gelöscht. URL-Neuschreibungen werden jetzt nur für Store-Ansichten neu generiert, wenn kein überschriebener url_key vorhanden ist. Zuvor wurde beim Importieren von URL-Neuschreibungen mit demselben URL-Schlüssel der vorhandene standardmäßige URL-Schlüssel der Store-Ansicht überschrieben. (key_store URL-Neuschreibungen wurden gelöscht, aber die URL-Neuschreibungen auf der Standard-Store-Ansichtsebene für das Produkt waren dennoch auf key_store festgelegt.)
  • Die Anzahl der Produkte ändert sich beim Import nicht mehr unerwartet. Die Cache-Leerung wird jetzt auf einen Zeitpunkt nach dem Importvorgang verschoben.
  • Der Status geplanter Importaktionen gibt nun präzise den Erfolg oder Misserfolg des Importvorgangs an. Zuvor wurden alle Aktionen als erfolgreich protokolliert.
  • Commerce berücksichtigt jetzt beim Import von Kundendatensätzen die Disable Automatic Group Change Based on VAT ID. Zuvor wurde der disable_auto_group_change Wert in den Importdateien ignoriert. GitHub-36409
  • Magento\Framework\Convert\Excel verarbeitet jetzt erfolgreich Zahlen, denen ein Leerzeichen vorangestellt ist. Die Excel-XML kodiert Felder jetzt als String. Zuvor kodierte der Excel-Writer diese Werte als number, was zu ungültigen Dateien führte. GitHub-33422
  • Händler können jetzt das Gebietsschema angeben, in dem Importdaten angezeigt werden und wie Datenvalidatoren diese Daten analysieren sollen. Wenn kein Gebietsschemawert angegeben ist, verwendet Adobe Commerce das standardmäßige Konfigurationsgebietsschema (nicht die standardmäßige Store-Ansicht), um die Daten zu analysieren. In Admin verwenden Import- und Exportprozesse weiterhin das Gebietsschema der Admin-Benutzeroberfläche, um Daten zu importieren, zu analysieren und zu formatieren.
  • Beim Importieren von Produkten mit country_of_manufacture, die von einem Admin-Benutzer mit einer anderen Gebietsschema-Einstellung als dem Admin-Benutzer erstellt wurden, der die Produkte importiert, wird kein Validierungsfehler mehr ausgegeben. Zuvor konnte dieser Importvorgang zu einem Validierungsfehler für das country_of_manufacture führen.
  • Stock-Quelldaten werden jetzt erfolgreich vom Store-Importprozess importiert, und Commerce zeigt jetzt eine vollständige Benachrichtigung an, wenn der Importprozess abgeschlossen ist. Zuvor fehlte die Benachrichtigungsmeldung.
  • Die redundante Indexinvalidierung wurde entfernt, wenn sich die Indexer im geplanten Modus befinden.
  • Exportierte Produkte haben jetzt den richtigen manage_stock, wenn der use_config_manage_stock gleich 1 ist. Zuvor war dieser Standardwert falsch.
  • Adobe Commerce zeigt jetzt im geplanten Importraster eine informative Fehlermeldung an, wenn ein Bild während eines geplanten Importvorgangs nicht erfolgreich importiert wurde. Zuvor wurde keine Fehlermeldung angezeigt.
  • Der Produktimport wird nicht mehr unterbrochen, wenn Produktbilder fehlen. Wenn zuvor beim Import eines Drittanbieterdienstes mithilfe einer CSV-Datei ein Produktbild fehlte, hat Adobe Commerce folgenden Fehler angezeigt: Maximum error count has been reached or a system error is occurred!.
  • Die Leistung des Kundenexports aus dem Kundenraster wurde in Bereitstellungen mit aktiviertem B2B verbessert.
  • Der Produktimportprozess gibt keinen Validierungsfehler mehr aus, wenn ein Attributwert in configurable_variations Spalte ein Komma enthält.
  • Die Decodierung wurde aus dem Exportprozess ausgeschlossen. Der Text der CSV-Exportdatei bleibt nach dem Import unverändert. Daher ändert sich die Beschreibung nach dem erneuten Import nicht. Zuvor wurden HTML-Tags im Page Builder-Editor nach dem Produktexport und -import entfernt.
  • Nicht standardmäßige Konfigurationen (Website- oder Store-Umfang), die als Umgebungsvariablen hinzugefügt werden, unterbrechen den app:config:import nicht mehr mit einem Rekursionsfehler.
  • Katalogsuche und Preisindizierer im Speichermodus aktualisieren werden nach dem Import nicht mehr ungültig. Zuvor wurde die Version des Elasticsearch-Indexerdokuments geändert, wenn neue und vorhandene Produkte importiert wurden.
  • Produktberichte werden jetzt in das var exportiert. Zuvor wurden diese Berichte in das Stammverzeichnis des Dokuments exportiert, das in Cloud-Instanzen ein schreibgeschütztes Verzeichnis ist.
  • Leere Mehrfachauswahl-Kundenadressfelder unterbrechen oder stoppen den Exportvorgang nicht mehr.

Index

  • Die Leistung des catalogrule_product Indexers wurde verbessert, wenn keine Katalogregel festgelegt ist. GitHub-34784
  • Probleme mit der Leistung des Preisindexers wurden behoben. Die Indexerleistung nimmt nicht mehr allmählich ab. Der Indexer wurde überarbeitet, um die Indexerverarbeitungsgeschwindigkeit zu erhöhen, indem geändert wurde, wie temporäre Tabellen erstellt werden. Diese temporären Tabellen werden jetzt neu erstellt, anstatt von zeitaufwendigeren DELETE-Anweisungen angegangen zu werden.
  • Die Leistung des Preisindexers wurde verbessert. Dem Preisindizierer wurde ein Indexhinweis hinzugefügt, der die Laufzeiten von MySQL-Abfragen verbessert, die während der Indizierung ausgelöst werden.
  • Alle Indexer verwenden jetzt dieselben Farben, um den Indexerstatus darzustellen. GitHub-34648
  • Die Leistung des Produktindexers für Katalogeregeln in Bereitstellungen, in denen Regeln nicht allen Websites zugewiesen sind, wurde verbessert.
  • Update on schedule Das Erstellen eines benutzerdefinierten Produkttyps, wenn die Indexer auf eingestellt sind, führt nicht mehr dazu, dass die Aufgabe zur Aktualisierung des cron fehlschlägt. GitHub-36471
  • Es wurden Probleme auf der Seite mit den Produktdetails für die Storefront angezeigt, die durch die Indizierung von Katalogberechtigungen verursacht wurden. Zuvor hat Adobe Commerce die Indextabelle zuerst gelöscht und dann während eines vollständigen catalogpermissions_product- oder catalogpermissions_category Neuindizierungsprozesses neu indiziert. Katalogberechtigungen funktionierten in der Storefront erst nach Abschluss der Neuindizierung erwartungsgemäß.
  • bin/magento indexer:reindex customer_grid schlägt nicht mehr mit einem MySQL-Fehler fehl, wenn das Kundenraster neu erstellte benutzerdefinierte Kundenattribute enthält. GitHub-36233
  • Wenn Sie den Indexermodus für mehrere Indexer ändern (d. h. einen Massenaktionen-Indexermodus ändern), wird der Modus eines Indexers jetzt nur mehr geändert, wenn sich der aktuelle Modus von dem angewendeten Modus unterscheidet. Dies verbessert die Leistung, indem unnötige Zugriffe zur Datenbank vermieden werden. GitHub-36823

Infrastruktur

  • Dem Admin Usage Enable Controller wurde eine fehlende return-Anweisung hinzugefügt. Zuvor gab es keine return-Anweisung, und der Controller in FrontendController Klasse wurde falsch verarbeitet. GitHub-31374
  • MySQL-CREATE TEMPORARY TABLE ... LIKE wurde durch überarbeitete CREATE TEMPORARY TABLE ersetzt, um die Kompatibilität mit MySQL 8.x sicherzustellen. GitHub-37926
  • Adobe Commerce enthält in der Fehlermeldung, die angezeigt wird, wenn eine falsch formatierte HTTP-Anfrage an den Server gesendet wurde, nicht mehr den vollständigen Pfad zum Stammverzeichnis des Servers. Als zweites Argument werden jetzt nur noch Zeichenfolgen an die explode-Methode übergeben.
  • restricted_classes.php hat Zend_Validate_File_Upload ersetzt. Zuvor stürzte der Validator beim Hochladen einer Importdatei ab, die größer ist als der in php.ini konfigurierte Wert. GitHub-37281
  • Attributoptionen, die vom Datenquellenmodell bereitgestellt und mit dem Setup-Daten-Patch installiert werden (in der Regel von Drittanbietermodulen), können jetzt mit Kundensegmentregeln verwendet werden. Zuvor gab diese Kombination nicht die Liste der Kunden zurück, die mit dem konfigurierten Segment übereinstimmten.
  • Die E-Mail-Vorlagen-Engine kann jetzt bestimmte verschachtelte Anweisungen korrekt verarbeiten (z. B. {{if}}{{depend}}...{{/depend}}{{/if}}). GitHub-36438
  • product Abfragen mit Aggregationsdaten geben jetzt die richtigen Beschriftungswerte für boolesche Produkteigenschaften zurück. GitHub-29123
  • CSS-Dateien sind nicht mehr beschädigt, wenn sie zusammengeführt werden, wenn var/tmp und pub/static auf unterschiedlichen Dateisystemen sind und CSS Merging Enabled aktiviert ist. Temporäre Dateien wurden im selben statischen Verzeichnis wie die Zieldatei erstellt, um sicherzustellen, dass sich beide Dateien im selben Dateisystem befinden. Daher ist der Aufruf zum Umbenennen atomar. GitHub-29172
  • Fehlerkorrektur - Beim Aufrufen einer Memberfunktion getId() auf int tritt jetzt kein Fehler mehr auf, der gelegentlich eine Ausnahme auslöst, wenn ein Kunde in Admin angezeigt wird.
  • Typenprüfungen werden jetzt für den Array-Typ im Design-Design-Konfigurations-Prozessor erzwungen. GitHub-34440

Inventory management

  • Produkte werden jetzt nach einer Gutschrift, die eine Rückgabe der Produktmenge enthält, automatisch in den Lagerstatus zurückversetzt. Zuvor mussten Händler den Lagerstatus eines Produkts manuell ändern, wenn ein Produkt nicht vorrätig war, aber eine Gutschrift den Lagerbestand dieses Produkts zurückgab.
  • Die Leistung des Inventar-Indexers im asynchronen Modus wurde verbessert, indem redundante Anfragen zur Neuindizierung von standardmäßigen Quellelementen entfernt wurden.
  • Es wurden Probleme mit dem Inventar-Indexer behoben, die sich auf die Genauigkeit der Storefront-Bestandsanzahl von konfigurierbaren Produkten auswirkten. GitHub-36421
  • Die Aktualisierung von Bestandsquellenelementen über REST V1/inventory/source-items funktioniert jetzt schneller. Der Aufruf Trigger keinen Neuindizierungs- oder Cache-Bereinigungsvorgang mehr für unveränderte Inventarprodukte.
  • REST V1/products/<sku> Trigger jetzt eine automatische Neuindizierung von Aktien, wenn der Lagerstatus eines Produkts aktualisiert wird. Zuvor wurde für das Produkt, das aktualisiert wird, kein Neuindex der Aktien ausgelöst.
  • Der konfigurierbare Produktbestandsstatus wird jetzt in der Storefront erwartungsgemäß aktualisiert, wenn untergeordnete Produkte von V1/inventory/source-items aktualisiert werden.
  • Der POST <store_code>/V1/inventory/source-items REST-Aufruf validiert jetzt die Payload für Leerzeichen in zurückgegebenen Inventarquellenelementen und sendet bei Bedarf eine Fehlermeldung zur Validierung.
  • Händler können jetzt Käuferinnen und Käufer benachrichtigen, dass eine Bestellung zur Abholung bereit ist, wenn die No Manage Stock für ein Produkt aktiviert ist. Zuvor hat Commerce beim Aktivieren dieser Einstellung die folgende Fehlermeldung angezeigt: Your order is not ready for pickup.
  • Händler können jetzt eine Gutschrift für Bestellungen erstellen, aus denen ein einfaches Produkt gelöscht wurde, das mit einem konfigurierbaren Produkt verknüpft ist. Zuvor konnten Händler die Gutschrift nicht erstellen, und Commerce hat eine TypeError Ausnahme ausgelöst.
  • Die Anzahl der Admin-Rasterquellen gibt jetzt gültige Datensätze zurück, nachdem ein Filter angewendet wurde. Zuvor gab die getSourcesCount-Methode immer die Gesamtzahl der Quellen zurück, nachdem ein Filter angewendet wurde.
  • Die Kategorieseite wird nicht mehr zum Admin-Dashboard umgeleitet, wenn Sie Produkte mit der Option „Nach unten verschieben“ sortieren. Das Problem wurde behoben, indem die SQL-Join-Anweisung erst dann in die bedingte Anweisung eingefügt wurde, wenn sichergestellt wurde, dass sie bereits nicht enthalten ist. Zuvor wurde die Seite mit der folgenden Meldung zum Admin-Dashboard weitergeleitet:Invalid security or form key. Please refresh the page.
  • AUTO_INCREMENT der inventory_source_item Tabelle wird nicht mehr mit jedem UPDATE erhöht. Zuvor wurde die AUTO_INCREMENT dieser Tabelle durch jede Aktualisierung erhöht, was letztendlich dazu führte, dass der AUTO_INCREMENT außerhalb des Bereichs lag, wenn ein neuer Datensatz zur inventory_source_item table hinzugefügt wurde. Admin-Benutzer erhielten daher die folgende Fehlermeldung, als sie versuchten, ein neues Produkt über die Admin-Numeric value out of range... zu erstellen: .
  • Admin-Benutzer können jetzt über die Admin ein Produkt zu einem Kundenwagen für einen bestimmten Store-Ansichtsumfang mit Inventory management hinzufügen. Zuvor wurde die Lager-ID nicht ordnungsgemäß bestimmt und Admin-Benutzer konnten das Produkt nicht zum Warenkorb hinzufügen.
  • Die Synchronisierung zwischen Inventar und Katalog beruht nicht mehr auf der Synchronize with Catalog. Zuvor wurden Produkte nur dann ordnungsgemäß synchronisiert, wenn diese Einstellung aktiviert war.
  • Adobe Commerce gibt nach dem Neuladen der Seite keinen Fehler mehr aus, wenn ein Käufer eine Produktmenge von einer Bestellung abzieht, die in den verfügbaren Produktbereich fällt, während er die Versandquelle auswählt.
  • Der Status Konfigurierbarer Produktbestand wird jetzt ordnungsgemäß aktualisiert, wenn ein konfigurierbares Produkt und der Wert der untergeordneten Stock Availability durch eine Masseninventaraktualisierung aktualisiert werden. Zuvor konnten Sie ein konfigurierbares Produkt und seine untergeordneten Produkte nicht per Massenaktualisierung auf Lager zurückgeben.
  • Der Datentyp für nicht standardmäßige Quellen wurde auf DECIMAL (12, 4) aktualisiert und unterstützt jetzt bis zu acht ganzzahlige Stellen. Dies ist dieselbe Beschränkung, die für den Standardbestand implementiert ist. Dieser Wert ist jetzt mit den Admin-Seiten zum Hinzufügen und Bearbeiten von Produkten synchronisiert, die die Eingabevalidierung für bis zu acht Stellen für alle Arten von Inventarquellen unterstützen. Zuvor wurde die Eingabe für das Feld Quantity (für nicht standardmäßige Quellen) nur bis zu sechs Stellen unterstützt.
  • Sowohl die Standard- als auch die Nicht-Standard-Quelle zeigen jetzt die richtigen Informationen für die verkäufliche Produktmenge an, wenn eine nicht standardmäßige Quelle, die in der Storefront bestellt wurde, für den Versand verarbeitet wird. Zuvor hat Adobe Commerce einen falschen Lagerstatus für Produktquellen angezeigt.
  • \Magento\Catalog\Model\Product::getIsSalable() gibt jetzt den Lagerstatus basierend auf dem im Produktobjekt (\Magento\Catalog\Model\Product::getStoreId()) definierten Umfang zurück. Zuvor hat getIsSalable() den Lagerstatus basierend auf dem aktuellen Umfang zurückgegeben, unabhängig vom Produktobjekt.

Protokollierung

  • Das Datums-/Uhrzeitformat in der Systemberichterstellungsfunktion wurde aktualisiert, sodass Datensätze aus Protokolldateien in Berichte aufgenommen werden.
  • Admin-Benutzer können jetzt die Protokolle für Massenaktionen, die von Integrationen erstellt wurden, im Abschnitt Massenaktionsprotokoll des Admin-Bereichs einsehen.

Login

  • Das Zurücksetzen eines Kennworts in einem Browser und das anschließende Anmelden über einen anderen Browser führen nicht mehr zu einer Ausnahme. GitHub-36447
  • Kunden werden nun, nachdem sie ein Konto erwartungsgemäß aktiviert haben, zur Anmeldeseite weitergeleitet. Zuvor wurden Kunden automatisch angemeldet.

Mediensammlung

  • Händler können jetzt Bilder mit demselben Namen, aber unterschiedlichen Groß- und Kleinschreibung (eine Mischung aus Groß- und Kleinbuchstaben) in die Mediensammlung hochladen. Zuvor wurde bei Bilddateinamen in Page Builder nicht zwischen Groß- und Kleinschreibung unterschieden und Dateien mit denselben Namen außer Groß- und Kleinschreibung wurden im Commerce-Medienspeicher überschrieben, die auf Dateisystemen gehostet wurden, bei denen zwischen Groß- und Kleinschreibung unterschieden wird.

Newsletter

  • Commerce prüft jetzt, ob die Newsletter-Abonnementfunktion aktiviert ist, bevor neue Abonnenten für einen Newsletter zugelassen werden. GitHub-33040

Bestellungen

  • Produkte, die aus dem Admin-Warenkorb in die Liste der zu bestellenden Artikel verschoben wurden, werden jetzt wie erwartet aus dem Warenkorb gelöscht. GitHub-37538
  • Händler können jetzt wie erwartet Gutschriften für die teilweise Rücksendung von Bestellungen erstellen, die teilweise durch Belohnungspunkte bezahlt wurden. Zuvor wurde beim Erstellen einer partiellen Rücksendung durch einen Händler der Bestellstatus fälschlicherweise als „Geschlossen“ identifiziert, und auf der Seite „Admin-Auftrag“ wurden keine Gutschriftenoptionen angezeigt.
  • Die Rotation des Admin-Aktionsprotokolls funktioniert jetzt erwartungsgemäß, wenn die Archivierungshäufigkeit des Rotationsprotokolls auf wöchentliche oder monatliche Intervalle festgelegt ist. Zuvor wurden Protokolle bei der Festlegung wöchentlicher oder monatlicher Intervalle nicht rotiert.
  • Commerce wendet nun den korrekten Rabattbetrag auf teilweise stornierte Bestellungen an. Zuvor wurde der Rabattbetrag, wie er in der Spalte base_discount_cancelled berechnet wurde, bei einer Änderung eines Auftrags falsch berechnet. Die Unterstützung für negative Werte wurde den Rechnungen für reduzierte Bestellungen hinzugefügt.
  • Der REST-V1/orders-Endpunkt wendet jetzt Geschenkgutscheine wie erwartet beim Importieren von Bestellungen an. Zuvor wurden Änderungen an den Attributen der Geschenkkartenerweiterung in diesem Endpunkt nicht gespeichert.
  • Commerce sortiert jetzt benutzerdefinierte Attribute von Kundenadressen basierend auf der Sortierreihenfolge, die angegeben wurde, als der Administrator die Bestellung in Admin erstellt hat.
  • Die Seite „Admin-Kundenauftragsraster“ wird jetzt erwartungsgemäß geladen, wenn ein Händler eine Suche auf dieser Seite initiiert. Wenn ein Händler zuvor versucht hat, Bestellungen aus dieser Tabelle zu durchsuchen, friert die Seite ein, und Commerce zeigt in der Browser-Konsole einen Request-URI Too Long an.
  • Der Bestellstatus wird jetzt als „Geschlossen“ und nicht als „Abgeschlossen“ gekennzeichnet, wenn der gesamte Bestellbetrag mit Warenkorbguthaben plus einer zusätzlichen Zahlungsmethode erstattet wurde. Zuvor wurde der Bestellstatus als abgeschlossen markiert, da der zurückerstattete Betrag falsch berechnet wurde.
  • Die Leistung der OrderRepository::get()-Methode wurde verbessert, indem die Anzahl der Ladevorgänge einer Bestellung aus der Datenbank reduziert wurde. Zuvor hat diese Methode eine Bestellung mehrmals geladen. GitHub-36636
  • Händler können jetzt Gutschriften für Bestellungen generieren, die einige Artikel mit einer Gesamtsumme von null enthalten, wenn andere Bestellartikel zur Rückerstattung verfügbar sind. Zuvor konnten Händler nicht mehrere Rückerstattungen durchführen, wenn ein Kunde einen Rabatt von 100 % auf einige Artikel in der Bestellung hatte.
  • Links zwischen untergeordneten und übergeordneten Produkten werden jetzt auf der Bestellseite angezeigt, wenn Sie das untergeordnete Produkt von der Administratorseite neu bestellen. GitHub-37028
  • Der Kopfzeilenabschnitt der Auftragsseite enthält jetzt die erwarteten Informationen zur gesendeten Rechnung, Gutschrift und Lieferung. GitHub-27474
  • Gutschriften für Bestellungen, die nur ein konfigurierbares Produkt enthalten, werden jetzt korrekt generiert. Zuvor hat die isLast()-Funktion nicht den erwarteten true zurückgegeben. GitHub-36722
  • Die Leistung des aggregate_sales_report_bestsellers_data Cron-Auftrags wurde durch die Optimierung der Hauptdatenabfrage verbessert.
  • Adobe Commerce gibt beim Erstellen einer Gutschrift mit einer Offline-Rückerstattung an einen Kundensaldo keinen Fehler mehr aus, wenn der Administrator nicht über die Berechtigung zum Aufrufen der Website des Kunden verfügt. Zuvor gab es in Adobe Commerce folgenden Fehler: More permissions are needed to view this item, und der Admin-Benutzer konnte keine Rückerstattung von Warenkorbguthaben erstellen.
  • Der Bestellstatus ist jetzt korrekt, wenn eine Teilrückerstattung für eine Bestellung vorgenommen wurde, die Bundle-Produkte enthält. Zuvor wurde der Bestellstatus nach Erteilung einer Teilrückerstattung als abgeschlossen angegeben, obwohl die verbleibende Bestellung noch nicht abgeschlossen war. GitHub-37377
  • Käufer können ein Produkt nicht mehr über einen benutzerdefinierten Preis bestellen, wenn eine Bestellung zum ersten Mal vom Administrator mithilfe des einmaligen benutzerdefinierten Preises generiert wird. Wenn eine Bestellung einen Artikel mit benutzerdefinierten Preisen enthielt, wurde dieser benutzerdefinierte Preis zuvor auf andere Bestellungen angewendet, die mit der Funktion „Neu bestellen“ aufgegeben wurden.
  • Käufer können falsche Bestellstatus nicht mehr auf der Bestellseite speichern. Der Bestellstatus ändert sich nicht mehr von „Abgeschlossen“ in „Verarbeitung abgeschlossen“, wenn ein Artikel versendet wird. Zuvor hat Adobe Commerce den aktuellen Bestellstatus nicht geprüft, bevor der Bestellstatus gespeichert wurde, nachdem ein Käufer einen Kommentar eingegeben hatte. GitHub-36562
  • Adobe Commerce gibt auf der Rückgabeseite für die Storefront-Reihenfolge keinen Fehler mehr aus, wenn das konfigurierbare zurückgegebene Produkt gelöscht wurde. Zuvor hat Adobe Commerce diesen Fehler protokolliert: report.CRITICAL: Error: Call to a member function getShipmentType() on null in magento2ee/app/code/Magento/Rma/view/frontend/templates/return/create.phtml:52.
  • Das Auftragsraster wird nun erwartungsgemäß asynchron mit allen Bestellungen synchronisiert. GitHub-36562
  • Die Funktion Nach Kaufdatum filtern im Abschnitt Kundenbestellungen auf der Seite Bestellungen funktioniert jetzt erwartungsgemäß. Zuvor trat ein JavaScript-Fehler auf, wenn von der Zeitzonen-Konversionslogik ein Fehler ausgegeben wurde, wenn der Methode dieselbe Zeitzone bereitgestellt wurde.
  • Das Adobe Commerce-Dashboard zeigt jetzt beim ersten Laden die richtigen Bestellstatistiken an. Zuvor wurden im Dashboard falsche Bestellinformationen angezeigt, nach der Aktualisierung des Zeitraums wurden jedoch die richtigen Informationen angezeigt.
  • Admin-Benutzer werden nun wie erwartet zur Bestellseite weitergeleitet, nachdem sie bei der Erstellung einer neuen Bestellung vom Administrator eine Shop-Ansicht ausgewählt haben.
  • Der GET V1/orders/<OrderID>-Endpunkt gibt jetzt Informationen zu den konfigurierbaren und einfachen Produkten in der Reihenfolge zurück, unabhängig vom Lagerstatus der einfachen Produkte. Admin-Benutzer können jetzt nur dann Bestellungen aufgeben, wenn die ausgewählten Artikel (Produkte) auf Lager oder verkäuflich sind. Zuvor hat diese API nur Informationen zu den Produkten zurückgegeben, die auf Lager waren.
  • Die Gutschriftenseite stürzt nicht mehr ab, wenn der kostenlose Versand aktiviert ist, wenn der Versandpreis Steuern enthält und Steuerberechnungen nach Rabatten angewendet werden. Zuvor hatte Adobe Commerce eine Division by zero Ausnahme ausgelöst. GitHub-36800
  • Die Verwendung des rest/V1/orders/{id}/comments-Endpunkts zum Posten eines Kommentars zu einer Bestellung ohne Angabe des Bestellstatus wirkt sich nicht mehr auf die Anzeige der Bestellung aus. Zuvor wurde der Bestellstatus in den Tabellen sales_order und sales_order_grid als NULL protokolliert, und weder auf der Seite „Meine Bestellungen“ noch im Raster „Admin-Bestellung“ wurde die Bestellung angezeigt. GitHub-34180
  • Rechnungen, Lieferungen und Gutschriften können jetzt erfolgreich zusammen mit den zugehörigen Bestellungen aus dem Archiv zurückverschoben werden, wenn sich die darin enthaltenen IDs von den Bestell-IDs unterscheiden. Wenn zuvor eine Bestellung in das Archiv verschoben und dann wiederhergestellt wurde, fehlten in dieser Bestellung Rechnungs-, Versand- und Gutschriftdatensätze, wenn die ID-Nummern nicht übereinstimmten. GitHub-36847

Page Builder

  • Bilder behalten jetzt das richtige Seitenverhältnis bei, wenn sie in Page Builder in der Größe geändert werden. GitHub-37493
  • Page Builder zeigt jetzt bei Bedarf Fehlermeldungen an, wenn Sie versuchen, ein Bild hochzuladen, das größer ist als die angegebene maximale Dateigröße. Zuvor hat Commerce eine Popup-Warnmeldung für hochgeladene Bilddateien angezeigt, die kleiner waren als die angegebene Maximalgröße.
  • CMS-Seitenproduktregler enthalten jetzt die übergeordneten Produkte aller untergeordneten Produkte, die für die Aufnahme in den Regler ausgewählt wurden. Zuvor wurden übergeordnete Produkte aus dem Schieberegler ausgeschlossen.
  • HTML-konvertierte Inhalte werden jetzt wie erwartet in E-Mail-Vorlagen angezeigt, wenn das Magento_AsyncConfig deaktiviert ist. Zuvor enthielten E-Mail-Vorlagen nur Roh-HTML.
  • Die Leistung von Page Builder-Speichervorgängen im Chrome-Browser wurde verbessert.
  • Sie können jetzt die Page Builder-Option in Admin > Content > Pages verwenden, um kopierten Text mithilfe des text in alle Stile einzufügen. Zuvor hat Page Builder nur Text angezeigt und Stile nicht gespeichert.
  • CORS-Fehler werden beim Bearbeiten von Produktinhalten mit Page Builder nicht mehr angezeigt, wenn der Administrator bzw. die Administratorin über eine bestimmte ACL verfügt. Der Admin-Benutzer kann das Produkt jetzt speichern. Zuvor wurde das Produkt von Page Builder nicht gespeichert, sodass der Speichervorgang einfrierte.
  • In der Bildvorschau für hochgeladene Bilder in Page Builder sind jetzt genaue Informationen zur Dateigröße enthalten.
  • Page Builder-Seitenelemente werden jetzt im Chrome-Browser (v112) mit einer akzeptablen Geschwindigkeit gerendert. Zuvor war das Speichern von Inhalten mit Page Builder im Chrome-Browser langsam, und Commerce protokollierte diesen Fehler in der Browser-Konsole: [ERROR] Page Builder was rendering for 5 seconds without releasing locks.
  • Die automatische Wiedergabe des Page Builder-Videoelements funktioniert jetzt in mobilen Safari-Browsern auf iOS wie erwartet, wenn das Element direkt mit einer Remote-Videodatei verknüpft ist. Zuvor wurde kein Vorschaubild angezeigt.
  • Page Builder funktioniert jetzt im Chrome-Browser erwartungsgemäß. Zuvor wurden Inhaltsänderungen, die in diesem Browser vorgenommen wurden, nicht immer gespeichert.
  • Das Laden einer Admin-Produkteditorseite eines Produkts erzeugt keinen zeitweise auftretenden Uncaught TypeError JavaScript-Fehler mehr.
  • Bilder, die über den Page Builder-Editor hochgeladen werden, werden jetzt mit Tags versehen, die unter Content > Media Gallery verwendet werden. Zuvor wurden diese Bilder als nirgendwo verwendet in der Mediensammlung markiert.
  • Wenn Sie ein Produkt aus dem Page Builder-Karussell zu einem Warenkorb hinzufügen, wird die Artikelmenge von Seiten mit zwei verschiedenen Widgets, die dieselben Produkte anzeigen, nicht mehr dupliziert.
  • Page Builder fügt das Attribut tabindex HTML nicht mehr zu Hyperlink-Tags hinzu, a Sie einen Hyperlink bearbeiten und dann eine Vorlage speichern.
  • Das Produkt-Widget und die Page Builder-Vorschau verarbeiten jetzt das HTML von Sonderzeichen ordnungsgemäß. Zuvor hat das Produkt-Widget SKUs, die das & enthalten, nicht korrekt angezeigt.
  • Der Inhalt des Textelements von Page Builder wird jetzt erwartungsgemäß aktualisiert, wenn Sie den vollständigen Inhaltsblock im Vorschaumodus auswählen und aktualisieren.
  • Das Kopieren und Einfügen von Text von einem Page Builder-Texteditor in einen anderen funktioniert jetzt erwartungsgemäß. Zuvor konnte die Seite, in die Sie Text einfügen wollten, nicht gespeichert werden, und Adobe Commerce hat folgenden Konsolenfehler angezeigt: [ERROR] Page Builder was rendering for 5 seconds without releasing locks..
  • Page Builder column-block Content-Typ, der in älteren Versionen von Page Builder erstellt wurde, wird jetzt korrekt angezeigt.
  • Das Filtern nach der Beschreibung der Produktmetadaten während der Produkterstellung wurde vom Administrator verbessert. Wenn Page Builder zuvor aktiviert war, wurde die Beschreibung der Produktmetadaten basierend auf der Standard-Maske {{name}} {{description}}. Die standardmäßige Meta-Beschreibungsmaske für Produkte besteht nun aus {{name}}. GitHub-36107
  • Trigger Beim Hinzufügen eines dynamischen Bausteins ohne Inhalt tritt kein Fehler mehr auf.

Zahlung

  • Commerce verarbeitet jetzt 502-Fehler von PayPal korrekt, indem es die Auftragserstellung bei diesem Fehler verhindert. Zuvor wurden trotz eines 502-Fehlers von PayPal noch Bestellungen erstellt, was zu Inkonsistenzen zwischen Commerce-Datensätzen und PayPals führte.
  • PayPal Express-Checkout-Transaktionen beinhalten jetzt untergeordnete Produkt-SKUs und vollständige Produkttitel. Die Magento/Paypal/Model/Cart.php erfasst jetzt untergeordnete Produkt-SKUs mit ihrem übergeordneten Produkttitel, um den Produkttitel mit der untergeordneten SKU zu identifizieren. GitHub-36808
  • Die Card Security Code Does Not Match-Konfigurationseinstellung wird jetzt während des Payflow Pro-Zahlungsprozesses wie erwartet verarbeitet. Zuvor wurde dieser Bewertungsprozess nie abgeschlossen, wodurch der Checkout blockiert wurde.
  • Die Option „Vault-Zahlungsmethode“ wird nicht mehr im Admin-Checkout-Workflow angezeigt, wenn der Käufer kein Vault-Token hat. GitHub-36273
  • Die Venmo-Schaltfläche kann nun ausgeblendet werden, wenn die PayPal-Schaltflächen aktiviert sind. Zuvor konnte die Schaltfläche Venmo nicht aus dem Warenkorb, dem Mini-Warenkorb, den Produktdetails oder den Checkout-Seiten entfernt werden.
  • Käufer können jetzt beim Anwenden des Gutscheincodes während des Checkouts eine Versandmethode auswählen. Zuvor hat Commerce unter diesen Bedingungen einen Fehler gemeldet und dem Auftrag einen Pauschalversand zugewiesen.
  • Probleme mit der Verarbeitung von PayPal- und PayPal-Kreditzahlungen in der Storefront wurden behoben.
  • Gelöste Probleme mit Fallback-URLs für Bestellungen, die mit Ideal Payments bezahlt wurden, wenn die lokale Zahlung aktiviert ist.
  • Käufer können keine PayPal-Bestellung mehr erstellen, ohne einen Nachnamen hinzuzufügen.

Braintree

  • Braintree-Zahlungsinformationen werden jetzt pro Geschäft gespeichert, und Käufer sehen jetzt nur noch Karteninformationen, die in dem Geschäft gespeichert wurden, in dem sie einkaufen. Zuvor konnten Käufer gespeicherte Karteninformationen aus allen Geschäften während des Checkouts sehen. GitHub-34253
  • Käufer können jetzt eine Bestellung, die an mehrere Adressen versendet wird, mit einer Braintree-Zahlungsmethode auschecken, wenn der Tresor für Kartenzahlungen deaktiviert ist. GitHub-37615
  • Teilweise fakturierte Bestellungen werden jetzt erwartungsgemäß im richtigen Konto in Bereitstellungen erfasst, in denen Händler zwei verschiedene Händlerkonto-IDs für dieselbe Währung in ihrem Braintree-Konto haben.
  • Adobe Commerce gibt bei der Erstellung einer zweiten Teilrechnung für eine per Braintree bezahlte Bestellung keinen Fehler mehr aus, wenn die Enable Vault for Card Payments aktiviert ist. Adobe Commerce Zuvor gab es bei dem Versuch eines Händlers, eine zweite Rechnung zu erstellen, folgenden Fehler: Your payment could not be taken. Please try again or use a different payment method. Payment method token is invalid.
  • Die Option "Braintree Vault-Zahlungsmethode“ ist im Checkout-Workflow nicht mehr automatisch deaktiviert, wenn ein Käufer seine Rechnungsadresse aktualisiert. Zuvor wurde die Auswahl der Zahlungsmethode aufgehoben, wenn der Käufer die Schaltfläche "My billing and shipping address are the same" deaktiviert hatte.
  • Es wurden Probleme beim Auschecken mit PayPal über Braintree nach dem Upgrade von Adobe Commerce 2.4.5-p2 behoben. GitHub-37242
  • Telefonnummern werden jetzt wie erwartet mit Adressen in den Feldern der Google Pay-Modal-Versandadresse gerendert. Zuvor fehlten Telefonnummern.
  • Bestellungen werden jetzt erfolgreich mit Braintree aufgegeben, wenn die Braintree-Antwort einen leeren Wert für threeDSecureInfo/eciFlag enthält. Zuvor ist beim Auschecken ein PHP-Fehler aufgetreten, wenn dieser Wert leer war.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn ein Käufer beim Auschecken mit Google Pay aus dem Mini-Warenkorb einen Coupon auf der Bestellüberprüfungsseite anwendet. Zuvor wurden Käufer zu einer 404-Seite umgeleitet.
  • Käufer können jetzt den Checkout mit Braintree Payments und Adobe Commerce 2.4.6 mit unsichtbarem ReCAPTCHA v2 oder v3 abschließen. GitHub-37241
  • Käufer können nicht mehr auf die Schaltfläche PayPal klicken, um ein konfigurierbares Produkt zu kaufen, ohne zuvor die erforderlichen Optionen auszuwählen. Zuvor konnten Käufer auf die Schaltfläche "PayPal" klicken und wurden anschließend mit einem Fehler zurück zur Produktseite weitergeleitet:
  • Die Schaltfläche PayPal wird nun wie erwartet auf den Seiten Warenkorb und Mini-Warenkorb angezeigt. Zuvor wurde diese Schaltfläche nicht auf der Warenkorbseite angezeigt und auf der Mini-Warenkorbseite dupliziert.

Leistung

  • Durch mehrere Klicks im Verkauf > Bestellungen Dropdown-Menü für Massenaktionen werden keine Anforderungen für mehrere POST mehr generiert. GitHub-37997
  • Nur 200- oder 404 werden zwischengespeichert, wenn ein Käufer zu einer Seite navigiert, die eine 301-Umleitung Trigger, es sei denn, die Kopfzeile des Cache-Steuerelements der Seite enthält private . Zuvor wurde ein HTTP-Status 200 mit private im Cache-Control-Header zwischengespeichert, und ein HTTP-Status 301 wurde zwischengespeichert, es sei denn, er enthielt private im Cache-Control-Header. GitHub-36492
  • Nicht verwendetes Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper aus Magento\Catalog\Model\ProductRepository entfernt. Zuvor hat ProductRepository diesen Helper geladen, der ein Adminhtml-Controller ist. GitHub-37864
  • Verbesserte Leistung der Seitenladegeschwindigkeit, wenn viele Optionen zu gebündelten Produkten hinzugefügt werden. GitHub-29409
  • Der Prozess der Zuweisung von Produkten zu Kategorien auf der Registerkarte Products in Category wurde optimiert. Die Schaltflächen Assign und Remove auf der Registerkarte Add Product by SKU sind nun deaktiviert, bis die Produkte vollständig im Raster geladen sind. Zuvor konnten Admin-Benutzer keine Produkte nach SKU in Katalogen hinzufügen, die Millionen von registrierten Produkten enthielten.
  • Die Leistung der addProductToCart-Mutation bei der Ausführung mit vielen benutzerdefinierten Produktattributen wurde verbessert. Als diese Mutation mit vielen Produktattributen ( ca. 1.000) ausgeführt wurde, hat Commerce zuvor versucht, alle Produktattribute zu laden.
  • Leistungsprobleme beim Laden von Produktattributen, die von Warenkorbregeln verwendet werden, wurden behoben. Es werden jetzt nur noch Produktattribute für aktive Warenkorbregeln geladen.
  • Der bin/magento setup:perf:generate-fixtures setup/performance-toolkit/profiles/ee/small.xml-Befehl wird jetzt erfolgreich ausgeführt, wenn er mehrmals ausgeführt wird. Zuvor wurde dieser Fehler bei mehrmaliger Ausführung ausgegeben: Coupon with the same code already exists.

Promotion

  • Die Auswirkungen der Fixed amount discount for whole cart Preisregel werden bei Anwendung mit der Apply to shipping amount nun wie erwartet proportional auf die Produkte und Versandbeträge verteilt. Zuvor waren die Rabattberechnungen falsch.
  • Die Discard Subsequent Rules wird jetzt erwartungsgemäß angewendet. Wenn diese Einstellung aktiviert ist, können andere Regeln mit niedriger Priorität nur auf ein anderes Produkt angewendet werden. GitHub-35707

reCAPTCHA

  • Unsichtbares reCAPTCHA v3 funktioniert jetzt für die Sign in-Schaltfläche der Checkout-Seite erwartungsgemäß. Zuvor konnten sich Käufer nicht anmelden, und Commerce gab JavaScript-Fehler aus.
  • Das Google reCAPTCHA im Checkout-Workflow funktioniert jetzt für Schecks, Zahlungsanweisungen und benutzerdefinierte Zahlungsmethoden wie erwartet.
  • Adobe Commerce-Formulare können nicht mehr gesendet werden, bevor das Kontrollkästchen "Google reCAPTCHA“ geladen ist.
  • Das reCAPTCHA-Widget geht nun der Schaltfläche Place Order auf der Zahlungsseite voraus. Zuvor wurde das Widget oben auf der Seite angezeigt.

Berichte

  • Die Auswertung „Bestellungen“ (REPORTS > Sales > Orders) enthält jetzt die korrekten Bestellwerte, wenn Bestellungen von Geschäften generiert werden, die keine Standardwährungen verwenden. Zuvor enthielt dieser Bericht falsche Werte. GitHub-36742
  • Irreführende Informationen im Bestellformular wurden aus Gründen der Klarheit überarbeitet.
  • Admin-Benutzer können jetzt über die Berichtseite „Transaktionsabbrüche“ mit E-Mails nach Datensätzen suchen, die + (Pluszeichen) enthalten. GitHub-36560
  • GraphQL-Transaktionsnamen werden jetzt korrekt angezeigt, nachdem New Relic vom Commerce-Administrator deaktiviert wurde. GitHub-36112

Reviews

  • Käufer können doppelte Produktbewertungen nicht mehr schnell senden, wenn Unsichtbares reCAPTCHA v3 aktiviert ist.

Belohnungen

  • Gültigkeits-E-Mails für Prämienpunkte werden nach Ablauf der Punkte nicht mehr gesendet. Die magento_reward_balance_warning_notification und magento_reward_expire_points Cron-Aufgaben wurden überarbeitet, um die Flexibilität und die Kapazität des E-Mail-Versands zu erhöhen. Zuvor konnten Händler nicht viele E-Mails senden, die von diesen Cron-Aufgaben in einem kurzen Zeitraum generiert wurden. Dies könnte zu Verzögerungen beim Versand zeitkritischer Benachrichtigungen geführt haben.
  • Abgelaufene Prämienpunkte werden jetzt wie erwartet vom aktuellen Prämienpunktestand eines Käufers abgezogen.
  • Die E-Mail-Benachrichtigung zur Aktualisierung des Prämienpunktesaldos berücksichtigt jetzt den aktuellen Store-Kontext. Zuvor wurden für den Standardspeicher in den Einstellungen für die E-Mail-Konfiguration für die Saldoaktualisierung der Prämienpunkte die Konfigurationseinstellungen verwendet.
  • Prämienpunkte können jetzt nach der Erstellung einer Gutschrift zurückerstattet werden. Zuvor konnten Händler die Belohnungspunkte nach der Erstellung einer Gutschrift nicht zurückerstatten, und der Bestellstatus blieb Completed, nicht Closed.

RMA

  • Die REST-POST /V1/returns-Anfrage erstellt jetzt eine RMA pro Produkt. Zuvor konnte diese Anfrage die Validierung umgehen und mehrere RMAs pro Produkt zurückgeben.
  • RMA-Attribute werden jetzt automatisch zum Standard-EAV-Formular hinzugefügt, wenn das Show on Storefront RMA-Attribut auf "". Zuvor war das Popup mit den RMA-Elementdetails leer, als ein benutzerdefiniertes Rückgabeattribut erstellt wurde, und das Show on Storefront RMA-Attribut wurde auf "".
  • Der Wert des Attributs Enable RMA entspricht nun dem Wert, der in der Konfiguration angegeben ist, wenn das Kontrollkästchen Use Config auf der Seite „Produktbearbeitung“ aktiviert ist.
  • Das Enable RMA-Attribut auf individueller Produktebene berücksichtigt jetzt die Konfiguration der Store-RMA-Einstellungen. Zuvor wurde diese Einstellung beim Hinzufügen eines Produkts, unabhängig von den Store-Konfigurationseinstellungen, standardmäßig deaktiviert.

Suche search-heading

  • Die Vorschläge für die automatische Vervollständigung im Mini-Such-Frontend des Headers funktionieren jetzt erwartungsgemäß. Zuvor wurde dieses Feld bei aktivierter Funktion nicht durch automatische Vervollständigung ausgefüllt. GitHub-37557
  • Die Leistung von Abfragen in der Admin-Suchleiste wurde durch das Hinzufügen eines Indexers verbessert. Zuvor war die Abfrage umso länger auszuführen, je größer die search_query Tabelle war.
  • Die alphabetische Sortierung von Produkten nach Namen funktioniert jetzt bei Namen, die türkische Zeichen enthalten, korrekt.
  • Die Use in Search Results Layered Navigation-Produktattribut-Eigenschaft wird jetzt nur noch angezeigt, wenn Use in Search Einstellung auf Yes festgelegt ist.
  • Die erweiterten Preis- und SKU-Filter der Suche funktionieren jetzt korrekt, wenn sie in einer erweiterten Suche zusammen angewendet werden. GitHub-37581
  • Für leere Suchfelder werden keine Suchvorgänge mehr durchgeführt. Dadurch wird die Größe der search_query reduziert. Zuvor haben falsche Abfragen oder Abfragen über leere Suchfelder einen riesigen Datensatz zurückgegeben, was die Größe der search_query-Tabelle erhöht und zu Problemen mit /tmp geführt hat.
  • Storefront-Filter funktionieren jetzt wie erwartet, wenn Katalogeinträge mit benutzerdefinierten Dropdown-Attributen sortiert werden.
  • Suchergebnisse zeigen jetzt relevante Ergebnisse basierend auf der Suchgewichtung der Attribute wie erwartet an.
  • Mögliche Werte werden nun im informativen Text unter dem Storefront Properties Eingabefeld des Search Weight-Attributs unter Admin Stores > Attributes > Product beschrieben. GitHub-36646

Lieferung

  • Die Regeln für den Warenkorbpreis funktionieren jetzt wie erwartet, wenn ein Produkt-Bundle zum Warenkorb hinzugefügt wird, wenn dynamische Preisattribute deaktiviert sind. Der kostenlose Versand und die korrekte Tabellenrate werden unabhängig davon angewendet, ob das dynamische Attribut aktiviert oder deaktiviert ist. Zuvor wurde der kostenlose Versand nicht wie erwartet angewendet.
  • Commerce wechselt jetzt erwartungsgemäß auf eine neue Sendungsseite, nachdem eine Teillieferung für eine Bestellung erstellt wurde. Nachdem Commerce eine Teillieferung erstellt hatte, hat es bisher keine vollständige Sendungsseite für die restlichen Produkte der Bestellung erstellt. GitHub-38063
  • Der Gesamtbetrag für den Versand einer Bestellung an mehrere Adressen wird jetzt korrekt berechnet. Wenn ein Angebot mehr als eine Lieferadresse enthielt, aktualisierte der Gesamtsammler zuvor den Versandbetrag für die in $quote->getShippingAddress() angegebene Adresse, anstatt ihn wie erwartet $shippingAssignment übergeben. GitHub-37283
  • Commerce löst beim Checkout mit mehreren Versandadressen keine Ausnahme mehr aus, wenn der Administrator die Funktion „Als Kunde anmelden“ verwendet hat.
  • Produkte werden jetzt auf der Seite Pakete erstellen korrekt aufgelistet, wenn Sie Produkte zu einem Paket hinzufügen, nachdem das Versandlabel erstellt wurde.
  • Die cart Abfrage gibt jetzt diskrete Versandrabatte als separate Versandrabatte mit eindeutigen Rabattkennzeichnungen zurück. Die neue applied_to-Rabatteigenschaft unterstützt die Unterscheidung zwischen Rabatten, die auf einen Warenkorb-Artikel angewendet werden. Zuvor wurden alle Versandrabatte zu einem hartcodierten Shipping Discount zusammengefasst.
  • Wenn ein Administrator bzw. eine Administratorin eine neue Bestellung erstellt, werden die entsprechenden Felder automatisch durch die Rechnungs- und Versandadressen der ursprünglichen Bestellung ausgefüllt, sobald der Administrator bzw. die Administratorin auf die Schaltfläche Reorder klickt (Admin Sales > Orders > View ). Werden dieselben Adressen im Adressbuch des Käufers gespeichert, so enthält die Neubestellung immer eine aktualisierte Version dieser Adressen. Zuvor wurde das Feld „Lieferadresse“ mit den aktualisierten Daten vorab ausgefüllt, das Feld „Rechnungsadresse“ jedoch nicht.
  • Das Textfeld "Shipping Policy" ist jetzt im Bereich „Admin Store-Ansicht“ sichtbar, wenn Apply custom Shipping Policy aktiviert ist und eine benutzerdefinierte Versandrichtlinie verfügbar ist. GitHub-36425
  • Die cart-Abfrage gibt jetzt einen selected_shipping_method zurück, der einem der available_shipping_methods Provider- und Methodencodes entspricht. Wenn eine der ausgewählten Versandmethoden zuvor einen Unterstrich enthielt, stimmten diese Träger-/Methodencodes nicht überein. GitHub-36606
  • Die setShippingAddressesOnCart-Mutation gibt keinen Fehler mehr aus, wenn der zweite Wert im Straßen-Array null ist. Zuvor wurde diese Ausnahme ausgelöst: The address failed to save. Verify the address and try again. GitHub-35160

Sitemap

  • Die XML-Sitemap funktioniert jetzt in einer mehrstöckigen Bereitstellung erwartungsgemäß. Zuvor enthielten die Sitemaps nicht die zugewiesenen Standardseiten für jeden Store. GitHub-35001
  • Händler können jetzt ein Produkt erstellen und speichern, wenn der Website-id != 1 und der Einzelspeichermodus aktiviert ist. Zuvor ist die Speicheraktion mit dieser Meldung fehlgeschlagen: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails. GitHub-35009

Staging

  • Staging-Aktualisierungen für Verkaufsregeln werden nicht mehr im Staging-Dashboard dupliziert.
  • Bundle-Produkte werden jetzt ordnungsgemäß aktualisiert, wenn ein Käufer sie zu seinem Warenkorb hinzufügt, während eine Aktualisierung des Zeitplans ausgeführt wird. Wenn zuvor ein Produktpaket mit Optionen zum Warenkorb hinzugefügt wurde, während eine Zeitplanaufgabe in Bearbeitung war, gab Commerce diese Ausnahme aus: Some of the products below do not have all the required options. Please select all required options.
  • Aktualisierungen planen behalten jetzt die korrekten Preise für Bundle-Optionen bei. Zuvor wurden diese Preise für bestimmte Website- oder Store-Ansichten auf Null gesetzt.
  • Beim Aktualisieren eines geplanten Updates wird die vorherige Version des gestaffelten Elements nicht mehr entfernt, wenn kein Enddatum angegeben ist. Zuvor wurde beim Aktualisieren eines Staging-Elements die Rollback-Version des Elements entfernt, wenn kein Enddatum angegeben war. Commerce hat vor dem Löschen keinen Fehler ausgelöst oder Admin-Benutzer gewarnt.
  • Die Werte der Beschriftungen der Store-Ansicht werden nach einer geplanten Aktualisierung der Warenkorbpreisregeln nicht mehr gelöscht. Zuvor wurden diese Beschriftungen gelöscht, auch wenn sie in der Aktualisierung nicht angegeben waren.
  • Die Vorschau des Inhalts-Staging funktioniert jetzt für verknüpfte Seiten ordnungsgemäß. Zuvor konnten Sie in der Staging-Vorschau nicht zu verknüpften Seiten navigieren, wurden aber stattdessen falsch zu Storefront-Seiten weitergeleitet.
  • СDas Ändern einer Staging-Aktualisierung führt nicht mehr dazu, dass geplante Aktualisierungen entfernt werden, die einem späteren Datum zugewiesen werden.
  • JavaScript-Fehler treten nicht mehr auf, wenn Sie geplante Updates für Kategorien hinzufügen oder bearbeiten, wenn "Google Analytics-Inhaltsexperimente“ aktiviert ist.
  • Händler können jetzt eine vorhandene Zeitplanaktualisierung für eine Kategorie erfolgreich speichern, nachdem sie sie angezeigt oder bearbeitet haben. Zuvor hatte Adobe Commerce einen Fehler in system.log ausgegeben.
  • Herunterladbare Links werden jetzt erwartungsgemäß beibehalten, wenn ein geplantes Update angewendet wird, während sich zuvor hinzugefügte Produkte im Warenkorb befinden. Zuvor verschwanden herunterladbare Links von der Seite Mein Konto (Meine herunterladbaren Produkte) des Kunden und der Seite Admin-Auftragsansicht .
  • Produkte sind jetzt wie erwartet in der Storefront sichtbar, nachdem eine Staging-Aktualisierung durchgeführt wurde, die die Anwendung des Produkts aktiviert. Zuvor war das Produkt in Admin aktiviert, war aber in der Kategorie „Storefront“ nicht sichtbar, wenn der Indexermodus des Kataloginventars auf „Planmäßig aktualisieren“ festgelegt war. Durch eine vollständige Neuindizierung wurde das Problem behoben.
  • Die staging.synchronize_entity_period Verbraucherwarteschlange in der magento_bulk Tabelle erhöht sich nicht mehr, wenn keine Staging-Updates zu verarbeiten sind. Zuvor wurde, als cron für jede Minute konfiguriert wurde, jede Minute ein neuer Datensatz in Bezug auf den staging.synchronize_entity_period-Verbraucher zu dieser Tabelle hinzugefügt.
  • Adobe Commerce gibt keinen SQL-Fehler mehr aus, wenn Sie beim Speichern eines anderen Produkts eine Zeitplanänderung für ein Produkt erstellen. Zuvor hat Adobe Commerce diesen Fehler angezeigt: The product with the SKU "%1" couldn't be added to the current update.

Zielgruppenregeln

  • Target-Regeln funktionieren jetzt in verschiedenen Store-Ansichten ordnungsgemäß. Zuvor wurde durch Probleme mit dem zugehörigen Produktregel-Cache die Anzeige empfohlener Produkte in Bereitstellungen mit mehreren Stores verhindert.

Steuer

  • Rechnungen zeigen jetzt die richtige Zwischensumme an, wenn Steuern konfiguriert und FTP aktiviert ist.
  • Commerce zeigt jetzt den richtigen Wert für den Regular Price an, wenn eine benutzerdefinierte Option für ein Produkt mit einem Special Price Wert ausgewählt ist, wenn Price Display Settings auf „Steuer einschließen“ gesetzt ist.
  • Die Steuer ist jetzt wie erwartet im Versandpreis des Checkout-Workflows enthalten, wie in den Konfigurationseinstellungen angegeben.
  • Der Wert der cart Abfrage applied_taxes Antwort enthält jetzt erwartungsgemäß alle individuellen Steuerregeln. Zuvor wurde der gesamte Steuerwert zurückgegeben, wenn mehrere Steuerregeln konfiguriert waren.
  • Das Symbol „Reduzieren/Erweitern“ für den Additional Settings Abschnitt während der Erstellung von Steuerregeln funktioniert jetzt erwartungsgemäß. Zuvor funktionierte nur das Symbol „Erweitern“. GitHub-37922
  • Sie können jetzt den Wert von „Land und Region des Steuersatzes“ auf der Seite „Steuerregel bearbeiten“ wie erwartet bearbeiten. Zuvor wurden Änderungen auf dieser Seite nicht gespeichert.
  • Der Steuerbetrag im Bereich „Warenkorbschätzung“ wird jetzt wie erwartet aktualisiert, wenn die Versandmethode aktualisiert wird. Zuvor wurde der Steuersatz nicht aktualisiert, nachdem ein Käufer während des Checkouts das Land gewechselt hat.
  • Der tax class für neu erstellte einfache Produkte wird jetzt auf den Wert des übergeordneten Produkts festgelegt, wenn neue Varianten eines vorhandenen konfigurierbaren Produkts im Bereich „Store-Ansicht“ erstellt werden. Zuvor wurde dieser Wert auf „Ohne“ festgelegt. Infolgedessen wurde diesen Produkten im Warenkorb keine Steuer hinzugefügt, und die Kunden erhielten zu niedrige Steuern. GitHub-37180

Test

  • Der AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders-Test wurde verbessert, um Fehler zu vermeiden, die durch das vorzeitige Ausfüllen des E-Mail-Felds verursacht wurden.
  • StorefrontVerifyProductAfterPartialReindexOnSeveralWebsitesTest wurde überarbeitet, um die Zuverlässigkeit zu verbessern. GitHub-38359
  • Der AdminSimpleProductwithTextandVisualSwatch wurde behoben, indem ein zusätzlicher Schritt eingeführt wurde, der die bei der Suche zu verwendenden Attribute explizit festlegt.
  • Verweise auf nicht vorhandene Klassen in Modultests wurden entfernt. GitHub-37636
  • Der AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders-Test wurde verbessert, um Fehler zu vermeiden, die durch das vorzeitige Ausfüllen des E-Mail-Felds verursacht wurden.
  • Der Magento\GraphQl\Catalog\ProductSearchTest::testFilterProductsBySingleCategoryId wurde überarbeitet, um eine zufällige Kategorienreihenfolge in products Abfrageantworten zu verarbeiten.
  • Leistungsprobleme mit großen Arrays in TableNameSniff wurden behoben.
  • Integrationstests für die Funktion „Geschenkgutschein bearbeiten“ sind nicht mehr von vorhandenen Entitäts-IDs abhängig. Alle erforderlichen Daten werden nun durch Vorrichtungen gewonnen. Zuvor ist \Magento\GiftRegistry\Controller\Index\EditPostTest fehlgeschlagen.
  • CollectionTest::testGetDateRangeFirstPart() berücksichtigt jetzt die Sommerzeit.
  • Hinweis zu veralteten Versionen für StorefrontDeleteItemFromRequisitionListPrintView wurde korrigiert.

UI-Framework

  • Der Bild-Uploader funktioniert jetzt in dynamischen Zeilen erwartungsgemäß. Bilder werden jetzt korrekt hochgeladen, wenn sie als multinationales Array gesendet werden. GitHub-37957
  • Datei-Upload-Stile werden im Luma-Design nicht mehr dupliziert. GitHub-32373
  • Straßenfelder im Straßenfeld Formular zur Bearbeitung von Kundenkonten werden jetzt korrekt gespeichert. Diese Felder werden nun anhand der im Formular angegebenen Schlüssel korrekt sortiert. GitHub-37973
  • Das Cursorverhalten im Textfeld „Geschenkregistrierung Message" wurde korrigiert.
  • Die Werte für die kumulative Layout-Verschiebung (CLS) wurden für Produktdetailseiten verbessert. (Diese Metrik quantifiziert die visuelle Stabilität von Seiten-Layouts.) GitHub-35410
  • Die Fehlermeldung, die beim Rendern der Vorlage auftritt, wurde verbessert. Commerce zeigt jetzt eine informative Nachricht an. Zuvor zeigte Commerce HTML-Lecks an, wenn ein PHP-Fehler auftrat.
  • Benutzerdefinierte Kundenattribute (Typ File attached) funktionieren jetzt korrekt mit Bildern, die gelöscht und anschließend hochgeladen wurden. Zuvor konnten benutzerdefinierte Attribute, die hochgeladen, dann gelöscht und dann erneut hochgeladen wurden, nicht in der Storefront gespeichert werden.
  • Korrektur eines Syntaxfehlers in der Kalendervorlagendatei. GitHub-37725
  • Admin-Benutzer können jetzt das Logo der Storefront ändern, wenn der Einzelspeichermodus aktiviert ist. Zuvor wurde in Commerce das standardmäßige Fallback-Logo angezeigt. GitHub-35952
  • Mixins-Konfigurationswerte sind nicht mehr leer, und jQuery-Mixins funktionieren jetzt unabhängig von der Ladeposition. Zuvor wurden jQuery-Mixins nicht konsistent über Browser geladen.
  • Kennwörter werden nun wie erwartet angezeigt, wenn das Kontrollkästchen Show Password auf der Anmeldeseite aktiv ist.
  • Adobe Commerce zeigt jetzt korrekte Preise für Bundle-Produkte mit Sonderpreisen an.
  • Der Link zur GitHub-Anfragenliste in der Vorlagendatei für die Storefront-Fußzeile wurde aktualisiert. GitHub-37214
  • Das Widget Kürzlich angezeigt zeigt jetzt den korrekten Steuerbetrag in gruppierten Produktpreisen an. GitHub-35881
  • Admin-Benutzer können jetzt die anpassbaren Optionen, die für das einfache Produkt erstellt wurden, wie erwartet per Drag-and-Drop verschieben. GitHub-36051
  • Die Reihenfolge der Produkt-Dropdown-Attributtypen stimmt jetzt mit der Reihenfolge der Bilder auf der konfigurierbaren Produktseite überein. GitHub-37285
  • Systemmeldungen werden jetzt schneller geladen. Es werden nur die angezeigten Nachrichten geladen. Zuvor wurden alle Nachrichten aus der Datenbank geladen, was zeitaufwendig war.
  • Das Entfernen des Breadcrumb-Knotens durch Festlegen von remove=true über die Layout-XML führt nicht mehr dazu, dass der Seitentitel auf der Kategorieseite entfernt wird. Zuvor wurde durch das Entfernen von Breadcrumbs der Seitentitel von der Kategorieseite entfernt.
  • Das Formular zur Kundenregistrierung wird jetzt erwartungsgemäß geladen, wenn es Kundenattribute mit mehreren Auswahlen enthält. Zuvor gab es in Adobe Commerce diese Ausnahme: [2023-03-05T05:57:40.032602+00:00] report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62. GitHub-37189
  • Willkommensnachrichten, die einfache Anführungszeichen enthalten, werden jetzt korrekt und ohne Konsolenfehler in der Storefront gerendert. Wenn eine Begrüßungsnachricht zuvor ein einfaches Anführungszeichen enthielt, wurde die Begrüßungsnachricht beim Storefront-Rendering nicht geladen. In Adobe Commerce wurden auch Konsolenfehler angezeigt.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn Sie versuchen, auf der Admin-Auftragsseite schnell die Ansicht zwischen Kommentarverlauf und Rückgabe zu ändern. Zuvor hat Adobe Commerce diesen allgemeinen Fehler angezeigt: A technical problem with the server created an error.
  • Admin-Benutzer mit Berechtigungen, die auf eine Website beschränkt sind, können jetzt Website-spezifische Produktattribute aktualisieren, die auf einen all stores view Bereich eingestellt sind.
  • Das Widget „Vergrößerung“ wird nun wie erwartet auf der Produktseite geladen.
  • Mehrzeilige, anpassbare Optionen werden jetzt ordnungsgemäß in PDF-Dokumenten für Rechnungen, Lieferungen und Gutschriften dargestellt. Zuvor ging dem mehrzeiligen Text ein unerwarteter Seitenumbruch voraus. Wenn der Text die Seitenlänge überschritt, wurde der Text abgeschnitten.
  • Admin-Benutzer können jetzt über den Admin eine neue Kundenadresse hinzufügen, wenn dieser Kunde für eine andere Website erstellt wurde, deren Store-ID nicht mit der Website-ID übereinstimmt. Zuvor hat Adobe Commerce diese Popup-Meldung angezeigt: Something went wrong. GitHub-36582
  • Wenn E-Mails mit der Rolle „Unternehmensadministrator zuweisen“ eine CMS Block URL enthalten, werden Details zum Unternehmensadministrator erwartungsgemäß gespeichert und Administratoren werden korrekt umgeleitet.
  • Fehlermeldungen im Zusammenhang mit dem Senden von Kommentaren auf der Seite „Bestelldetails“ sind jetzt informativer. Wenn ein Käufer zuvor auf Submit comment geklickt hat, ohne den Bestellstatus zu ändern oder Text in den Kommentarbereich einzugeben, hat Adobe Commerce folgende Meldung angezeigt: The comment is missing. Enter and try again.
  • Das Kalendersymbol wird nun wie erwartet in den Datumsbereichsfeldern unter Admin Marketing > Cart Price Rules angezeigt, nachdem ein Datum für ein Feld ausgewählt wurde. Nachdem Sie zuvor ein Datum für ein Feld ausgewählt haben, wurde das Kalendersymbol nicht mehr in anderen Feldern angezeigt, und Adobe Commerce zeigte Platzhaltertext an. GitHub-36499
  • Kundenregistrierungsformulare, die Mehrfachauswahlfelder enthalten, werden jetzt erfolgreich geladen. Zuvor wurde dieses Formular nicht geladen, wenn es Felder mit Mehrfachauswahl enthielt, und der folgende Fehler wurde ausgelöst: report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62. GitHub-37189
  • Wenn Sie im Vollbildmodus der Produktgalerie auf eine Videominiatur klicken, wird das Video jetzt wie erwartet angezeigt. Zuvor wurde das Video nicht angezeigt und in der Browser-Konsole wurde ein JavaScript-Fehler angezeigt. GitHub-36456
  • Der Copyright-Zeile wurde eine Variable hinzugefügt, die jedes Jahr automatisch aktualisiert wird. GitHub-36776
  • Der Bildregler auf der Produktseite funktioniert jetzt in der Mobilansicht wie erwartet. Zuvor wurde nur das erste Bild erfolgreich angezeigt. GitHub-37232

URL-Neuschreibungen

  • Das Attribut crossorigin wurde linkTypes für HEAD Elemente hinzugefügt.GitHub-32509
  • URL-Neuschreibungen werden jetzt basierend auf der Sichtbarkeitskonfiguration auf Store-Ebene in Bereitstellungen mit mehreren Stores generiert. Zuvor wurden URL-Neuschreibungen für nicht standardmäßige Stores nicht generiert, wenn die Produktansicht unter dem Standard-Store Bereich auf nicht sichtbar“ festgelegt war.
  • Category::getUrl() ruft keine 301-Umleitung mehr ab. GitHub-38152
  • Commerce generiert beim Generieren fehlender URL-Neuschreibungen für benutzerdefinierte Stores keine Produkt-URL-Neuschreibungen mehr für Stammkategorien und für Produkte, die in Multi-Store-Setups auf Not Visible Individually eingestellt sind.
  • Kanonische URL-Tags spiegeln jetzt die Änderungen wie erwartet wider, nachdem die Eigenschaft für den URL-Schlüssel der Kategorie aktualisiert wurde. Zuvor wurde die veraltete Kategorie-URL verwendet, was sofort die Umleitung zur neuen URL auslöste.
  • Produkt-URL-Neuschreibungen für Kategorien werden jetzt wie erwartet für alle Store-Ansichten generiert, wenn ein Produkt zu einer Kategorie hinzugefügt wird. GitHub-32910
  • Commerce gibt keinen Fehler mehr aus, wenn Sie versuchen, eine 301/302-Umleitung für eine Produkt-URL zu erstellen, wenn Neuschreibungen von Kategorie-/Produkt-URL aktiviert ist. Wenn ein Produkt erstellt und einer Kategorie zugewiesen wird, werden automatisierte URL-Neuschreibungen erstellt: eine für die direkte URL und eine für das Produkt über den Kategoriepfad. Wenn eine neue Neufassung der Produkt-URL erstellt wird, werden die Korrelationen zwischen Produkt, Kategorie und Store überprüft. Diese Prüfung basiert jetzt auf korrelierten Entitätseigenschaften (Kategorie und Produkt). Zuvor wurde diese Prüfung für bereits vorhandene URL-Neuschreibungen durchgeführt.
  • Kategorie-URL-Neuschreibungen werden jetzt für alle Store-Ansichten generiert, wenn eine neue Kategorie aus einer CSV-Datei importiert wird.
  • Die Suffix-Konfigurationen für Produkt-URLs und Kategorie-URLs stimmen jetzt mit den Suffixen in der url_rewrite überein. Zuvor traten Wettbewerbsbedingungen beim Aktualisieren von URL-Suffix-Konfigurationen auf, und die konfigurierten URL-Suffixe und die url_rewrite-Tabelle stimmten nicht überein.
  • Adobe Commerce rendert die Kategoriestruktur jetzt beim Erstellen von Kategorie-URL-Neuschreibungen auf allen Ebenen. Zuvor wurden nur die ersten drei Kategorieebenen angezeigt. GitHub-36973
  • Neu erstellte CMS-Seiten mit einem untergeordneten Knoten sind jetzt im Marketing-Filterraster enthalten (Marketing > URL rewrites). Zuvor wurden URL-Neuschreibungen für diese CMS-Seiten nicht erstellt.
  • Kategorie-URL-Neuschreibungen sind jetzt während des Imports einer neuen Kategorie in der CSV-Datei vorhanden.
  • Multi-Store-CMS-Seiten ohne URL-Neuschreibungen werden jetzt erwartungsgemäß weitergeleitet. Zuvor wurden angeforderte CMS-Seiten mit mehreren Shops ohne URL-Neuschreibungen zur Store-Startseite umgeleitet, die ursprünglichen CMS-Seiten jedoch nicht.

Visual Merchandiser

  • Sie können jetzt das Categories-Attribut für visuelle Merchandiser-Regeln verwenden. Zuvor gab es in Adobe Commerce diese Ausnahme: Something went wrong while saving the category.

Web-API-Framework

  • Commerce zeigt in Admin System > Extensions > Integrations keine Integration not secure mehr an, wenn die Callback URL- und Identity link URL leer sind. GitHub-36407
  • taxes-, itemized_taxes- und additional_itemized_taxes-Erweiterungsattribute wurden hinzugefügt zu Magento\Sales\Api\Data\OrderInterface. Mit diesen Attributen können Sie angewendete Steuern mit REST-Aufrufen für Bestellungen speichern.
  • Die Tier Prices REST-API unterstützt jetzt Dezimalmengen. Zuvor hat diese API keine Dezimalgrößen zugelassen, selbst wenn die Use Decimal Quantity aktiviert war.
  • Der REST-V1/orders/{id}/comments-Endpunkt ändert den Status einer Bestellung nicht mehr, wenn versucht wird, dem Status einer ausstehenden Bestellung einen Kommentar hinzuzufügen. Jetzt wird ein informativer Fehler ausgegeben. Zuvor hat dieser Endpunkt beim Hinzufügen eines Kommentars den Bestellstatus geändert.
  • Der REST-API-GET und POST V1/products/attributes Endpunkt geben nicht mehr denselben Wert für das is_filterable-Attribut sowohl für die Filterable(with results)- als auch für Filterable(no results)-Optionen der Use in Layered Navigation-Option zurück. Zuvor gab dieser Endpunkt denselben Wert zurück, da die is_filterable-Attributeigenschaft vom Typ Boolean war, was das Festlegen dieser Eigenschaft auf Filterable(no results) nicht zuließ. GitHub-37979
  • Das fehlende media_gallery_entries wurde zum REST-V1/configurable-products/sku/children-Endpunkt hinzugefügt. Zuvor fehlte dieser Funktion der Code, der zum Speichern und Anzeigen von media_gallery_entries benötigt wurde. GitHub-37607
  • Die REST-V1/carts/mine/estimate-shipping-methods-Methode validiert jetzt alle Ebenen der Payload-Felddaten und gibt einen 400-HTTP-Code für ungültige Daten zurück. Zuvor wurde nur die erste Ebene der API-Payload validiert, und wenn ungültige Daten in nicht validierten Ebenen der Payload zurückgegeben wurden, gab Commerce einen Status-Code von 500 zurück.
  • Asynchrone Massen-REST-API-Vorgänge zum Aktualisieren von Produkten mit Stufenpreisen und verschiedenen Attributsätzen wurden jetzt erfolgreich abgeschlossen. Zuvor konnten Produkte mit unterschiedlichen Attributsätzen nicht auf diese Weise aktualisiert werden, und Commerce hat folgenden Fehler angezeigt: The product was unable to be saved. Please try again.
  • Der POST /V1/products/tier-prices-Endpunkt gibt jetzt eine informativere Fehlermeldung zurück, wenn bei der Erstellung des Stufenpreises ein ungültiger Kundengruppenname verwendet wird. Zuvor hat Adobe Commerce einen Fehler wie den folgenden zurückgegeben: Notice: Undefined index: XXXXX in ~/public_html/vendor/magento/module-catalog/Model/Product/Price/Validation/TierPriceValidator.php on line 474". GitHub-36431
  • Sie können jetzt eine autorisierte asynchrone Massen-API-Anfrage ausführen, um Kunden mit einer nicht standardmäßigen Gruppen-ID zu erstellen. Zuvor wurde bei diesen Anfragen die Gruppen-ID auf den Standardwert zurückgesetzt.
  • Kunden, die mit der Bulk API erstellt wurden, erhalten jetzt E-Mails zur Kundenregistrierung in der Sprache, die auf der ihnen zugewiesenen Website konfiguriert ist. Zuvor wurden alle E-Mails an das Standardgebietsschema gesendet, nicht an das Gebietsschema der Website, der der Kunde zugewiesen ist.
  • Der POST V1/guest-carts-Aufruf sendet keine Gastbestellungen mehr, wenn Allow Guest Checkout deaktiviert ist.
  • Sie können jetzt eine Bestellung über den Administrator mit dem Status Received öffnen, wenn AsyncOrder nicht aktiviert ist. Zuvor konnten Sie die Seite mit den Bestelldetails nicht über den Administrator öffnen, wenn der Bestellstatus von POST V1/orders geändert wurde.
  • Adobe Commerce gibt jetzt erfolgreich das content-Attribut (base64-Bild-Code) in GET V1/products/sku/media Produktmedien-API-Antworten zurück. Das content-Attribut war zuvor nicht in der Antwort enthalten.

Wunschliste

  • Commerce zeigt jetzt eine Meldung an, die besagt, dass ein Artikel bereits zu einer Wunschliste hinzugefügt wurde, wenn ein Käufer mehrmals versucht, denselben Artikel zu einer Wunschliste hinzuzufügen. Zuvor hat Commerce unter diesen Bedingungen die Produktmenge in der Wunschliste erhöht.
  • Adobe Commerce fügt jetzt erfolgreich Produkte mit erforderlichen hochgeladenen anpassbaren Optionsdateien zur Wunschliste hinzu. Zuvor hat Commerce zwei Produkte auf die Wunschliste gesetzt, nicht eines. GitHub-37437

Systemanforderungen

Unser Technologie-Stack basiert auf PHP und MySQL. Weitere Informationen finden Sie unter Systemanforderungen.

Anweisungen zur Installation und Aktualisierung

Sie können Adobe Commerce 2.4.7 mit Composer installieren.

recommendation-more-help
1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f