Versionshinweise zu Adobe Commerce 2.4.7

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

NOTE
Adobe Commerce-Versionen können abwärtskompatible Änderungen (BICs) enthalten. Informationen zum Überprüfen rückwärtsinkompatibler Änderungen finden Sie unter BIC-Referenz. Wichtige rückwärtskompatible Probleme werden unter BIC-Highlights beschrieben. Nicht alle Versionen führen wichtige BICs ein.

Weitere Versionsinformationen

Obwohl Code für diese Funktionen mit Versionen des Adobe Commerce-Kerncodes gebündelt ist, werden mehrere dieser Projekte (z. B. B2B und Progressive 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.

Adobe Commerce 2.4.7 - Highlights

Beachten Sie die folgenden Highlights in dieser Version.

Sicherheitsverbesserungen

Diese Version enthält dieselben Sicherheitsverbesserungen und Verbesserungen der Plattformsicherheit, die in Adobe Commerce 2.4.6-p5, 2.4.5-p7 und 2.4.4-p8 enthalten sind. Unter Adobe-Sicherheitsbulletin finden Sie die aktuelle Diskussion zu diesen behobenen Problemen.

Bisher sind keine bestätigten Angriffe im Zusammenhang mit diesen Problemen aufgetreten. Bestimmte Schwachstellen können jedoch potenziell ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Admin erhält. Daher möchten wir Sie daran erinnern, alle erforderlichen Schritte zum Schutz Ihres Administrators zu unternehmen, einschließlich, aber nicht beschränkt auf diese Bemühungen:

  • IP-auf die Zulassungsliste setz
  • Zweifaktorauthentifizierung
  • Verwendung eines VPN
  • Verwendung eines eindeutigen Standorts anstelle von /admin
  • Gute Passworthygiene

Zusätzliche Sicherheitsverbesserungen

Verbesserungen der Sicherheit in dieser 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 Bausteine 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 Syntax der Vorlagenanweisung oder die Methoden setCacheKey oder setData festgelegt werden.)
    • Nicht generierte Cache-Schlüssel für Blöcke dürfen jetzt nur Buchstaben, Ziffern, Bindestriche (-) und Unterstriche (_) enthalten.
  • Beschränkungen der Anzahl der automatisch generierten Couponcodes. Commerce beschränkt jetzt die Anzahl der automatisch generierten Couponcodes. Der Standardwert ist maximal 250.000. Händler können die neue Konfigurationsoption Code Quantity Limit (Stores > Settings:Configuration > Customers > Promotions) verwenden, um zu verhindern, dass das System mit vielen Coupons überlastet wird.

  • Optimierung des standardmäßigen Prozesses zur URL-Erstellung für Administratoren. Die Generierung der Standard-Admin-URL wurde für eine erhöhte Zufälligkeit optimiert, wodurch generierte URLs weniger vorhersagbar werden.

  • Subresource Integrity (SRI)-Unterstützung wurde hinzugefügt, um 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 Integrations-Hashes für alle JavaScript-Assets, die sich im lokalen Dateisystem befinden. Die standardmäßige SRI-Funktion wird nur auf den Zahlungsseiten für die Admin- und Storefront-Bereiche implementiert. Händler können die Standardkonfiguration jedoch auf andere Seiten erweitern. Siehe Subresource Integrity im Commerce PHP Developer Guide.

  • Änderungen an der Content Security Policy (CSP) - Konfigurationsaktualisierungen und -verbesserungen für Adobe Commerce Content Security Policies (CSPs), um die Anforderungen von PCI 4.0 zu erfüllen. Weitere Informationen finden Sie unter Inhaltssicherheitsrichtlinien im Commerce PHP Developer Guide.

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

    • Es wurde ein Nonce-Anbieter hinzugefügt, um die Ausführung von Inline-Skripten in einer CSP zu ermöglichen. Der Nonce-Provider erleichtert die Generierung eindeutiger Nonce-Zeichenfolgen für jede Anfrage. Die Zeichenfolgen werden dann an die CSP-Kopfzeile angehängt.

    • Es wurden Optionen hinzugefügt, mit denen benutzerdefinierte URIs konfiguriert werden können, um CSP-Verstöße für die Seite "Auftrag erstellen"in der Admin- und die Seite "Auschecken"im Storefront zu melden. Sie können die Konfiguration vom Administrator hinzufügen oder den URI zur Datei config.xml hinzufügen.

      note note
      NOTE
      Die Aktualisierung der CSP-Konfiguration auf den Modus "restrict"kann vorhandene Inline-Skripte auf Zahlungsseiten in Admin und Storefront blockieren, was beim Laden einer Seite den folgenden Browserfehler 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 Whitelist so aktualisieren, dass erforderliche Skripte zugelassen werden. Siehe Fehlerbehebung im Commerce PHP Developer Guide.
  • Eine neue Einstellung für die Vollseitencache-Konfiguration kann dazu beitragen, die Risiken im Zusammenhang mit dem HTTP {BASE-URL}/page_cache/block/esi-Endpunkt zu verringern. Dieser Endpunkt unterstützt nicht eingeschränkte, dynamisch geladene Inhaltsfragmente aus Commerce-Layout-Handles und -Blockstrukturen. Die neue Konfigurationseinstellung Handles params size legt den Wert des Parameters handles 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 über Admin ändern (Stores > Settings:Configuration > System > Full Page Cache > Handles params size). Siehe Konfigurieren der Commerce-Anwendung für die Verwendung von Varnish.

  • Native Ratenbegrenzung für Zahlungsinformationen, die über REST- und GraphQL-APIs übermittelt werden. Händler können jetzt die Ratenbegrenzung für die Zahlungsinformationen konfigurieren, die mit REST und GraphQL übertragen werden. Diese zusätzliche Schutzschicht unterstützt die Vermeidung von Kartenangriffen und verringert möglicherweise das Volumen von Kartenangriffen, bei denen viele Kreditkartennummern gleichzeitig getestet werden. 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) wurde 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 "Enable Guest Checkout Login"im Admin auf "yes"festlegen. Dies kann jedoch Kundeninformationen für nicht authentifizierte Benutzer verfügbar machen.

Plattformverbesserungen

Plattformaktualisierungen 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 die Unterstützung für PHP 8.3 ein. Commerce unterstützt jetzt sowohl PHP 8.3 als auch 8.2. PHP 8.2 wird bis zu seinem Ende des Dienstes (EOS) im Dezember 2025 unterstützt. Nach Dezember 2025 sollten alle Händler, die 2.4.7-Bereitstellungen ausführen, auf PHP 8.3 migrieren.

Adobe Commerce 2.4.7 ist weiterhin nur zu Aktualisierungszwecken mit PHP 8.1 kompatibel. PHP 8.1 wird nicht unterstützt und wird nicht empfohlen. Adobe Commerce 2.4.7 Core-Code, alle gebündelten Erweiterungen sowie alle Adobe-eigenen Erweiterungen und SaaS-Dienste sind mit PHP 8.3 kompatibel.

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

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

  • Unterstützung des Unterschiedlichen Cache 7.4. Diese Version ist mit der neuesten Version von Varnish Cache 7.4 kompatibel. Die Kompatibilität bleibt mit den Versionen 6.0.x und 7.2.x bestehen. Wir empfehlen jedoch die Verwendung von Adobe Commerce 2.4.7 nur mit Version 7.4 (Varnish Cache) oder Version 6.0 (LTS).

  • Kompatibilität mit Elasticsearch 8.11

  • Unterstützung von OpenSearch 2.12 und OpenSearch 1.3

  • Redis 7.2

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

  • jquery/fileUpload -Bibliothek wurde entfernt.

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

Weitere Upgrades

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

  • Das Commerce UPS XML API Gateway wurde in die neue Commerce UPS REST API migriert, um Aktualisierungen zu unterstützen, die UPS an seinem API-Sicherheitsmodell vornimmt. (UPS implementiert ein OAuth 2.0-Sicherheitsmodell (Trägertoken) für alle APIs.) Alle vorherigen Commerce UPS XML-APIs wurden aus der Codebasis von Adobe Commerce 2.4.7 entfernt.

  • Die Adobe Commerce Integration mit FedEx wurde von veralteten FedEx-WSDL-Webdiensten auf die neuesten FedEx-RESTful-APIs migriert. FedEx Web Services Tracking, Address Validation und Validate Postal Codes WSDLS wird im Mai 2024 eingestellt.

  • Unterstützung für die neue Versandmethode USPS Ground Advantage. Dies ist eine vordefinierte Integration in die neue Versandmethode von USPS, USPS Ground Advantage, die im Juli 2023 veröffentlicht wurde. Diese neue Integration kann verwendet werden, um Versandtarife abzurufen und Sendungen und Rückgaben über den USPS-Versanddienst zu planen. Die Versandmethode "USPS Ground Advantage"ersetzt diese Versandmethoden, die bei der Veröffentlichung der Versandmethode USPS Ground Advantage Versand eingestellt wurden:

    • USPS Retail Ground
    • erstklassiger Paketdienst
    • Parzelle auswählen Boden
  • Temando-Versandmodule wurden aus der Commerce-Codebasis entfernt. Diese Funktion wurde in Adobe Commerce 2.4.4 eingestellt.

Leistungsverbesserungen und Verbesserungen der Skalierbarkeit

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

  • Unternehmenshändler können in Adobe Commerce jetzt bis zu 1 Million aktive, auf Gutscheinen basierende Preisregeln für den Warenkorb konfigurieren, ohne dass die Leistung von Warenkorb- und Kassenvorgängen erheblich beeinträchtigt wird.

  • Verbesserte Indexverwaltung. Der neue Befehl indexer:set-status unterstützt die dynamische Verwaltung des Indexerstatus. Administratoren 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, z. B. 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.

  • Seite mit Produktlisten für komplexe Produkte mit vielen Optionen. Die Ladezeit für Produktseiten mit komplexen Produkten mit mehr als 100 Optionen wurde verbessert. Die Leistung von GraphQL-Anfragen zur Auflistung von Produkten nach Kategorie wurde ebenfalls verbessert.

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

  • Leistungsverbesserungen bei den Verkaufsregeln. Verbesserte Leistung von Unternehmensbereitstellungen mit vielen (rund 100.000) aktiven Vertriebsregeln. Bei Enterprise-Bereitstellungen, die Promotions stark implementieren, werden häufig viele aktive Warenkorbregeln bereitgestellt. Bei diesen Arten von Unternehmensimplementierungen, die mit Commerce 2.4.7 ausgeführt werden, wird keine Leistungsbeeinträchtigung im Zusammenhang mit der Anzahl der konfigurierten Warenkorbpreisregeln während des Checkout-Vorgangs auftreten.

  • 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 Modul Async Config ermöglicht asynchrone Konfigurationsspeichervorgänge, indem ein Cron-Auftrag ausgeführt wird, der mithilfe eines Verbrauchers den Speichervorgang in einer Nachrichtenwarteschlange verarbeitet. AsyncConfig ist standardmäßig deaktiviert.

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

GraphQL Application Server

Mit dem GraphQL-Anwendungsserver kann Adobe Commerce den Status von Commerce-GraphQL-API-Anforderungen beibehalten und ist nicht mehr erforderlich. Dies führt zu einem höheren Durchsatz, einer geringeren Latenz und einer effizienten Ressourcenverwendung für alle GraphQL-APIs. Durch die gemeinsame Nutzung des Anwendungszustands zwischen den Prozessen werden GraphQL-API-Anfragen deutlich effizienter und GraphQL-API-Antworten sind im Durchschnitt um 30 % schneller.

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

NOTE
GraphQL Application Server ist derzeit nicht mit Amazon Simple Storage Service (AWS S3) kompatibel. Kunden von Adobe Commerce in Cloud-Infrastruktur, die derzeit AWS S3 für Remote-Speicher verwenden, können den GraphQL-Anwendungsserver erst dann verwenden, wenn Adobe später im Jahr 2024 einen Hotfix veröffentlicht.

Metapaket zur Adobe Commerce-Erweiterung

Mit dieser Version wird das Adobe Commerce Extension-Metapaket v2.0.0 eingeführt, in dem ausgewählte Adobe Commerce-Erweiterungen automatisch in dieser Kernversion gebündelt werden. Die Versionen dieser Erweiterungen, die in diesem Metapaket enthalten sind, werden installiert, wenn composer update ausgeführt wird. Dies vereinfacht die Aktualisierung dieser Erweiterungen bei der Aktualisierung auf die neueste Kernversion. Diese Erweiterungen verwalten unabhängige Veröffentlichungszeitpläne.

Das Metapaket für die Adobe Commerce-Erweiterung für Adobe Commerce 2.4.7 umfasst 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 Entwicklern, die synchrone Logik zu konfigurieren, um Aufrufe an externe Systeme auszuführen, wenn ein Adobe Commerce-Ereignis-Trigger auftritt. Synchrone Aufrufe sind erforderlich, wenn Commerce einen Wert wie z. B. die Bestellsumme, die Steuer oder die Zahlung sofort über einen Drittanbieter-Endpunkt berechnen oder validieren und das Ergebnis anschließend wieder in Adobe Commerce schreiben muss.

Commerce-Webhooks sind 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) gepackt, 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 der Aktualisierung auf die bevorstehende Version von B2B 1.5.0 GA warten, die Unterstützung für PHP 8.3 beinhaltet. Siehe B2B-Versionshinweise.

Braintree

  • Vaulted PayPalund Pay Later Änderungen—Abgemeldete Kunden, die ihr PayPal-Konto zuvor abgerufen/gespeichert haben, haben die Möglichkeit, Folgendes zu bezahlen:

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

  • Vault Apple Pay Payments—Ermöglichen Sie angemeldeten Kunden, ihre Apple Pay-Zahlungen an ihr Commerce-Speicherkonto zu verwerten/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—Ermöglichen Sie angemeldeten Kunden, ihre Google Pay-Zahlungen an ihr Commerce-Speicherkonto zu verwerten/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—Ermöglichen Sie angemeldeten Kunden, ihre Venmo-Konten für zukünftige Transaktionen in ihrem Commerce-Speicherkonto zu verwerten/zu speichern. 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 an ihr Commerce-Speicherkonto zu übergeben/zu speichern, damit sie sie für zukünftige Transaktionen verwenden können. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.

  • Express PaymentSchaltflächen am oberen Rand des Checkout - Um ein schnelleres Checkout-Erlebnis zu ermöglichen, haben wir am Anfang des Checkout Express Payment Optionen eingeführt. Kunden können jetzt mit den Zahlungen PayPal, PayPal Pay Later, Apple Pay und Google Pay Express zahlen.

  • BraintreeVersionshinweise und Support-Links in der Admin-Konfiguration - Händler können jetzt direkt vom Commerce-Administrator auf den Braintree-Support und die Versionshinweise online verweisen.

  • GraphQL-Unterstützung für alle Braintree -Zahlungsmethoden mit Ausnahme vonVenmo - In der GraphQL-API werden weitere Konfigurationen bereitgestellt. Dies ist besonders für Headless-Anwendungen nützlich.

  • VaultingZahlungen im Kontenbereich—Angemeldete Kunden können jetzt Vault/store neue Kredit-/Debit-Karten und PayPal Konten im Kundenkontobereich verwenden. Zuvor konnten Kunden beim Speichern ihrer Zahlungen für eine spätere Verwendung nur Vault/Speicher speichern, wenn sie eine Transaktion beim Checkout abschließen. Jetzt können sie neue Kredit-/Debitkarten und PayPal-Konten verwerten, ohne eine neue Transaktion erstellen zu müssen.

  • Frictionless Transactions—Frictionless-Transaktionen beschleunigen den Zahlungsvorgang, indem sie die Anzahl der Klicks/Schritte des Kunden reduzieren, um eine Online-Kreditkarten-/Debitkartentransaktion abzuschließen. Zuvor (wenn 3DS aktiviert war) wurde jeder Kunde mit 3DS konfrontiert. Mit der neuen Funktion "Frictionless Transactions"werden Kunden nur dann für 3DS herausgefordert, wenn sie von der Bank angefordert werden. Dies reduziert den Warenkorbabbruch, erhöht die Konversionsraten und führt zu mehr Umsatz.

  • Webhooks dispute: Wenn ein Kunde eine Transaktion in Braintree anfechtet, wird der Streitstatus jetzt an Commerce weitergeleitet. Er ist im Raster Sales > Order durchsuchbar und an jede Bestellung angehängt.

Commerce-Integration mit Adobe IMS

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

GraphQL

Commerce 2.4.7 beinhaltet verbesserte Caching-Funktionen in GraphQL, Unterstützung des GraphQL-Schemas für benutzerdefinierte Attribute, Unterstützung für Abbruch von Headless-Bestellungen und verbessertes Resolver-Caching.

  • Flexiblere Verwaltung des Warenkorbs. Die clearCart -Mutation löscht jetzt den Inhalt eines bestimmten Warenkorbs in einer einzigen Aktion. Sie ersetzt die nicht mehr unterstützte clearCustomerCart-Mutation.

  • Verbesserungen bei der Erstellung 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 angemeldeten Kunden war.

  • Bestellelemente enthalten jetzt Produktbilder. OrderItemInterface zeigt Produktbilder an, die es ermöglichen, Bilder mit bestellten Produkten zu verknüpfen und effizienter zu laden. GitHub-32369

  • Erweiterte Unterstützung für Resolver-Caching. Die folgenden GraphQL-Abfrageauflöser können jetzt im GraphQL Resolver Results-Cache zwischengespeichert werden, was die Leistung bei Abfragen mit POST-Anforderungen verbessert:

    • 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 die Stornierung einer Bestellung. Mit der Mutation cancelOrder kann ein Kunde eine Bestellung stornieren und dabei die Kennung und einen Stornogrund übergeben.

  • Erweiterte Unterstützung für benutzerdefinierte Attribute. Die Unterstützung benutzerdefinierter GraphQL-Attribute wurde durch die Anreicherung von API-Daten verbessert, um alle Attributtypen zu unterstützen. Das GraphQL-EAV-Attributschema unterstützt jetzt das Erweitern von Kundenattributen und Kundenadressen-Objekten in der Admin-Konsole und das Abrufen dieser Attribute mithilfe von GraphQL. Zu den speziellen Verbesserungsbereichen gehören:

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

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

Neue Felder für bestehende Mutationen

  • Das Feld quickorder_active wurde zu den Abfragen storeConfig und availableStores hinzugefügt. Dieses Feld gibt an, ob die Funktion für die schnelle Bestellung aktiviert ist.

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

    • fax
    • middlename
    • prefix
    • suffix

Neue Abfragen und Mutationen

Eingestellte Abfragen und Mutationen

Inventory management

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

Zahlungen

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

  • Der Kreditkartengewinn wurde für alle Zahlungsmethoden mit Ausnahme von Venmo verbessert. Käufer können jetzt ihre ACH-Zahlungen ungültig machen oder speichern und sie auf ihrer Kontoseite anzeigen oder löschen. Merchants können JEDE ausgewerteten Zahlungen vom Administrator aktivieren und deaktivieren.

  • Der Checkout-Workflow enthält jetzt einen Expresszahlabschnitt mit den Schaltflächen PayPal, Google Pay und Apple Pay Express .

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 zugehörigen Adobe Commerce-Kernversionen.

Web-API-Framework

Arbeiten mit mehreren Gutscheinen pro Warenkorb

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

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

Geben Sie alle Couponcodes 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

Hängen Sie einen Gutscheincode an einen Warenkorb an:

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

Ersetzen Sie Couponcodes in einem Warenkorb:

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

Entfernen Sie Couponcodes aus einem Warenkorb:

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

Zusätzliche Endpunkte
Mit dieser Version werden zwei neue REST-Endpunkte eingeführt, die eine Problemumgehung für eine Beschränkung mit den REST-API-Endpunkten GET und POST V1/products/attributes bieten. Diese Endpunkte geben denselben Wert für das Attribut is_filterable für die Optionen Filterable(with results) und Filterable(no results) der Option Use in Layered Navigation zurück. (Die Eigenschaft "is_filterable"-Attribut hat den Typ "Boolean", was die Festlegung dieser Eigenschaft auf "Filterable(no results)"nicht zulässt.)

Zwei neue REST-Endpunkte wurden als Problemumgehung 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

Hunderte von Problemen wurden im Adobe Commerce 2.4.7-Kerncode behoben. Eine Untergruppe der in dieser Version enthaltenen behobenen Probleme wird nachfolgend beschrieben. In früheren Beta-Versionen von Commerce 2.4.7 enthaltene Fehlerbehebungen werden ebenfalls beschrieben.

Installation, Aktualisierung, Bereitstellung

  • Unnötige Cache-Manipulationen wurden aus dem Einrichtungsprozess entfernt. Zuvor hat Commerce seine Konfiguration beim Ausführen von bin/magento setup:db-data:upgrade oder bin/magento setup:upgrade unnötig auf die Festplatte geschrieben, was bei einigen Modulen während der Einrichtung Probleme verursachte. GitHub-38124
  • Bereitstellungsprobleme aufgrund unzureichender Speicherkapazität und großer Tabellen wurden behoben. Der Befehl bin/magento setup:upgrade schlägt aufgrund von speicherüberschreiteten Fehlern, die mit großen MySQL-Tabellen verbunden sind, nicht mehr fehl.
  • bin/magento setup:install wird nun erfolgreich abgeschlossen, nachdem app/etc/config.php gelöscht wurde. Zuvor wurde die fehlende Datei während der Installation nicht neu generiert und Commerce hat einen Fehler ausgegeben. GitHub-37805
  • bin/magento setup:upgrade wurde umstrukturiert, um bei der Installation eines neuen Moduls, das sowohl Tabellen als auch zugehörige mview -Indexer installiert, erfolgreich ausgeführt zu werden. GitHub-37304
  • Die Datenbankwiederherstellung schlägt aufgrund eines Trennzeichenfehlers nicht mehr fehl. Zuvor gab Commerce diesen Fehler aus, als bin/magento setup:rollback --db ausgeführt wurde: 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 Befehl bin/magento setup:upgrade schlägt bei diesem Typ von MySQL-Speicherbegrenzungsfehler nicht mehr fehl: PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes). Die Migration von Attributen mit Mehrfachauswahl wurde optimiert, um während von setup:upgrade weniger Speicher zu verbrauchen.
  • Die Erstellung einer Datenbanksicherung funktioniert jetzt sowohl über die Admin- als auch über die Befehlszeile wie erwartet. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben: 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 Parameter --lock-db-prefix anzugeben, wird der aktuelle Wert nicht mehr aus der Datei env.php gelöscht.
  • Die Konfiguration von Varnish wurde aktualisiert, um zu verhindern, dass Gastbenutzer auf zwischengespeicherte Inhalte zugreifen, die mit anderen Kundengruppen in Verbindung stehen.
  • Käufer können jetzt eine Bestellung in einer Bereitstellung aufgeben, die eine geteilte Datenbank implementiert, wenn Checkout Async aktiviert ist. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben: 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 Nachrichtenwarteschlangenthema 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 wurden jetzt standardmäßig im Dashboard deaktiviert. GitHub-38430
  • Das Menü Admin Sales zeigt nun 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 unter Admin Content > Pages sichtbar, wenn mehrere Seiten im Raster ausgewählt sind. GitHub-35386
  • Der Pfad zum Standardwert system/dashboard/enable_charts in den Konfigurationseinstellungen wurde korrigiert. Diagramme werden jetzt wie erwartet im Admin angezeigt. GitHub-37668
  • Anzeigeproblem mit Admin-Kundenraster behoben. Zuvor waren Rasterspalten nicht vollständig auf der angezeigten Seite enthalten.
  • Die Mauszeigerfarben werden jetzt wie erwartet auf die Zeilen von statischen Admin-Rastern angewendet. GitHub-35358
  • Der Kasse-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 leitet jetzt wie erwartet zur Seite Administratorkennwort ändern um. GitHub-37902
  • Untermenütitel zeigen jetzt alle Geschwister an, unabhängig von der Zugriffsstufe, die dem Benutzer zugewiesen ist. Bisher wurden diese Informationen für Admin-Benutzer mit eingeschränktem Zugriff ausgeblendet, selbst wenn mehrere Geschwistergruppen für das Untermenü vorhanden waren.
  • Die Suffixe für Seitentitel sind jetzt sowohl im Tag title als auch im Tag meta title für Produktseiten enthalten. GitHub-37680
  • Die Status-Bedingung des Produktbestands wird jetzt korrekt auf die Regeln verwandter Produkte angewendet.
  • Die Schaltfläche Login as Customer wird jetzt auf Mobilgeräten korrekt angezeigt.
  • Adobe Commerce zeigt die Schaltfläche "Admin Add new customer group"nicht mehr an, wenn dem angemeldeten Admin-Benutzer die Berechtigung zum Hinzufügen einer neuen Kundengruppe fehlt.
  • Ein Admin-Benutzer mit eingeschränkten Berechtigungen kann jetzt ein untergeordnetes Produkt speichern, dessen übergeordnetes Produkt einem anderen Umfang zugewiesen ist. Zuvor hat Commerce den Cache für ein übergeordnetes Produkt ungültig gemacht, das nicht dem Bereich zugewiesen war, in dem das untergeordnete Produkt geändert wurde.
  • Administratoren können jetzt erfolgreich zwischen Admin-Filteransichten wechseln, ohne dass die Ansichtsdaten beschädigt oder verloren gehen. GitHub-37529
  • Das archivierte Bestell-Raster wird jetzt asynchron mit den neuen Bestellstatus wie erwartet aktualisiert. Ein ereignisbasierter Ansatz zur Aktualisierung des Bestellstatus im Archivraster führt zu einem präzisen Bestellstatus, einschließlich der Nachkreditregelungen.
  • Das Dropdown-Menü für Admin-Rasteraktionen kann jetzt den Mauszeiger wie erwartet über einen ausgewählten Link für Content > Pages bewegen (und über freigegebene Kataloge im B2B-Modul). Zuvor war dieses Menü größtenteils ausgeblendet und Administratoren mussten scrollen, um Optionen anzuzeigen. GitHub-36710

Analytics

  • Die Eigenschaften der Produktdetailseite meta itemprop="image" und meta itemprop="description" sind jetzt für das Hauptproduktbild verfügbar. GitHub-37497
  • Im Abschnitt Bericht des Rasters Produkte im Warenkorb wird jetzt der richtige Produktpreis angezeigt, wenn Catalog Price Scope auf Website gesetzt ist. Zuvor wurde der Produktpreis als null angezeigt, wenn das Produkt einer anderen Website als der Standardwebsite zugewiesen wurde.
  • Umsatzberichte werden jetzt wie erwartet im Google Analytics-Portal (GA4) angezeigt. GitHub-37605
  • Werte vom Typ price und quantity in der Google Tag Manager-Datenschicht werden nun als numerische Werte wie erwartet an Google Analytics gesendet. Zuvor wurden diese Werte als Zeichenfolgen gesendet.
  • Fehler beim Umgang mit 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 Warenkorbladezeiten führte.

Paketprodukte

  • Die Produktanzahl der Kategorie wird jetzt korrekt für Bundle-Produkte berücksichtigt, wenn Display Out Of Stock* aktiviert ist.
  • Die customerCart -Abfrage gibt nun alle angewendeten Rabatte für Bundle-Produkte erwartungsgemäß zurück. Zuvor wurden die auf ein Bundle-Produkt angewendeten Rabatte als Null zurückgegeben.
  • Auf Produktdetailseiten wird nun der richtige Preis für Bundle-Produkte angezeigt, für die ein 100%iger Rabatt gilt. Zuvor hatte Commerce keinen 100 %-Rabatt auf die Bundle-Produktpreise angewendet.
  • Preisregeln für Warenkorb werden jetzt auf Produktpakete angewendet, anstatt auf jedes untergeordnete Produkt für Produkte mit dynamischen Preisen.
  • Fehlerkorrektur - Jetzt tritt kein Fehler mehr auf, wenn Sie den Endpunkt POST V1/shipment verwenden, um eine Sendung mit einem Bundle-Produkt zu erstellen. Der -Endpunkt fügt jetzt Elemente wie erwartet hinzu und gibt diesen Fehler nicht mehr zurück: The shipment couldn't be saved.
  • Sie können jetzt eine geplante Aktualisierung eines Bundle-Produkts speichern, das ein einfaches Produkt enthält, das über eine unbestimmte geplante Aktualisierung verfügt. Beim Erstellen des Bundle-Produkt-Snapshots 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, als das geplante Update des Bundle-Produkts statt der aktuellen Version des einfachen Produkts gespeichert wurde.
  • Sie können jetzt die API-Route GET V1/shipment/ verwenden, um eine Sendung mit einem Bundle-Produkt zu erstellen, wenn für das Produkt der Versandtyp together festgelegt ist. Bundle-Produkte werden nun auch auf der Grundlage ihrer Versandart-Eigenschaft validiert.
  • Käufer können jetzt die Menge eines Bundle-Produkts in ihrem Warenkorb in der Storefront bearbeiten. Zuvor hat Adobe Commerce keine Nullwerte für ItemId verarbeitet, wenn Produkte im Warenkorb der Storefront bearbeitet und ein Fehler angezeigt wurde. GitHub-37696
  • Bundle-Produkte können jetzt mithilfe von SKUs, die einen Schrägstrich (/) enthalten, erfolgreich zu einer Admin-Bestellung hinzugefügt werden. Bisher konnten Admin-Benutzer diese Methode nicht verwenden, um Produkte zu einer Admin-Bestellung hinzuzufügen. Commerce hatte einen JavaScript-Fehler ausgegeben.
  • Admin-Benutzer können jetzt Dezimalwerte 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 beim Speichern von Bundle-Produkten mit einer großen Anzahl von Optionen
  • Bundle-Produkte werden jetzt erfolgreich importiert, ohne SKUs in den Produktoptionen zu duplizieren. Zuvor erstellte Adobe Commerce mehrere doppelte SKUs in Produktoptionen, wenn Sie Bundle-Produkte mit doppelten Einträgen importierten.
  • Der Bundle-Produktpreis wird jetzt ordnungsgemäß berechnet, wenn eines der Produkte im Bundle nicht mehr vorrätig ist. Zuvor wurde ein Produkt, das Teil des Bundles war, aus der Preisberechnung entfernt, wenn es nicht mehr vorrätig war.
  • Bundle-Produkte werden jetzt als nicht vorrätig angezeigt, wenn das letzte ihrer erforderlichen untergeordneten Produkte gekauft wird. Zuvor wurden Bundle-Produkte als vorrätig auf der Storefront angezeigt, als 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.
  • Bundle-Produkte, die mit POST V1/products erstellt wurden, sind jetzt erfolgreich, wenn der Umfang des Katalogpreises auf website festgelegt ist. Zuvor kam es zu einer Verletzung der Integritätsbeschränkung. 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.
  • Cache-Cookies nach der Anmeldung sind jetzt nach dem Surfen auf der Website gleich. Zuvor hat der Login-Controller das falsche Cache-Cookie gesendet, und Seiten wurden möglicherweise mehrmals zwischengespeichert.
  • Antworten von GraphQL-GET-Vorgängen auf CMS-Seiten, die CMS-Bausteine enthalten, werden jetzt wie erwartet im Fastly-Cache gelöscht. Nachfolgende Zeitplanaktualisierungen zeigen jetzt genaue und aktualisierte Inhalte für diese Seiten.
  • Der Seiten-Cache wird jetzt für ein übergeordnetes Produkt wie erwartet gelöscht, wenn eines seiner untergeordneten Produkte vom Administrator gespeichert wurde. Eine Plug-in-Prüfung wurde eingeführt, um die Cache-Invalidierung für konfigurierbare Varianten zu erreichen, ähnlich wie bei anderen Produktarten, unabhängig vom Indexstatus (geplant oder in Echtzeit). Zuvor wurden die Preise im Storefront nicht ordnungsgemäß aktualisiert, nachdem eine konfigurierbare Variante vom Administrator aktualisiert wurde.
  • Es wurde ein Caching-Mechanismus für AWS-Anmeldeinformationen hinzugefügt. Ein Berechtigungsanbieter verwendet jetzt den Commerce-Cache, um von AWS für die EC2-Konfiguration abgerufene Anmeldeinformationen zwischenzuspeichern.
  • Das Plug-in, dessen Zweck darin besteht, das konfigurierbare Cache-Tag hinzuzufügen, wenn ein einfaches Produkt, das mit einem konfigurierbaren Produkt verknüpft ist, gespeichert wird, funktioniert jetzt erwartungsgemäß. Alle relevanten konfigurierbaren Cache-Tags werden erwartungsgemäß entfernt, wenn ein einfaches Produkt um POST V1/products aktualisiert wird. Zuvor wurden nicht alle Preise auf der Storefront aktualisiert und Caches mussten manuell gelöscht werden. GitHub-36726

Warenkorb und Checkout

  • Commerce optimiert jetzt die Leistung, indem benutzerspezifische Anführungsdaten beim Generieren von vollständig zwischenspeicherbaren Seiten wie Produktdetailseiten (PDP) und CMS-Seiten nicht geladen werden, wenn der beständige Warenkorb aktiviert ist. Zuvor lädte das System während der Generierung dieser Seiten unnötigerweise benutzerspezifische Sitzungs- und Anführungsdaten, was sich auf die Leistung auswirkte.
  • Benutzerdefinierte Adressen-Attribute werden jetzt wie erwartet in der Datenbank gespeichert. Zuvor wurden Attributwerte, die in der Datenbank gespeichert wurden, mit dem Präfix Attributcode versehen.
  • Die Erstellung von Filtertext für Warenkorbregeln für Produktattribute wurde verbessert. Einzelne Produkte werden nicht mehr mehrmals geladen.
  • Adobe Commerce zeigt jetzt eine informative Fehlermeldung an, wenn beim Auschecken ein Fehler auftritt und der Käufer nicht mehr zu einem früheren Checkout-Schritt zurückkehrt. 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 zuvor ein Warenkorb 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 Meldungen an, wenn eine Aktion zum Warenkorb ausgelöst wird. Zuvor wurde der The requested qty is not available nicht immer nach Bedarf auf der Storefront angezeigt.
  • Die Ladezeiten von Checkout-Seiten wurden für Kunden mit großen Adressbüchern verbessert. Commerce verarbeitet jetzt nur die in der Einstellung Customer Addresses Limit angegebene Anzahl von Kundenadressen. Zuvor hat Commerce das gesamte Adressbuch geladen.
  • Die Produktmenge kann jetzt im Warenkorb wie für Lagerpositionen erwartet geändert werden, wenn ein Artikel nicht mehr vorrätig ist. Bisher konnten Käufer die Produktmenge von Artikeln nicht ändern, wenn ein Artikel nicht vorrätig war.
  • Der Produktattributfilter AdvancedSalesRule funktioniert jetzt ordnungsgemäß mit dem Backend-Typ des Dezimalattributs. Daher funktionieren die Warenkorbregeln mit Coupon Type auf No Coupon gesetzt nun erwartungsgemäß.
  • Der volle Rabatt für den gesamten Warenkorb wird nun erwartungsgemäß auf Warenkörbe angewendet, die sowohl Paket- als auch konfigurierbare Produkte enthalten.
  • Cookies für Kundenabschnitte berücksichtigen jetzt die Domäneneinstellung des Cookies. Zuvor wurde der Mini-Warenkorb nicht wie erwartet in Geschäften aktualisiert, die Subdomains enthielten, auch wenn die Sitzung freigegeben wurde.
  • Beim Versand einer Bestellung an mehrere Adressen wird bei der Verarbeitung der Regions-ID kein Fehler mehr Trigger.
  • Feste Rabattbeträge, die auf Warenkorbebene angewendet werden, sind jetzt korrekt.GitHub-37496
  • Gutscheine werden nun erfolgreich auf eine Bestellung angewendet, wenn ein Käufer den Gutschein nach Auswahl der Versandpauschale anwendet, wobei eine Regel für den Warenkorbpreis mit einer Versandmethode angewendet wird, die als Bedingung festgelegt ist. Zuvor wurde auf der Warenkorbseite der Fehler Coupon ist ungü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 Chrome automatisch zum Ausfüllen seiner Versandadresse verwendet und dann auf Weiter klickt, bevor der Block für Versandmethoden neu geladen wird. GitHub-33725
  • Der Wert applied_rule_ids in der Tabelle quote_item enthält jetzt eine korrekte Liste der angewandten 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 waren diese Daten nach dem Entfernen der Sitzungsdatei immer noch sichtbar.
  • Diskrete Warenkörbe werden nicht mehr versehentlich vom Administrator zusammengeführt, wenn der beständige Warenkorb aktiviert ist.
  • Die standardmäßige Versandadresse im Schritt "Checkout-Versand"wird nicht mehr mit der zuvor ausgewählten Pick-in-Store-Adresse gefüllt.
  • Produkte im Warenkorb werden nach dem Leeren des Caches nicht mehr aus verwandten Produktlisten ausgeschlossen und Upsell-Produktlisten hinzugefügt.
  • Die Schätzung der Warenkorbsteuer und des Versands spiegelt jetzt die standardmäßige Zielkonfiguration korrekt wider. Zuvor wurde bei der Konfiguration der Standardeinstellungen für die Berechnung des Steuerziels und der Angabe von Bundesland/Region und ZIP nur der ZIP-Wert im Warenkorb unter Estimate Tax and Shipping angezeigt. Dies führte dazu, dass Adobe Commerce die Regions-ID auf "undefined"setzte, bevor die bedingte Anweisung aufgerufen wurde, mit der die standardmäßige Regions-ID vom Admin festgelegt wurde.
  • Adobe Commerce gibt diesen Fehler beim Checkout nicht mehr aus, wenn der beständige 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 nun die Produktpreise des Pakets an, die die Konfigurationseinstellungen der Warenkorbsteuer widerspiegeln. Zuvor waren im Mini-Warenkorb immer Steuern in den Preisen von Bundle-Produkten enthalten.
  • Die Leistung von Kundensegmentregeln, die auf aktiven Warenkorb basieren, wurde verbessert, was die Zeit verringert hat, die zum Hinzufügen eines Produkts zum Warenkorb benötigt wird.
  • Die von der Warenkorbseite bereitgestellte Versandschätzung ist jetzt korrekt. collectShippingRates ist jetzt nur 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. Bisher konnten Käufer, die diese Abfrage zum Kauf nutzten, ihren Kauf nicht abschließen, wenn ein Artikel nicht vorrätig war, und ihre Checkout-Seite war leer.
  • Gastbezogene API-Anfragen an POST V1/guest-carts/<cartId>/shipping-information geben keinen cancel -Status mehr zurück, wenn die Seite bei der Anmeldung in einer mobilen Umgebung neu geladen wird. Zuvor hatte Adobe Commerce einen 500-Fehler ausgegeben und diese Ausnahme protokolliert: TypeError: Argument 2 passed to Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes::beforeSaveAddressInformation() must be of the type string, null given.
  • Die Berechtigung für kostenlosen Versand wird jetzt wie erwartet berechnet, wenn die Subtotal (Excl. Tax) -Bedingung für Warenkorbregeln angewendet wird. GitHub-36760
  • Die cart -Abfrage gibt jetzt die richtigen Stufenpreise für ein Produkt zurück. GitHub-29655
  • Auf der Checkout-Seite wurden informative Fehlermeldungen hinzugefügt, die den Käufern bei einem Konflikt zwischen der Anwendung eines Gutscheins auf der Versandseite und der ausgewählten Versandmethode helfen. Zuvor wurde Kunden in einer Nachricht angewiesen, zur vorherigen Seite zurückzukehren.
  • Das Authentifizierungs-Popup wird jetzt nur initialisiert, wenn es benötigt wird, und nicht immer, wenn das Auschecken des Gastes aktiviert ist. Sie wird jetzt initialisiert, wenn der Gast-Käufer versucht, zum Checkout überzugehen, und der Gast-Checkout deaktiviert ist. GitHub-30672

Preisregel für Warenkorb

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

Katalog

  • Wenn Sie bin/magento cache:clean oder bin/magento cache:flush ausführen, wird nicht mehr der gesamte integrierte Cache oder der Varnish-Vollseitencache 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 gesetzt ist. Zuvor hat Commerce den Block nicht gespeichert und diesen SLQ-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 für die Synchronisierung websitespezifischer 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 zu verhindern, dass ausgeblendete Ordner im Ordner pub/media/catalog/product erstellt werden. Zuvor führten ausgeblendete Verzeichnisse während der Bereinigung zu Speicherplatzproblemen. Der Vorgang konnte beendet werden, was temporäre ausgeblendete Verzeichnisse zurückließ, die nie gelöscht wurden.
  • Bundle-Produktpreise werden nun korrekt berechnet, und ein Problem mit der Reihenfolge der Vorgänge bei der Preisberechnung wurde behoben. GitHub-35665
  • Aus den catalog_product_price -Indexabfragen wurde eine unnötige Klausel entfernt, die die Leistung dieses Indexers bei Geschäften mit großen Katalogen verbessert hat. GitHub-32382
  • Commerce fügt Produktbeschreibungstext nicht mehr in das Produktdetailfeld Meta Description ein, wenn dieses Feld leer gelassen wurde. Wenn zuvor eine Produktbeschreibung 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 Produkt-PDP-Seiten sind von anderen konfigurierbaren Produktoptionen auf der Seite nicht mehr betroffen. Zuvor wurde bei konfigurierbaren Produkten mit Dropdown-Attributen keine Ausnahme mehr Trigger, wenn auf der Produktdetailseite ein Produktkarussell vorhanden ist. Konfigurierbare Produktoptionen waren nicht auswählbar, wenn andere konfigurierbare Produkte mit Musteroptionen auf der Seite vorhanden waren.
  • Die kürzlich angezeigten Produktinformationen werden jetzt entsprechend der Konfiguration der Store-Ansicht angezeigt. Zuvor wurden die kürzlich angezeigten Produktdaten nicht pro Store-Ansicht aktualisiert, einschließlich Name und bevorzugte Sprache.
  • Vimeo-Videos werden jetzt in Chromium-basierten Webbrowsern auf Produktseiten in der Mobile-Ansicht erwartungsgemäß 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 den Werten NULL oder NOT NULL werden jetzt für den Standardspeicher gemäß dem Kontrollkästchen Standardwert verwenden wie erwartet gespeichert. Zuvor wurden Metadaten mit dem Wert NULL nicht gespeichert, wenn dieses Kontrollkästchen deaktiviert war.
  • Händler können jetzt erfolgreich ein vorhandenes Bild von der Produktdetailseite löschen und dann ein neues Bild mit demselben Namen hochladen. Zuvor wurde auf der Produktseite der Storefront 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 beinhalten, enthalten jetzt Arbeitslinks zum herunterladbaren Produkt, sobald die Bestellung abgeschlossen ist. Zuvor waren Links zu herunterladbaren Produkten erst verfügbar, wenn die physischen Produkte in derselben Bestellung versandt 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 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. Bisher wurden bei der gleichzeitigen Verarbeitung mehrerer Anforderungen inkonsistente Daten erstellt, und Commerce gab einen Fehler aus, wenn diese Daten in der Datenbank gespeichert wurden.
  • Kundensegmentbanner verhalten sich nun erwartungsgemäß, wenn sich ein Käufer abmeldet, der ein neu erstelltes Kundenkonto verwendet. Zuvor wurden Banner, die für das angemeldete Kundensegment erstellt wurden, auch nach Beendigung der Kontositzung angezeigt (d. h. der registrierte Käufer hat sich abgemeldet).
  • Die teilweise Neuindizierungsleistung für die Indexer für Kategorie-Produkte und Produktkategorien wurde verbessert. Zuvor führte der Cron-Auftrag indexer_update_all_views mehrere Neuindizierungen pro Produkt oder Kategorie durch.
  • Wenn der Status des Produktbestands auf der Grundlage der Lagerkonfiguration (Menge) automatisch auf "nicht vorrätig"aktualisiert wird, wird der Lagerstatus anschließend bei Aktualisierung der Lagermenge auf "Vorrätig"aktualisiert. Zuvor wurde die Einstellung stock_status_changed_auto ignoriert, wenn die Lagerergänzungskonfiguration eines Produkts auf Lager aktualisiert wurde.
  • Die Sortierung der Symbolleiste funktioniert jetzt auf Suchseiten wie erwartet, wenn die Einstellung Remember Category Pagination aktiviert ist. GitHub-33220
  • Attribute mit Mehrfachauswahl werden jetzt erwartungsgemäß gespeichert, wenn das Kontrollkästchen Use Default Value im Bereich der Store-Ansicht aktiviert ist. Zuvor war dieses Kontrollkästchen deaktiviert, als das Produkt bearbeitet und der Standardwert gespeichert wurde.
  • Admin-Benutzer mit Website-beschränktem Zugriff können jetzt Bilder zu einem Produkt hinzufügen, das in ihren Geltungsbereich fällt. Wenn der Admin-Benutzer keine Zugriffsrechte für das Produkt hat, zeigt Commerce eine informative Nachricht an. Bisher konnten Admin-Benutzer mit Website-beschränktem 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-Werte werden nicht überschrieben, wenn ein Produkt im Bereich der Store-Ansicht bearbeitet wird.
  • Commerce zeigt nun den richtigen Namen an, nachdem Produkte unter Admin > Category > Products in category nach Namen sortiert wurden. Dies gilt für Multistore-Bereitstellungen, bei 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 Produktposition und die ID-Auswahl werden jetzt korrekt angezeigt, wenn ein Administrator ein neues Produkt zu einer Kategorie hinzufügt, nachdem der Cache geleert wurde, die Kategorieseite jedoch nicht neu geladen wurde. Zuvor wurden Produktposition und -auswahl falsch zugeordnet und falsch angezeigt.
  • Händler können jetzt das zukünftige Startdatum oder die zukünftige Startzeit einer geplanten Änderung für ein herunterladbares 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 rücksortierte Status des Produkts wird jetzt korrekt auf 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 aus dem Admin führt nicht mehr zu einem Fehler, wenn der Admin-Benutzer die Store-Ansicht von der bei der Produkterstellung verwendeten Ansicht in eine andere Store-Ansicht ändert. Die Produktpreise werden jetzt erfolgreich in "float"konvertiert, wenn ein Administrator die Store-Ansicht von allen Store-Ansichten zur standardmäßigen Store-Ansicht wechselt. Zuvor hatte Adobe Commerce einen Fehler ausgegeben. GitHub-37519
  • Exportierte Produkte haben jetzt den richtigen manage_stock -Wert, wenn der use_config_manage_stock -Wert 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 des Bildes mit benutzerdefinierten Optionen erstellt wurde.
  • Produktminiaturansichten werden jetzt erwartungsgemäß in der Warn-E-Mail mit dem Produktbestand angezeigt, die gesendet wird, wenn ein Produkt wieder auf Lager ist. Zuvor wurde dieses Bild nicht in der Warnhinweis-E-Mail angezeigt
  • Die Produktanzahl in der Kategorienstruktur (Admin Catalog > Category) ist jetzt korrekt. Zuvor konnte die Anzahl der Kategorieprodukte nicht aus der Tabelle catalog_category_product_index abgerufen werden. Der Typo, der diesen Fehler ausgelöst hat, wurde behoben. GitHub-35417
  • Das Hauptproduktbild auf der Produktdetailseite wird beim Laden der Seite nicht mehr sichtbar nach unten verschoben, wenn product_image_white_borders im Design view.xml deaktiviert ist. Zuvor wurde das Produktbild beim Laden der Seite aufgrund falscher Höheneinstellungen in Fotorama JS visuell nach unten verschoben.
  • Kunden werden jetzt über einen Rückgang des Produktpreises informiert, wenn der Kunde Warnungen wegen Preisverfalls abonniert hat. Zuvor wurden aufgrund der Zwischenspeicherung auf Anwendungsebene nicht immer Preisverfall-Benachrichtigungen gesendet.
  • Zum Erstellen von Produktattributen über die Web-API wurde eine serverseitige Validierung hinzugefügt. Sie können das Feld Use in Layered Navigation Catalog nicht aktivieren, wenn der Feldwert Catalog Input Type for Store Owner Text Field, Text Area, Text Editor, Date oder Date and Time lautet. Zuvor wurden Produkte in Kategorien und Suchergebnissen weggelassen.
  • Die Kategorieseite wird jetzt mit der richtigen Paginierung neu geladen, nachdem ein Käufer die Seite geöffnet, die Paginierung geändert, zu einer Produktseite navigiert und dann zur Kategorieseite zurückkehrt. GitHub-36563
  • Einfache, nicht vorrätige Produkte, die Optionen für ein konfigurierbares Produkt sind, werden jetzt in der Storefront als deaktiviert angezeigt, wenn Display Out of Stock Products auf Ja gesetzt ist. Zuvor wurden alle Optionen trotz ihres Status und ihrer tatsächlichen Verfügbarkeit als verfügbar angezeigt.
  • Durch die Aktualisierung des Website-Bereichsattributs 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 standardmäßigen und alle Store-Ansichtsbereiche.
  • Händler können nun ein GIF-Bild aus dem Admin zur Bildergalerie eines Produkts hinzufügen. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt: imagecolorsforindex(): Argument #2 ($color) is out of range.
  • Es wurden Prüfungen hinzugefügt, um Fehler zu verarbeiten, die aus nicht definierten Array-Schlüsseln resultieren. Zuvor trat während der Erstellung der deklarativen Schema-Whitelist ein Fehler auf.
  • Adobe Commerce gibt jetzt ein gültiges Ergebnis für das benutzerdefinierte Datum 01/01/1970 zurück. Zuvor gab das benutzerdefinierte Attribut den folgenden Fehler zurück: Invalid input datetime format of value '1/01/1970. GitHub-37274
  • routes Abfragen, die Fragmente verwenden, geben jetzt erwartungsgemäß Kategorieinformationen zurück. Zuvor trat auf der Kategorieseite ein interner Server-Fehler auf. GitHub-35906
  • Probleme mit dem partiellen Neuindizierungsprozess von cataloginventory_stock wurden behoben, und die Indexleistung wurde verbessert. Zuvor wurden die 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 eine neue übergeordnete Kategorie verschoben wurde. GitHub-37039

Katalogregeln

  • Katalogregeln werden jetzt korrekt indiziert, wenn sie durch eine geplante Aktualisierung aktiviert werden. Daher werden ermäßigte Preise jetzt korrekt generiert und indiziert. Wenn zuvor zwei Katalogregeln verfügbar waren und eine Regel aktiviert wurde, nachdem die erste Regel vor Abschluss der Indizierung der Katalogregel durch die erste Regel aktiviert wurde, wurden die Diskontpreise für die Katalogregel für die zweite Katalogregel nicht generiert.
  • Katalogregeln werden jetzt wie erwartet in einer Umgebung mit mehreren Websites 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 dass sich dies auf die Quelle verknüpfter einfacher Produkte auswirkt. Zuvor führte die Auswahl von Skip quantity at this time zum Verschwinden von Produktquellen.
  • Die Bezeichnung As low as wird für einen konfigurierbaren Produktpreis nicht mehr angezeigt, wenn alle Optionen denselben Preis haben.
  • Admin-Benutzer mit Website-Berechtigungen können jetzt ein untergeordnetes Produkt speichern, das Teil eines konfigurierbaren Produkts ist, und zwar in einem anderen Store-Kontext. Bei der Neuindizierung von Prozessen wird dieser Typ von konfigurierbarem Produkt nun übersprungen.
  • Konfigurierbare Produkte mit zwei untergeordneten Produkten werden nicht mehr als nicht vorrätig markiert, 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 beim Speichern von Produkten Zeitüberschreitungen auftreten. GitHub-36928
  • Die Anzeige der konfigurierbaren Produktpreise im Storefront ändert sich nun erwartungsgemäß, wenn ein Käufer eine Produktoption auswählt. GitHub-37378

Coupons

  • Couponcodes 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 Angebotscode nicht veröffentlicht, wenn die vorherige Bestellung storniert wurde.
  • Couponcodes, die Leerzeichen enthalten, werden nicht mehr ungültig gemacht. Wenn zuvor ein Gutscheincode ein Leerzeichen (vor oder nach dem eigentlichen Code) enthielt, schlug die Validierung fehl. GitHub-38048
  • Käufer können jetzt zwei separate, automatisch generierte Coupon-Codes verwenden, die von derselben Warenkorbpreisregel generiert wurden. Das Feld Uses per Coupon ist jetzt aktiviert, wenn der Coupontyp auf Auto ausgewählt ist (ähnlich wie bei Coupontyp =Specific Coupon). Dadurch kann der Käufer mehrere Coupon-Codes auf denselben Warenkorbpreis anwenden, wenn die Codes unterschiedlich sind.
  • Der Gutscheinwert eines Käufers für die einmalige Verwendung wird jetzt erwartungsgemäß wiederhergestellt, wenn die Reihenfolge, auf die er angewendet wurde, abgebrochen wird.
  • Der Endpunkt GET V1/coupons/<couponId> gibt jetzt die vollständige erwartete Antwort für manuell erstellte Coupons zurück, genau wie für automatisch generierte Coupons. Zuvor wurden einige Felder ausgelassen (z. B. usage_limit, usage_per_customer und created_at).

cron

  • Der Cron-Auftrag aggregate_sales_report_bestsellers_data erstellt keine sehr großen temporären MySQL-Tabellen mehr und ist nun erfolgreich abgeschlossen. Dieser Cron-Auftrag fügt jetzt Daten pro Store ein, nicht für alle Stores auf einmal. Zuvor konnte dieser Cron-Auftrag zu No space left on device -Fehlern führen.
  • Die Anzahl der ausstehenden Einträge in der Tabelle cron_schedule wurde reduziert, indem verhindert wurde, dass Cron-Aufträge versuchen, unnötige Cron-Auftragssperren zu erhalten. Zuvor versuchten Cron-Aufträge, Sperren zu erwerben, wenn es zu spät war, den Auftrag auszuführen. Cron-Aufträge in cron_schedule wurden nicht als verpasst markiert, obwohl sie ihre geplante Zeit bereits ü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 - in Cron-Ausdrücken tritt jetzt kein Fehler mehr mit "divide-by-zero" auf. GitHub-37804
  • Der Cron-Prozess sales_clean_quotes wurde so optimiert, dass er schneller ausgeführt wird, indem ein zusammengesetzter Index für store_id und updated_at columns in der Anführungszeichentabelle hinzugefügt wird. Durch diese Änderung wird die Leistung des Cron-Auftrags bei der Verarbeitung vieler Anführungszeichen verbessert.
  • Administratoren können jetzt anzeigen, welche Aufgabe der bin/magento cron:run-Prozess derzeit durchführt. Der Titel des derzeit ausgeführten Prozesses listet nun die Gruppen- und Auftragsnamen auf. GitHub-34321

Kunde

  • Adobe Commerce zeigt nun die Felder Date of Birth, Tax/VAT Number, Gender, Telephone, Company und Fax auf der Bearbeitungskundenseite basierend auf den Konfigurationseinstellungen an. GitHub-36196

Kundensegmente

  • Kundensegmentbedingungen laden jetzt alle übereinstimmenden Kunden erwartungsgemäß. Zuvor enthielt die Kundensegment-übereinstimmende Kundenliste nicht alle übereinstimmenden Kunden.

EAV

  • Der EAV-Indexer erfordert nicht mehr das Löschen der nicht sichtbaren Entitäten während der Stapelverarbeitung. Standardmäßig führt der Indexer keine unsichtbaren Produkte mehr in Batches durch, und die Indexerleistung wurde verbessert.

E-Mail

  • E-Mails mit Diakritika oder Akzenten (d. h. utf8 email) werden jetzt für Kunden und Unternehmen sowie für die Bestellung von Gästen und registrierten Kunden unterstützt. Zuvor hat Commerce keine Kundendatensätze gespeichert, die diakritische Informationen enthielten und folgenden Fehler angezeigt haben: Something went wrong while saving the customer.
  • E-Mail-Absendernamen dürfen keine Doppelpunkte mehr enthalten. Eine neue Validierungsregel verhindert jetzt das Speichern von Absendernamen, die Doppelpunkte enthalten, aus dem Abschnitt "E-Mail-Adressen speichern"von Admin Stores > General. Zuvor konnten Händler einen Absendernamen speichern, der ein Doppelpunkt-Zeichen enthielt, was zu Fehlern beim E-Mail-Server führte.
  • Bildoptionen werden nicht mehr als HTML-Markup in der Standardvorlage Rückgabe von Kunden-E-Mails für Produkte mit benutzerdefinierten Bildoptionen angezeigt.
  • Die Details der Unternehmensadministratoren werden jetzt erwartungsgemäß gespeichert und die Administratoren werden korrekt umgeleitet, wenn E-Mails zum Zuweisen von Unternehmensadministratoren eine CMS Block URL -Variable enthalten.
  • E-Mail-Adressen von Kunden können jetzt auch Diakrien enthalten. Zuvor war die Frontend-Validierung die Erstellung eines Benutzers mit diakritischen Informationen in seiner E-Mail-Adresse untersagt. GitHub-12075
  • E-Mails mit Aktien- und Preiswarnungen werden jetzt entsprechend der Sprache übersetzt, die für die standardmäßige Store-Ansicht der Website konfiguriert ist. Bisher wurden diese E-Mails nicht übersetzt.
  • POST V1/order/notify-orders-are-ready-for-pickup sendet nun eine E-Mail, in der Kunden darüber informiert wird, dass eine Bestellung erst dann abgeholt werden kann, wenn die Bestellung fertig ist. E-Mail wird jetzt nur ausgelöst, wenn die Anfrage ohne Ausnahme erfüllt wurde.

Frameworks

  • Das Debugging wurde verbessert, indem der Wert UNCACHEABLE hinzugefügt wird, wenn ein HTTP-Header mit Varnish ausgegeben wird. Zuvor wurden nur HIT - oder MISS -Werte ausgegeben. GitHub-37912
  • Es wurde Code hinzugefügt, der die standardmäßige Handhabung der Varnish-Komprimierung unterstützt. GitHub-38309
  • Der Befehl bin/magento varnish:vcl:generate enthält jetzt einen 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 Varnish 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 - Es wurde ein falsches PHP-doc-Tag in der Magento\Reports\Block\Adminhtml\Shopcart\Product\Grid-Klasse behoben. GitHub-38186
  • Umgestalteter Code in der gesamten Codebase, der beim Kodieren erstellt wurde, diktierte, dass jeder Cache-Abschnitt, der in der Datei app/etc/env.php enthalten war, einen Frontend-Abschnitt enthalten würde. Diese Umgestaltung behebt potenzielle Probleme bei der Aktualisierung von Commerce-Implementierungen vor 2.4.4. GitHub-38363
  • Die Fehlermeldung, die mit StockItemValidator.php verknüpft ist, wenn während eines API-Aufrufs eine Lager-ID mit dem Wert 0 angegeben wird, wurde klarer formuliert. GitHub-31107
  • Es wurde ein standardmäßiges leeres Array zu $tagGenerators in CompositeTagGenerator hinzugefügt, um Fehler bei der Kompilierung der Abhängigkeiten zu vermeiden. Zuvor führte die Ausführung des Befehls bin/magento setup:upgrade , wenn die Module Magento_DirectoryGraphQl und Magento_StoreGraphQl deaktiviert waren, zu einem Fehler. GitHub-38165
  • Die nicht verwendete AlgorithmProviderFactory -Klasse sowie Abhängigkeiten von dieser Klasse in Klassen wie JweAlgorithmManagerFactory.php, JweContentAlgorithmManagerFactory.php und JwsAlgorithmManagerFactory wurden entfernt. GitHub-37783
  • Die var/log/system.log -Datei enthält keine main.INFO error -Meldungen mehr. Das Menüeintragsprotokoll wurde von Ebene INFO in DEBUG verschoben. Zuvor wurde die Datei var/log/system.log mit Meldungen wie den folgenden überschwemmt: Add of item with id Magento_Theme::design_config was processed … .
  • Das erneute Vorausfüllen schlägt nicht mehr fehl, wenn exec() "false"zurückgibt. Zum Vorausladevorgang wurde eine Überprüfung hinzugefügt, um zu verhindern, dass array_combine false als zweites Argument erhält. Daher wird das Vorausfüllen weiterhin ausgeführt, wenn exec() false zurückgibt. GitHub-37509
  • Das Modul Magento_CatalogWidget wurde umgestaltet, um die Maskierungsfunktionen von $block durch die Maskierungsfunktionen von $escaper zu ersetzen. GitHub-37107
  • Swaziland wurde in der gesamten Codebasis auf Eswatini aktualisiert. GitHub-37873
  • Die neue nicaraguanische Währung (NIO) wurde zur Liste der verfügbaren Währungen hinzugefügt.
  • Der Name der Variable reponseBody wurde in app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php in responseBody geändert.GitHub-38093
  • Es wurden Rundungsfehler bei Zwischensummen behoben, die bei Transaktionen für Produkte aufgetreten sind, für die die Dezimalzahl aktiviert wurde. GitHub-37817
  • Der Datumsfilter für das Admin-Kundenraster funktioniert nun entsprechend dem angegebenen Gebietsschema wie erwartet.
  • Der Befehl bin/magento setup:upgrade schlägt aufgrund des Datentyps der Variable $schemaPatch nicht mehr fehl. Zuvor wurde der Zeichenfolgenwert an die Funktion get_class übergeben, was den Fehler verursachte. GitHub-37545
  • Kritische Fehler beim Lesen der Datenbank, wenn synchronous_replication für Slave-Verbindungen auf Adobe Commerce Cloud aktiviert ist.
  • Die Verbindung zur MySQL-Datenbank wird jetzt wiederhergestellt, wenn bei einer Transaktion eine Zeitüberschreitung für die Verbindung auftritt, wenn Sie für den Verbraucher max_messages = 0 festlegen. Zuvor wurde die Verbindung beendet.
  • Das Kernmodul magento/module-release-notification wurde im 2.4-Entwicklungs-Code mit diesem Kommentar als veraltet markiert: Starting from Magento 2.4.7, Magento_ReleaseNotification module is deprecated in favor of another in-product messaging mechanism.
  • Die Proxy-Codegenerierung generiert jetzt Proxy- und Factory-Dateien wie erwartet für Bereitstellungen, die im Produktionsmodus ausgeführt werden. GitHub-35252
  • Der indische Bundesstaat Ladakh ist jetzt als Option in den Dropdown-Menüs Admin-Adresse State aufgeführt. GitHub-33698
  • Der Countdown-Ticker für Ereignisse wird jetzt wie erwartet auf der Kategorieseite angezeigt.
  • Das verbotene @author -Tag wurde aus der Codebasis 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
  • Der JSON-Serialisierungsprogramm im Modul User wurde durch einen neuen, präziseren Serialisierungsprogramm (JsonHexTag) ersetzt. Zuvor war Commerce manchmal abgestürzt, wenn versucht wurde, Daten zu verwenden, die vom regulären Serialisierungsprogramm serialisiert wurden, wenn sie nicht escapte Elemente enthielten. GitHub-31377
  • Beim Ausführen einer vollständigen Neuindizierung (bin/magento indexer:reindex) treten keine Fehler mehr bei der Pipeline auf. AMPQ-Verbindungen werden nun geschlossen, bevor der Prozess-Manager Prozesse abspaltet.
  • Der Validator der Warteschlangenmeldung validiert jetzt den Untertyp aller Array-Elemente. Zuvor hatte Commerce eine Ausnahme ausgelöst.
  • Die Konfiguration der Warteschlangenverbindung pro Thema in app/etc/env.php funktioniert jetzt ordnungsgemäß. Zuvor wird die Warnungswarteschlange 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 Produktwarnungen verarbeiten.
  • Temporale Formate, die mit einem /* mariadb-5.3 */ -Kommentar markiert sind, verursachen während bin/magento setup:install beim Aktualisieren des MariaDB-Servers auf Version 10.5.1 oder höher keine Fehler mehr.
  • Der AwsS3-Treiber funktioniert jetzt wie erwartet als Ersatz für die standardmäßige Dateispeicherimplementierung. 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 Store-Codes, die Sonderzeichen oder Großbuchstaben enthalten.
  • Es wurden Klassen mit !important hinzugefügt, wie in Tailwind 3 für CSS-Layoutunterstützung verwendet. GitHub-37568
  • Der Datei trim-input.js wurde eine fehlende jQuery -Abhängigkeit hinzugefügt. GitHub-37683
  • Ereignisspezifische Details werden jetzt als zweites Attribut (context) der log -Methode übergeben. GitHub-37879
  • Zu Katalogbildern wurden Seitenverhältniswerte hinzugefügt und unnötige Skripte wurden aus dem UI-Framework entfernt. GitHub-37691
  • Die durch eine ungültige XML-Konfiguration ausgelösten Fehlermeldungen wurden überarbeitet, um informativer zu sein. GitHub-37788
  • Der veraltete Code zur Erstellung dynamischer Eigenschaften in der gesamten Codebasis wurde überarbeitet.
  • Die Leistung von Indexern für große Geschäfte mit extrem aktiven Produktdatenbanken hat sich verbessert. Indexer indizieren jetzt die neuesten Produktinformationen einmal für jeden Index anstatt mehrmals. Zuvor waren Produkte von der Website verschwunden, und Produktdaten konnten auf der Website veraltet sein. GitHub-30012
  • Der Datensatzstatus "mview_state"zeigt nun den Status basierend auf der Aktivität "ChangeLog"genau an, wenn eine Slave-Datenbankverbindung verfügbar ist. Bisher blieben diese Datensätze in Cloud-Bereitstellungen mit dem Status "waiting", selbst wenn keine neuen Einträge in der Änderungsprotokoll vorhanden waren.
  • Unterstützung für die Option precision für das Währungsformat hinzugefügt, damit die Funktionsparität mit der veralteten Klasse ZendCurrency beibehalten wird.
  • Cookie-Nachrichten wurden in beobachtbare Attribute umgewandelt, und Entwickler können jetzt den Status bearbeiten, was möglicherweise Änderungen an der Benutzeroberfläche des Triggers zur Folge hat. Zuvor waren Cookies schreibgeschützt und konnten nicht bearbeitet werden. GitHub-37308
  • Administratoren können jetzt eine Rechnung erstellen, wenn ihre Commerce-Instanz mit dem S3-Speicher verbunden ist. Zuvor wurde in Commerce folgender Fehler angezeigt: Cannot create image resource. File not found. GitHub-35706
  • Adobe Commerce protokolliert jetzt eine Ausnahmemeldung wie erwartet, wenn die Überprüfung der MwSt-Nummer durch den VIES-Validierungsdienst fehlschlägt. GitHub-36065
  • Der Name Administrators wurde aus der Abfrage entfernt, die zum Abrufen einer Administratorrolle bei der Erstellung von Administratorrollen verwendet wurde. GitHub-36998
  • Der Befehl bin/magento setup:config:set schlägt nicht mehr fehl, wenn ein ungültiger Datenbankbenutzername in der Datei app/etc/env.php enthalten ist. GitHub-37409
  • Die Sortierung nach Spalte nach reservierten Wörtern in einer standardmäßigen Admin-UI-Komponente führt in var/log/exception.log nicht mehr zu einem SQL-Fehler. GitHub-37423
  • AddDataForCostaRica.php wurde hinzugefügt, um Statusinformationen für Costa Rica bereitzustellen. GitHub-37382.
  • Verbesserte Fehlermeldung für das Szenario, in dem Benutzer versuchen, vom Administrator auf eine ungültige URL zuzugreifen. GitHub-35682.
  • Param $options[position] für Währungssymbole funktioniert jetzt erwartungsgemäß und unterstützt die Anpassung der Position des Währungssymbols. Zuvor hat die Methode toCurrency nach der Migration aus Zend Framework 1 den Parameter position ignoriert. Dieses Problem trat in der gesamten Admin-Oberfläche auf.
  • Der veraltete Code zur Erstellung dynamischer Eigenschaften in der gesamten Codebasis wurde überarbeitet.
  • Benutzerdefinierte Stilformate, die durch Erweiterung des TinyMCE-Editors in Adobe Commerce und Magento Open Source-Versionen vor 2.4.6 erstellt wurden, sind jetzt wie erwartet im Inhaltstyp "Seitenaufbau text"verfügbar. Zuvor wurde das benutzerdefinierte Stilformat ignoriert und nur die Standardformate, die nach der Aktualisierung auf Adobe Commerce 2.4.6-p1 geladen wurden. GitHub-36950
  • Die folgende informative Anmerkung wurde zur Datei quote.php hinzugefügt: Important: This method also copies customer data to quote and removes quote addresses. GitHub-37400
  • Die Instanziierung des Sperranbieters durchläuft jetzt die Klasse \Magento\Framework\Lock\Proxy . Der Sperranbieter wird jetzt mit der Einstellung lock über die Datei app/etc/env.php konfiguriert.
  • Mutex wurde für Bestellungen implementiert, um Race-Bedingungen während der Aktualisierung durch gleichzeitige Anfragen zu verhindern. Zuvor führten gleichzeitige Anforderungen (Race-Bedingungen) für Auftragsabbrüche zu duplizierten Einträgen in der Tabelle inventory_reservation .
  • Die Funktion populateWithArray wandelt Objekteigenschaften nun korrekt in Groß-/Kleinschreibung um, wodurch sie mit den Gettern und Settern für AbstractModel kompatibel sind. Zuvor war die Groß-/Kleinschreibung falsch, wenn der Datenattributname mehrere Großbuchstaben in einer Zeile enthielt.
  • Der Wert für die automatische Inkrementierung in der Tabelle catalog_product_entity_varchar wird jetzt korrekt erhöht, nachdem ein Produkt gespeichert wurde. Zuvor wurde dieser Wert um zehn erhöht.
  • Adobe Commerce gibt 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 erhöht. Bei der Aktualisierung einer Entität, die diese Attribute enthält, wird anstelle von insert on duplicate key update eine Aktualisierungsabfrage ausgeführt. Infolgedessen wachsen die im EAV-Modell verwendeten Spalten mit automatischer Inkrementierung nun linear. Zuvor hat der Prozess der automatischen Inkrementierung für Spalten Werte aufgrund fehlgeschlagener Einfüge-Abfragen übersprungen. GitHub-28387
  • Es wurde unnötiger Leerraum aus id -Attributen entfernt, für die dies nicht erforderlich ist. (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 sich der Store im Einzelspeichermodus befindet. GitHub-36831
  • Geringfügige Aktualisierungen wurden an den around -Plug-ins vorgenommen. GitHub-31443
  • Die Muster Helper wurden überarbeitet, um irreführende Importaliasen zu entfernen. GitHub-31373
  • Administratoren können jetzt eine sitemap.xml -Datei wie erwartet löschen oder umbenennen. Zuvor konnte ein Administrator die Datei aus dem Admin löschen, sie blieb jedoch im Dateisystem. GitHub-37468
  • Coupons werden nicht mehr als verwendet gekennzeichnet, wenn die Zahlung für die Reihenfolge fehlschlägt, in der sie angewendet wurden. Warteschlangennachrichten werden jetzt in der Reihenfolge verarbeitet, in der sie veröffentlicht werden, wenn der Verbraucher gestartet wird. Zuvor wurde die erste Nachricht aus der Warteschlange gezogen, um einfach zu überprüfen, ob die Nachrichten in die Warteschlange gestellt wurden, und danach zurückgewiesen, wodurch die erste Nachricht zuletzt verarbeitet wurde.
  • Adobe Commerce gibt in der Protokolldatei keine Ausnahme mehr aus, wenn ein Benutzer versucht, einen Versandtitel zu drucken. Wenn eine Erweiterung zuvor Antwortheader ändert, die eine Anlage enthalten, hat das System in der Protokolldatei eine Ausnahme ausgelöst.
  • elements.xsd unterstützt jetzt weitere HTML-Klassen. GitHub-36891

Allgemeine Fehlerbehebungen

  • Der Name der Variable reponseBody wurde in app/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php in responseBody geändert.GitHub-38093
  • Beim Planen von Produktaktualisierungen werden die Attributdaten mit Mehrfachauswahl nicht mehr gelöscht. Bisher wurden bei der Planung einer Aktualisierung für ein Produkt die Mehrfachauswahlattributdaten des Produkts fälschlicherweise gelöscht. GitHub-37675
  • Das Speichern eines Produkts mit einem nicht standardmäßigen Store-Umfang führt nicht mehr dazu, dass unveränderte Attribute beim Laden mit ProductRepository als Store-Bereich festgelegt werden. GitHub-8897
  • Käufer können jetzt auf Seiten zugreifen, die als Hierarchieknoten konfiguriert sind, wenn Zugriffsbeschränkungen aktiviert sind. Zuvor kam es zu einer unendlichen Umleitungsschleife, und der Browser gab diesen Fehler aus: ERR_TOO_MANY_REDIRECTS.
  • Der Validierung benutzerdefinierter Felder auf Produktdetailseiten wurden informative Fehlermeldungen hinzugefügt. GitHub-38006
  • Sonderzeichen können jetzt in Namensfeldern verwendet werden. Zuvor war das kaufmännische Und-Zeichen (&) im Namensvalidator eingeschränkt, wodurch Kunden-Hinzufügen- oder Bearbeitungsvorgänge blockiert wurden, wenn der Kundenname ein kaufmännisches Und enthielt. GitHub-38080
  • Admin-Benutzer mit eingeschränktem Zugriff auf einen bestimmten Store können jetzt eine Massenaktualisierung verwenden, um Produktüberprüfungen zu aktualisieren. Zuvor hatte Commerce diese Ausnahme ausgelöst: 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 Storefront-Anmeldeseite zeigt jetzt Kennwörter erwartungsgemäß an. Zuvor wurden keine Passwörter angezeigt. GitHub-37432
  • Die Produktvergleichsliste ist jetzt immer websitespezifisch für Gastkäufer und enthält keine Produkte, die von den anderen Websites hinzugefügt wurden, einschließlich der Produkte, die beiden Websites zugewiesen wurden.
  • CMS-Inhaltsbausteine, die Emojis enthalten, werden nach dem Speichern in der Datenbank nicht mehr abgeschnitten. Zuvor wurden Inhalte nach den Emoji abgeschnitten, da die standardmäßige Datenbankkonfiguration keine Vierbyte-Zeichen unterstützt hat.
  • Die Bedingung Ist eine der der zugehörigen Produktregel funktioniert jetzt ordnungsgemäß, wenn die Einstellung Produkte entsprechend konfiguriert ist. Zuvor wurden mit dieser Regel keine Produkte identifiziert.
  • Das CMS-Seitenraster filtert jetzt Seiten basierend auf der Store-Ansicht, die dem Admin-Benutzer zugewiesen ist. Zuvor wurde der Rollenbereich nicht angewendet.
  • Passwörter werden jetzt erwartungsgemäß angezeigt, wenn das Kontrollkästchen Show Password auf der Anmeldeseite aktiv ist.
  • Das Systemattribut Passwort-Token zurücksetzen der Validierung der Kundenentität (rp_token) wurde während der Erstellung des Kundenkontos aus der Attributvalidierung entfernt, und die Validierung von Datenwörtern ist nur in der resultierenden Kunden-E-Mail enthalten. Zuvor hat Commerce den Kundendatensatz nicht gespeichert und diesen Fehler angezeigt: Something went wrong while saving the customer.
  • Nach dem Löschen einer Spalte können Sie nun erfolgreich Änderungen am Raster Admin Pages und Block speichern. GitHub-37525
  • Unternehmensadministratoren können nun Unternehmensbenutzer aus der Storefront hinzufügen. Zuvor hat Commerce diesen Fehler protokolliert, als der Administrator versuchte, 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 aus 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 wie erwartet bei. Zuvor wurde der gelöschte Wert beim Entfernen des Werts aus diesem Feld weiterhin in Commerce im Feld Bundesland/-staat angezeigt. GitHub-36846
  • Adobe Commerce gibt keinen Beschränkungsverletzungsfehler mehr aus, wenn Sie die Auswahl zum ersten Mal aufheben und dann eine neu erstellte CMS-Seite auswählen.
  • Ein Hierarchie-Website-Stamm wird nun korrekt einer neu erstellten CMS-Seite zugewiesen. Zuvor war die Hierarchie der Website-Stammauswahl auf neu erstellten CMS-Seiten nicht richtig zugeordnet.
  • Fehler treten nicht mehr bei Anforderungen für einen RSS-Feed für Kategorien auf, wenn RSS Feed Top Level Category aktiviert ist. Bisher führte das Durchsuchen der Seite mit der RSS-Feed-Kategorie in Protokolldateien zu Elasticsearch CRITICAL-Fehlern, wenn RSS Feed Top Level Category aktiviert war.
  • Der richtige Wert wird jetzt für gws_store_groups gespeichert, wenn der Rollenbereich während der Benutzerrollenerstellung geändert wird. Zuvor wurde bei Auswahl des Rollenbereichs als All der Wert gws_store_groups während 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 immer als null gespeichert.
  • Auf die Seite "Kennwort zurücksetzen"kann jetzt zugegriffen werden, indem Sie auf der Admin-Anmeldeseite auf den Link Kennwort zurücksetzen klicken, wenn die Einstellung Add Store Code to Urls aktiviert ist. Der Link Kennwort zurücksetzen des Administrators hat zuvor die Anmeldeseite oder 404-Seite geöffnet.
  • Der Datumsbereich im Dashboard mit den Admin-Statistiken wird jetzt auf der Grundlage der in den Konfigurationseinstellungen festgelegten Zeitzone berechnet und dann in UTC konvertiert, um Daten aus der Datenbank abzurufen.
  • Der CMS-Hierarchiefilter funktioniert wie erwartet, nachdem Sie eine Store-Ansicht gefiltert und dann unter Admin Content > Hierarchy auf Save geklickt haben. Zuvor wurde durch Klicken auf Save die Seite aktualisiert, aber der Kontext wurde verloren und die ausgewählte Store-Ansicht wurde nicht mehr angezeigt.
  • Durch Klicken auf die Schaltfläche "Send invitation"(Admin Marketing > Private sales > Invitation) wird jetzt eine POST-Anfrage zusammen mit dem Formularschlüssel gesendet und die Einladung erfolgreich gesendet. Bisher waren beim Klicken auf diese Schaltfläche 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 vom Administrator 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 des CMS-Block-Editors wird jetzt der richtige Widget-Wert block_id angezeigt. GitHub-29644

Geschenkkarten und Umhüllung

  • Händler können keine Geschenkkarte mit einem negativen Wert mehr erstellen.
  • Die setGiftOptionsOnCart -Mutation entfernt nun wie erwartet die Geschenkverpackung aus einer Bestellung. Der Wert von gift_wrapping_id ist jetzt auf Warenkorbebene nicht mehr festgelegt. Zuvor wurde der gift_wrapping_id auf den vorherigen Wert aktualisiert, nachdem die Bestellung selbst dann aufgegeben wurde, wenn dieser Wert auf Warenkorbebene nicht festgelegt war.
  • Gift-Karten-Konten bleiben wie erwartet aktiv, wenn die teilweise Rückerstattung eines einfachen Erzeugnisses von der Reihenfolge verarbeitet wird, in der die Karte angewendet wurde. Zuvor wurde das Konto für die Geschenkkarte gelöscht.
  • Die Mutation setGiftOptionsOnCart aktualisiert jetzt erfolgreich die Datenbank, wenn eine Geschenknachricht aus dem Warenkorb entfernt wird. Zuvor wurden die Nachrichtendetails nicht in der Datenbank aktualisiert und die Geschenknachricht wurde nicht aus dem Warenkorb entfernt.
  • Die Bezeichnung der Geschenkregistrierung Event Information wird jetzt erwartungsgemäß übersetzt.
  • Die Zwischensummen werden nun korrekt für benutzerdefinierte Geldbeträge der Geschenkkarte berechnet.
  • Geschenkkarten werden jetzt beim Checkout mit mehreren Adressen korrekt angewendet. Zuvor wurden die Beträge der Geschenkgutscheine für Sendungen an mehrere Adressen falsch angewandt, was zu ungültigen Beträgen für die Geschenkkarte führte.
  • Die Emulation beginnt jetzt bei send() -Aufrufen, sobald die Emulation während des getInfoBlockHtml() -Aufrufs abgeschlossen ist und kein Fehler protokolliert wird. Zuvor wurde die Datei system.log mit dem folgenden Fehler überflutet: 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 nur der Kartenbetrag durch diese Mutation im Warenkorb aktualisiert werden.
  • Die Geschenkverpackung ist jetzt wie erwartet in einem Angebot enthalten, das auf zusammengeführten Warenkörben basiert. Zuvor wurden Geschenkmeldungen erfolgreich zusammengeführt, jedoch keine Wrapper-Auswahlen.
  • Die addProductsToCart -Mutation fügt einem Warenkorb jetzt erfolgreich eine Geschenkkarte hinzu. Zuvor wurde bei dieser Abfrage der Empfängername der Geschenkkarte erwartet, stattdessen wurde jedoch der Absendername zurückgegeben. Adobe Commerce hat diesen Fehler ausgegeben: Please specify a recipient name. GitHub-36665

Google Tag Manager

  • Das Google Tag-Modul überträgt nun die richtigen Daten an die Datenschicht. Zuvor wurden Daten zu Seitenimpressionen nicht an die Datenschicht gesendet.

GraphQL

  • Die getCustomerWishlist -Abfrage führt nicht mehr zu einem internen Server-Fehler, wenn Listen mit konfigurierbaren Produkten abgefragt werden.
  • Die customerCart -Abfrage gibt nun alle angewendeten Rabatte für Bundle-Produkte erwartungsgemäß zurück. Zuvor wurden die auf ein Bundle-Produkt angewendeten Rabatte als Null zurückgegeben.
  • Die getCustomerWishlist -Abfrage führt nicht mehr zu einem internen Server-Fehler, wenn Listen mit konfigurierbaren Produkten abgefragt werden.
  • Die Deklaration der Markierung is_subscribed, des Resolver, des Caches und der zugehörigen Tests wurden vom Modul CustomerGraphQl in das Modul NewsletterGraphQl verschoben.
  • Die addProductsToCart-Mutation meldet in user_errors keine unabhängigen Fehler mehr. Zuvor wurden Fehler im Zusammenhang mit dem Warenkorb zusammen mit den erwarteten Vorgangsfehlern in user_errors eingeschlossen. GitHub-37908
  • Der Produktfilter für die products-Abfrage kann jetzt Teilübereinstimmungsergebnisse sowie vollständige Übereinstimmungen zurückgeben. Das neue Attribut match_type (PARTIAL, FULL) unterstützt die Angabe des Übereinstimmungstyps. Zuvor gab die Abfrage nur vollständige Übereinstimmungen zurück.
  • Mutex wurde zur addConfigurableProductsToCart -Abfrage hinzugefügt, um Race-Bedingungen während einer Aktualisierung durch gleichzeitige Anfragen zu verhindern. Zuvor wurden zwei separate Artikel mit derselben Produkt-SKU hinzugefügt, wenn ein Händler zwei parallele Anfragen zum Hinzufügen desselben konfigurierbaren Produkts zu einem Warenkorb sendete. GitHub-37847
  • Die Produktaggregation in GraphQL-Antworten umfasst jetzt Werte ungleich null für Attribute, wenn Use in Layered Navigation auf Filterable (no results) gesetzt ist. Zuvor wurden nur Werte zurückgegeben, die ungleich null waren.
  • Die Leistung der setShippingAddressForEstimate -Abfrage für Warenkorbvorgänge mit benutzerdefinierten Produktattributen wurde verbessert. Zuvor wurden in der Abfrage alle Produktattribute geladen, wenn Parameter als Variablen gesendet wurden.
  • Das Feld products query ConfigurableProduct.configurable_options gibt jetzt nur Werte zurück, für die mindestens ein aktiviertes Produkt aktiviert ist. Zuvor gab dieses Feld deaktivierte einfache Produkte zurück.
  • Die Leistung von GetCategories query wurde verbessert, indem die Anzahl der unnötigen SQL-Abfragen reduziert wurde.
  • Die Handhabung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
  • Die products -Abfrage gibt jetzt alle relevanten Details zur Storefront-Preisgestaltung zurück, wenn die dynamische Preisgestaltung auf "Nein"gesetzt ist und Rabatte angewendet werden. Zuvor wurde der Preisbereich für Produkte nicht zurückgegeben. GitHub-35649
  • GraphQL-Transaktionsnamen enthalten jetzt nur noch die Top-Level-Abfragenamen in den New Relic-Logs. Zuvor enthielten auch Transaktionsnamen sekundäre Abfragenamen.
  • Die Handhabung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
  • Wenn die Sichtbarkeitseinstellung für ein Produkt auf "Catalog" eingestellt ist, lösen products -Abfragen für dieses Produkt die Einstellung jetzt korrekt auf. Zuvor wurde jeder bereitgestellte Filter auf die Einstellung Visibility: Catalog umgestellt. GitHub-36591
  • Die customer -Abfrage gibt jetzt ein product_sale_price -Feld zurück, das die Steuer auf Bestellungen enthält, wenn der Produktpreis so konfiguriert wurde, dass er die Steuer einbezieht. GitHub-36946
  • Produktattribute des Typs DateTime werden jetzt in Produktabfragen dem Filter FilterRangeTypeInput zugeordnet. Zuvor wurden diese Attribute FilterMatchTypeInput zugeordnet. Aufgrund dieser Änderung erfordern Abfragen, die nach DateTime -Attributen filtern, Werte vom Typ from und to anstelle von Übereinstimmungswerten.
  • Die customer-Abfrage gibt jetzt nur Kundenüberprüfungen zurück, die sich auf eine bestimmte Store-Ansicht beziehen, wie erwartet, wenn sie nach Store-ID gefiltert wird.
  • Die categories -Abfrage gibt keinen Fehler mehr zurück, wenn der items.redirect_code -Antwortwert einen Nullwert enthält. GitHub-36675
  • Regelbasierte verwandte Produkte werden jetzt wie erwartet in GraphQL-Antworten geladen, nachdem der Cache vollständig bereinigt wurde. 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.
  • Die changeCustomerPassword-Mutation sendet nun wie erwartet eine E-Mail an Trigger, nachdem ein Passwort erfolgreich zurückgesetzt wurde.
  • urlResolver - und route -Abfragen geben jetzt ein Ergebnis zurück, wenn die Target Path der URL-Umschreibung eine absolute URL ist. Zuvor gab die urlResolver -Abfrage NULL zurück, wenn Sie damit Umleitungsdaten abrufen.
  • Die products -Abfrage gibt jetzt korrekte Beschriftungen zurück, wenn mehrere Store-Ansichten vorhanden sind. GitHub-29635
  • Die categoryList -Abfrage gibt jetzt einen ausgefüllten product -Abschnitt des options -Blocks für die untergeordneten Produkte von Bundle-Produkten wie erwartet zurück. Zuvor wurden keine Informationen zu untergeordneten Bundle-Produkten zurückgegeben.
  • Die route -Abfrage gibt jetzt Routen für Kategorien und Produkte erwartungsgemäß zurück, ohne dass ein interner Server-Fehler auftritt. GitHub-36544
  • Die products -Abfrage ruft jetzt url_key -Werte ab, wenn mehrere Kategorien ausgewählt sind.
  • product -Abfragen geben jetzt Aggregationen nur für Produkte zurück, die dem angegebenen freigegebenen Katalog zugewiesen sind. Zuvor wurden Aggregationsdaten für Produkte, die keinem freigegebenen Katalog zugeordnet waren, in der Navigation auf mehreren Ebenen angezeigt.
  • Die Methode OptionValueProvider class get() gibt jetzt einen Attributoptionenwert basierend auf dem angegebenen option_id wie erwartet zurück. Zuvor wurde ein Fehler zurückgegeben. GitHub-35910
  • Die products -Abfrage gibt jetzt alle verfügbaren Aggregationen (Filter) und deren korrekt übersetzte Bezeichnungen zurück. Zuvor wurden die Aggregat-Bezeichnungen für Preise und Kategorien nicht erwartungsgemäß übersetzt. GitHub-36140
  • Sie können jetzt ein Fragment ProductCard verwenden, wenn Sie related_products, upsell_products und crosssell_products auf ProductInterface abfragen. 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 zusammengehörige Produktdaten zurück, sortiert nach Position. GitHub-33010
  • category_url_path wurde zu ProductAttributeFilterInput hinzugefügt, was die Anforderung aller Produkte für eine Kategorie in einer einzigen Abfrage unterstützt. GitHub-32460
  • Fehlerkorrektur - die Methode, mit der der aktuelle Store in einer GraphQL-Mutation festgelegt wird, wird nun korrekt ausgeführt, bevor die Methode, die die Validierung verarbeitet, ausgeführt wird. GitHub-31336

Bild

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

Import/Export

  • Der Produktimport-Prozess analysiert jetzt Werte mit dem richtigen Trennzeichen. Zuvor verwendete der Importprozess den senkrechten Strich ("|"), um Mehrfachauswahlwerte zu analysieren, bis das Trennzeichen für den ermittelten Wert nicht dem Standardwert entsprach. Der Importvorgang schlug anschließend fehl.
  • 301-Weiterleitungen werden jetzt automatisch erstellt, wenn URL Key -Werte durch den CSV-Import aktualisiert werden.
  • Die Versandtabellenraten werden jetzt wie erwartet in der CSV-Datei für den Tabellenratenimport aktualisiert. Die Datei zum Hochladen der Tabellenrate wird vorübergehend gespeichert, bis der Cron-Auftrag des asynchronen Konfigurationsprozesses ausgeführt wird. Dieser Cron-Auftrag nimmt den neuen Speicherort der Datei auf und verarbeitet ihn entsprechend. Zuvor wurden die Tabellenraten nicht wie erwartet 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 mit demselben Zeitstempel angezeigt. GitHub-36951
  • Produkte mit anpassbaren Optionen können jetzt erfolgreich importiert werden. Zuvor waren die Optionsdaten beim Import verloren. GitHub-37598
  • Sonderzeichen in exportierten CSV-Dateien werden jetzt wie erwartet in Excel dargestellt. GitHub-37921
  • Importieren von Lagerquellen und Kundenadressen mit dem Customers and Addresses (single file) -Option jetzt erfolgreich abgeschlossen.
  • Der Produktimport schlägt nicht mehr fehl, da kein Arbeitsspeicher vorhanden ist. Zuvor schlug der Import einer beliebigen Anzahl von Produkten in eine Datenbank, die bereits ca. zehn Millionen Produkte enthielt, aufgrund von Speichermangel fehl.
  • Validierungsprüfungen stoppen jetzt den Importvorgang wie erwartet, wenn keine gültigen Daten zum Importieren vorhanden sind. Commerce zeigt nun den folgenden Fehler an: There are no valid rows to import. Zuvor wurde die Validierung unter diesen Bedingungen durchgeführt, aber der Importprozess schlug mit dieser 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 dann für Store-Ansichten neu generiert, wenn kein überschriebener url_key -Wert vorhanden ist. Zuvor wurde beim Import von URL-Neuschreibungen mit demselben URL-Schlüssel der vorhandene Standard-URL-Schlüssel für die Store-Ansicht überschrieben. (key_store URL-Neuschreibungen wurden gelöscht, aber die URL-Neuschreibung auf der standardmäßigen Store-Ansichtsebene für das Produkt wurde dennoch auf key_store festgelegt.)
  • Die Produktanzahl ändert sich beim Import nicht mehr unerwartet. Die Cache-Leerung wird jetzt auf nach dem Importprozess verschoben.
  • Der Status geplanter Importaktionen zeigt nun den Erfolg oder Misserfolg des Importvorgangs genau an. Zuvor wurden alle Aktionen als erfolgreich protokolliert.
  • Commerce berücksichtigt jetzt die Einstellung Disable Automatic Group Change Based on VAT ID beim Import von Kundendatensätzen. Zuvor wurde der Wert disable_auto_group_change 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-Autor diese Werte als number, was zu ungültigen Dateien führte. GitHub-33422
  • Merchants 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 Speicheransicht), 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 -Attributen, die von einem Admin-Benutzer mit einer anderen Gebietsschemaeinstellung 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 Attribut country_of_manufacture führen.
  • Die Stammquelldaten werden jetzt erfolgreich vom Store-Importprozess importiert und Commerce zeigt jetzt nach Abschluss des Importvorgangs eine vollständige Benachrichtigung an. Zuvor fehlte die Benachrichtigungsmeldung.
  • Die redundante Indexinvalidierung wurde entfernt, wenn sich Indexer im terminierten Modus befinden.
  • Exportierte Produkte haben jetzt den richtigen manage_stock -Wert, wenn der use_config_manage_stock -Wert gleich 1 ist. Zuvor war dieser Standardwert falsch.
  • Adobe Commerce zeigt jetzt im Raster für den geplanten Import eine informative Fehlermeldung an, wenn ein Bild bei einem geplanten Import nicht erfolgreich importiert wurde. Zuvor wurde keine Fehlermeldung angezeigt.
  • Der Produktimport-Prozess wird nicht mehr unterbrochen, wenn Produktbilder fehlen. Bisher wurde in Adobe Commerce folgender Fehler angezeigt: Maximum error count has been reached or a system error is occurred!, wenn beim Import eines Drittanbieterdienstes mithilfe einer CSV-Datei ein Produktbild fehlte:
  • Die Leistung des Kundenexports aus dem Kundenraster wurde in Bereitstellungen verbessert, in denen B2B aktiviert ist.
  • Beim Produktimport wird kein Validierungsfehler mehr ausgegeben, wenn ein Attributwert in der Spalte configurable_variations ein Komma enthält.
  • Die Dekodierung wurde vom Exportvorgang 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 nach dem Export und Import des Produkts im Seitenaufbau-Editor entfernt.
  • Nicht standardmäßige Konfigurationen (Website- oder Speicherbereich), die als Umgebungsvariablen hinzugefügt werden, unterbrechen den app:config:import-Prozess nicht mehr mit einem Rekursionsfehler.
  • Die Katalogsuche und Preisindizes im Modus Im Speichermodus aktualisieren werden nach dem Import nicht mehr ungültig gemacht. Zuvor wurde die Version der Elasticsearch-Indexer-Dokumentversion geändert, wenn neue und vorhandene Produkte importiert wurden.
  • Produktberichte werden jetzt in das Verzeichnis var exportiert. Zuvor wurden diese Berichte in den Basisordner des Dokuments exportiert, der in Cloud-Instanzen schreibgeschützt ist.
  • Leere Mehrfachauswahl-Felder für Kundenadressen unterbrechen oder stoppen den Exportvorgang nicht mehr.

Index

  • Verbesserte Leistung des catalogrule_product -Indexers, wenn keine Katalogregel festgelegt ist. GitHub-34784
  • Probleme mit der Preisindexerleistung wurden behoben. Die Indexerleistung verschlechtert sich nicht mehr schrittweise. Der Indexer wurde überarbeitet, um die Verarbeitungsgeschwindigkeit des Indexers zu erhöhen, indem die Erstellung temporärer Tabellen geändert wird. Diese temporären Tabellen werden jetzt neu erstellt, anstatt durch zeitaufwendigere DELETE-Anweisungen behoben zu werden.
  • Die Leistung des Preisindexers wurde verbessert. Dem Preisindexer wurde ein Indexhinweis hinzugefügt, der die Laufzeit von MySQL-Abfragen verbessert, die während der Indizierung ausgelöst werden.
  • Alle Indexer verwenden jetzt dieselben Farben, um den Indexstatus darzustellen. GitHub-34648
  • Die Leistung des Produktindexers für Katalogregeln in Bereitstellungen, in denen Regeln nicht allen Websites zugewiesen sind, wurde verbessert.
  • Wenn Sie einen benutzerdefinierten Produkttyp erstellen, wenn die Indexer auf Update on schedule gesetzt sind, schlägt die Aufgabe zum Aktualisieren des Index cron nicht mehr fehl. GitHub-36471
  • Anzeigeprobleme auf der Seite mit Details zu Storefront-Produkten, die auf die Indexierung von Katalogberechtigungen zurückzuführen waren, wurden behoben. Zuvor hat Adobe Commerce zuerst die Indextabelle geleert und dann während eines vollständigen Indizierungsvorgangs mit catalogpermissions_product oder catalogpermissions_category erneut indiziert. Katalogberechtigungen funktionierten auf 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
  • Beim Ändern des Indexermodus für mehrere Indexer (d. h. eine Änderung des Massenaktionsindexmodus) wird der Modus eines Indexers jetzt nur geändert, wenn sich der aktuelle Modus von dem angewendeten unterscheidet. Dies verbessert die Leistung, indem unnötige Zugriffe auf die Datenbank verhindert werden. GitHub-36823

Infrastruktur

  • Dem Controller zur Aktivierung der Admin-Verwendung wurde eine fehlende return -Anweisung hinzugefügt. Zuvor gab es keine return -Anweisung und der Controller in der FrontendController -Klasse wurde falsch verarbeitet. GitHub-31374
  • MySQL CREATE TEMPORARY TABLE ... LIKE wurde durch umgestaltetes CREATE TEMPORARY TABLE für die Einhaltung von MySQL 8.x ersetzt. GitHub-37926
  • Adobe Commerce enthält nicht mehr den vollständigen Pfad zum Stammverzeichnis des Servers in der Fehlermeldung, die angezeigt wird, wenn eine fehlerhafte HTTP-Anforderung an den Server gesendet wurde. Als zweites Argument werden jetzt nur 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
  • Die vom Datenquellenmodell bereitgestellten und mit dem Setup-Datenpatch (normalerweise von Drittanbietermodulen) installierten Attributoptionen können jetzt mit Kundensegmentregeln verwendet werden. Zuvor gab diese Kombination nicht die Liste der Kunden zurück, die mit dem konfigurierten Segment übereinstimmten.
  • Das E-Mail-Vorlagenmodul 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 Produktattribute zurück. GitHub-29123
  • CSS-Dateien sind nicht mehr beschädigt, wenn sie zusammengeführt werden, wenn sich var/tmp und pub/static in verschiedenen Dateisystemen befinden 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 atomisch. GitHub-29172
  • Fehlerkorrektur - Beim Aufrufen der Mitgliederfunktion getId() unter int tritt kein möglicher Fehler mehr auf, der gelegentlich eine Ausnahme ausgelöst hat, wenn ein Kunde in der Admin-Konsole angezeigt wurde.
  • Typprüfungen werden jetzt für den Array-Typ im Design-Design-Konfigurationsprozessor erzwungen. GitHub-34440

Inventory management

  • Produkte werden nun nach einem Kreditvermerk, der eine Rückgabe der Produktmenge enthält, automatisch wieder in den Lagerstatus zurückgeführt. Bisher mussten Händler den Status des Produktbestands manuell ändern, wenn ein Produkt nicht vorrätig war, aber ein Kreditmemo den Lagerbestand dieses Produkts zurückgab.
  • Die Leistung des Inventarindexers im asynchronen Modus wurde verbessert, indem redundante Anforderungen entfernt wurden, um Standardquellelemente neu zu indizieren.
  • Korrektur von Problemen mit dem Inventarindex, die sich auf die Genauigkeit der Lagerbestandsanzahl konfigurierbarer Produkte auswirkten. GitHub-36421
  • Die Aktualisierung von Inventarquellelementen über REST V1/inventory/source-items funktioniert jetzt schneller. Der Aufruf Trigger keinen Neuindizierungs- oder Clean-Cache-Vorgang mehr für unveränderte Inventarprodukte.
  • REST V1/products/<sku> Trigger jetzt bei der Aktualisierung des Lagerstatus eines Produkts eine automatisierte Bestandsneuindizierung. Zuvor wurde für das Produkt, das aktualisiert wurde, keine Neuindizierung des Lagers ausgelöst.
  • Der konfigurierbare Status des Produktbestands wird jetzt auf der Storefront wie erwartet aktualisiert, wenn untergeordnete Produkte um V1/inventory/source-items aktualisiert werden.
  • Der REST-Aufruf POST <store_code>/V1/inventory/source-items validiert jetzt die Payload für Leerzeichen in den zurückgegebenen Inventarquellelementen und sendet nach Bedarf eine Fehlermeldung über die Validierung.
  • Händler können jetzt Kunden darüber informieren, dass eine Bestellung zur Übernahme bereit ist, wenn die Einstellung No Manage Stock für ein Produkt aktiviert ist. Bisher wurde bei Aktivierung dieser Einstellung in Commerce folgende Fehlermeldung angezeigt: Your order is not ready for pickup.
  • Händler können jetzt ein Kreditmemo für Bestellungen erstellen, aus denen ein einfaches Produkt, das mit einem konfigurierbaren Produkt verknüpft ist, gelöscht wurde. Zuvor konnten Händler das Kreditmemo nicht erstellen, und Commerce warf eine TypeError -Ausnahme zu.
  • Die Quell-Anzahl der Admin-Raster gibt jetzt gültige Datensätze zurück, nachdem ein Filter angewendet wurde. Zuvor gab die Methode getSourcesCount immer die Gesamtanzahl der Quellen zurück, nachdem ein Filter angewendet wurde.
  • Die Seite Kategorie führt keine Umleitungen mehr zum Admin-Dashboard aus, wenn Sie Produkte mit der Option "Von Lager zu Ende verschieben"sortieren. Das Problem wurde behoben, indem die SQL-Join-Anweisung erst in die bedingte Anweisung eingefügt wurde, nachdem sichergestellt wurde, dass sie bereits nicht enthalten ist. Zuvor wurde die Seite mit der MeldungInvalid security or form key. Please refresh the page zum Admin-Dashboard umgeleitet.
  • AUTO_INCREMENT der Tabelle inventory_source_item wird bei jedem UPDATE-Vorgang nicht mehr erhöht. Zuvor wurde bei jeder Aktualisierung der Wert AUTO_INCREMENT dieser Tabelle erhöht, was dazu führte, dass der Wert AUTO_INCREMENT beim Hinzufügen eines neuen Datensatzes zu den inventory_source_item table nicht mehr im Bereich lag. Daher erhielten Admin-Benutzer den folgenden Fehler, als sie versuchten, ein neues Produkt aus dem Admin zu erstellen: Numeric value out of range....
  • Admin-Benutzer können jetzt über den Admin ein Produkt zu einem Kundenwagen für einen bestimmten Umfang der Store-Ansicht mit Inventory management hinzufügen. Zuvor wurde die Bestand-ID nicht ordnungsgemäß ermittelt und Admin-Benutzer konnten das Produkt nicht zum KundenWarenkorb hinzufügen.
  • Die Synchronisierung zwischen Bestand und Katalog beruht nicht mehr auf der Konfigurationseinstellung 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 innerhalb der Produktpalette liegt, die bei Auswahl der Versandquelle verfügbar ist.
  • Der konfigurierbare Status des Produktbestands wird jetzt ordnungsgemäß aktualisiert, wenn ein konfigurierbares Produkt und dessen untergeordneter Produktwert Stock Availability durch eine gebündelte Bestandsaktualisierung aktualisiert werden. Zuvor war es nicht möglich, ein konfigurierbares Produkt und dessen untergeordnete Produkte per Massenaktualisierung wieder auf Lager zu bringen.
  • Der Datentyp für nicht standardmäßige Quellen wurde auf DECIMAL (12, 4) aktualisiert, um bis zu acht ganzzahlige Ziffern zu unterstützen. Hierbei handelt es sich um dieselbe Grenze, die für Standardlager implementiert ist. Dieser Wert wird jetzt mit den Admin-Produktseiten zum Hinzufügen und Bearbeiten 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 standardmäßige als auch nicht standardmäßige Quellen zeigen jetzt die richtigen Informationen für die verkaufbare Produktmenge an, wenn eine nicht standardmäßige Quelle, die aus der Storefront bestellt wurde, für den Versand verarbeitet wird. Zuvor zeigte Adobe Commerce einen falschen Lagerstatus für Produktquellen an.
  • \Magento\Catalog\Model\Product::getIsSalable() gibt nun den Aktienstatus basierend auf dem im Produktobjekt (\Magento\Catalog\Model\Product::getStoreId()) definierten Umfang zurück. Zuvor gab getIsSalable() den Lagerstatus basierend auf dem aktuellen Umfang unabhängig vom Produktobjekt zurück.

Protokollierung

  • Aktualisierung des Datums-/Uhrzeitformats in der Funktion "Systemberichte", um Einträge aus Protokolldateien in Berichten aufzunehmen.
  • Administratoren können jetzt die Protokolle für Massenaktionen sehen, die von Integrationen im Abschnitt "Massenaktionsprotokoll"des Administrators erstellt werden.

Anmelden

  • Das Zurücksetzen eines Kennworts in einem Browser und die anschließende Anmeldung über einen anderen Browser führen nicht mehr zu einer Ausnahme. GitHub-36447
  • Kunden werden nun wie erwartet zur Anmeldeseite weitergeleitet, nachdem sie ein Konto aktiviert haben. Zuvor wurden Kunden automatisch angemeldet.
  • Händler können jetzt Bilder mit demselben Namen, aber unterschiedlichen Groß- und Kleinschreibung (eine Mischung aus Groß- und Kleinschreibung) in die Media Gallery hochladen. Zuvor wurde bei den Namen von Bilddateien im Seitenaufbau nicht zwischen Groß- und Kleinschreibung unterschieden. Bei anderen Dateien als der Groß-/Kleinschreibung wurde die Schreibweise im Commerce-Medienspeicher überschrieben, der auf Dateisystemen gehostet wurde, bei denen die Groß- und Kleinschreibung beachtet wurde.

Newsletter

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

Bestellungen

  • Produkte, die aus dem Admin-Warenkorb in die Liste der zu bestellenden Artikel verschoben wurden, werden nun wie erwartet aus dem Warenkorb gelöscht. GitHub-37538
  • Händler können jetzt Kreditkarten erstellen, wie es für die teilweise Rückgabe von Bestellungen erwartet wird, die teilweise durch Bonuspunkte bezahlt wurden. Zuvor wurde der Auftragsstatus fälschlicherweise als geschlossen identifiziert, als ein Händler eine partielle Rückgabe erstellte, und auf der Seite "Admin-Bestellung"wurden keine Kreditkartenoptionen angezeigt.
  • Die Rotation des Admin-Aktionsprotokolls funktioniert jetzt erwartungsgemäß, wenn die Rotations-Log-Archivierungshäufigkeit auf wöchentliche oder monatliche Intervalle festgelegt ist. Bisher wurden bei der Festlegung wöchentlicher oder monatlicher Intervalle die Protokolle nicht rotiert.
  • Commerce wendet nun den richtigen Rabattbetrag auf teilweise stornierte Bestellungen an. Zuvor wurde der in der Spalte base_discount_cancelled berechnete Rabattbetrag bei Änderung einer Bestellung falsch berechnet. Die Rechnungen für diskontierte Bestellungen wurden um eine Unterstützung für negative Werte ergänzt.
  • Der REST V1/orders -Endpunkt wendet beim Import von Bestellungen nun Geschenkkarten wie erwartet an. Bisher wurden Änderungen an Attributen für die Erweiterung von Geschenkkarten in diesem Endpunkt nicht gespeichert.
  • Commerce sortiert jetzt benutzerdefinierte Kundenadressattribute basierend auf der Sortierreihenfolge, die beim Erstellen der Bestellung durch den Administrator angegeben wurde.
  • Die Seite "Admin Sales Order Grid"wird jetzt erwartungsgemäß geladen, wenn ein Händler eine Suche von dieser Seite aus startet. Zuvor, als ein Händler versuchte, Bestellungen aus dieser Tabelle zu durchsuchen, fror die Seite ein, und Commerce in der Browserkonsole einen Request-URI Too Long -Fehler anzeigte.
  • Der Bestellstatus wird nun als abgeschlossen und nicht mehr als abgeschlossen markiert, wenn der gesamte Bestellbetrag mit einem Store-Guthaben plus einer zusätzlichen Zahlungsmethode zurückerstattet wurde. Zuvor wurde der Bestellstatus als abgeschlossen markiert, da der erstattete Betrag falsch berechnet wurde.
  • Die Leistung der OrderRepository::get() -Methode wurde verbessert, indem die Anzahl der Bestellungen aus der Datenbank reduziert wurde. Zuvor hat diese Methode eine Bestellung mehrmals geladen. GitHub-36636
  • Händler können jetzt Kreditkarten für Bestellungen generieren, die einige Artikel mit einer Gesamtsumme von null enthalten, wenn andere Bestellartikel zur Rückerstattung verfügbar sind. Bisher konnten Händler nicht mehrere Erstattungen vornehmen, wenn ein Kunde einen 100 % Rabatt auf einige Artikel in der Bestellung hatte.
  • Links zwischen untergeordneten und übergeordneten Produkten werden jetzt bei der Neuanordnung des untergeordneten Produkts vom Administrator auf der Bestellseite angezeigt. GitHub-37028
  • Der Header-Abschnitt der Bestellseite enthält jetzt die erwarteten Informationen zur gesendeten Rechnung, zum Kreditmemo und zum Versand. GitHub-27474
  • Kreditkarten für Bestellungen, die nur ein konfigurierbares Produkt enthalten, werden jetzt korrekt generiert. Zuvor gab die Funktion isLast() true nicht wie erwartet zurück. GitHub-36722
  • Verbesserte Leistung des aggregate_sales_report_bestsellers_data-Cron-Auftrags durch Optimierung der Hauptdatenabfrage.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn ein Kreditmemo mit einer Offline-Rückerstattung an ein Kundenkonto erstellt wird, wenn der Admin-Benutzer nicht über die Berechtigung für die Website des Kunden verfügt. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben: More permissions are needed to view this item und der Administrator konnte keine Store-Gutschrift erstellen.
  • Der Bestellstatus ist nun korrekt, wenn eine teilweise Rückerstattung für eine Bestellung vorgenommen wurde, die Bundle-Produkte enthält. Zuvor wurde der Auftragsstatus nach einer teilweisen Rückerstattung als vollständig eingestuft, obwohl die verbleibende Bestellung noch nicht abgeschlossen war. GitHub-37377
  • Käufer können ein Produkt nicht mehr mit einem benutzerdefinierten Preis bestellen, wenn eine Bestellung vom Administrator unter Verwendung des einmaligen benutzerspezifischen Preises zuerst generiert wird. Wenn zuvor eine Bestellung einen Artikel mit benutzerdefinierten Preisen enthielt, wurde dieser benutzerdefinierte Preis für andere Bestellungen mit der Funktion "Neu bestellen"angewendet.
  • Käufer können auf der Bestellseite keine falschen Bestellstatus mehr speichern. Der Bestellstatus wird beim Versand eines Artikels nicht mehr von Fertig stellen auf Verarbeitung geändert. Zuvor prüfte Adobe Commerce den aktuellen Bestellstatus nicht vor dem Speichern des Bestellstatus, nachdem ein Käufer einen Kommentar eingegeben hatte. GitHub-36562
  • Adobe Commerce gibt keinen Fehler mehr auf der Store-Bestellrückgabeseite aus, wenn das konfigurierbare Produkt, das zurückgegeben wird, 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 Raster "Verkaufsaufträge"wird jetzt asynchron mit allen Bestellungen wie erwartet synchronisiert. GitHub-36562
  • Die Funktion "Nach Kaufdatum filtern"im Abschnitt "Kundenaufträge"der Bestellseite funktioniert jetzt erwartungsgemäß. Zuvor trat ein JavaScript-Fehler auf, wenn die Zeitzonenkonvertierungslogik einen Fehler auslöste, wenn dieselbe Zeitzone für die Methode bereitgestellt wurde.
  • Das Adobe Commerce-Dashboard zeigt jetzt die richtigen Bestellungsstatistiken beim ersten Laden an. Zuvor wurden im Dashboard falsche Bestellinformationen angezeigt, aber nach der Aktualisierung des Zeitraums wurden die korrekten Informationen angezeigt.
  • Admin-Benutzer werden jetzt wie erwartet zur Bestellseite weitergeleitet, nachdem sie beim Erstellen neuer Bestellungen vom Administrator eine Store-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. Administratoren können jetzt nur noch Bestellungen aufgeben, wenn die ausgewählten Artikel (Produkte) vorrätig sind oder verkauft werden können. Zuvor gab diese API nur Informationen zu den Produkten zurück, die sich auf Lager befanden.
  • Die Credit Memo-Seite stürzt nicht mehr ab, wenn der kostenlose Versand aktiviert ist, wenn der Versandpreis Steuern enthält und Steuerberechnungen nach Rabatten durchgeführt werden. Zuvor hatte Adobe Commerce eine Division by zero -Ausnahme ausgelöst. GitHub-36800
  • Die Verwendung des Endpunkts rest/V1/orders/{id}/comments 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-Reihenfolge"wurde die Bestellung angezeigt. GitHub-34180
  • Rechnungen, Sendungen und Credit Memos können jetzt erfolgreich zusammen mit den zugehörigen Bestellungen aus dem Archiv verschoben werden, wenn die darin enthaltenen IDs von den Bestell-IDs abweichen. Wenn zuvor eine Bestellung in das Archiv verschoben und dann wiederhergestellt wurde, fehlten in dieser Reihenfolge die Datensätze zu Rechnungsstellung, Versand und Guthaben, wenn die ID-Nummern nicht übereinstimmten. GitHub-36847

Page Builder

  • Bei Bildern wird jetzt das richtige Seitenverhältnis beibehalten, wenn die Größe im Seitenaufbau geändert wird. GitHub-37493
  • Der Seitenaufbau zeigt jetzt bei Bedarf Fehlermeldungen an, wenn Sie versuchen, ein Bild hochzuladen, das die angegebene maximale Dateigröße überschreitet. Zuvor zeigte Commerce eine Popup-Warnmeldung für hochgeladene Bilddateien an, die kleiner als das angegebene Maximum waren.
  • CMS-Seiten-Produktregler enthalten jetzt die übergeordneten Produkte aller untergeordneten Produkte, die zur 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 Modul Magento_AsyncConfig deaktiviert ist. Zuvor enthielten E-Mail-Vorlagen nur Rohdaten-HTML.
  • Die Leistung von Seitenaufbau-Speichervorgängen im Chrome-Browser wurde verbessert.
  • Sie können jetzt die Option "Seitenaufbau"unter Admin > Content > Pages verwenden, um kopierten Text mithilfe des Elements text in alle Stile einzufügen. Zuvor zeigte der Seitenaufbau nur Nur-Text an und speicherte keine Stile.
  • CORS-Fehler werden bei der Bearbeitung von Produktinhalten mit Page Builder nicht mehr angezeigt, wenn der Admin-Benutzer über eine bestimmte ACL verfügt. Der Admin-Benutzer kann das Produkt jetzt speichern. Zuvor hat Page Builder das Produkt nicht gespeichert, und der Speichervorgang wurde eingefroren.
  • Genaue Informationen zur Dateigröße sind jetzt in der Bildvorschau für hochgeladene Bilder im Seitenaufbau enthalten.
  • Seitenelemente des Seitenaufbaus werden jetzt im Chrome-Browser (v112) mit einer akzeptablen Geschwindigkeit dargestellt. Zuvor war das Speichern von Inhalten mit dem im Chrome-Browser ausgeführten Page Builder langsam, und Commerce protokollierte diesen Fehler in der Browserkonsole: [ERROR] Page Builder was rendering for 5 seconds without releasing locks.
  • Die automatische Wiedergabe des Seitenaufbau-Videoelements funktioniert jetzt in mobilen Safari-Browsern in iOS wie erwartet, wenn das Element direkt mit einer Remote-Videodatei verknüpft ist. Zuvor wurde kein Vorschaubild angezeigt.
  • Der Seitenaufbau funktioniert jetzt wie erwartet im Chrome-Browser. Zuvor wurden Inhaltsänderungen, die in diesem Browser vorgenommen wurden, nicht immer gespeichert.
  • Beim Laden einer Admin-Produktebearbeitungsseite für ein Produkt wird nicht mehr zeitweise ein JavaScript-Fehler vom Typ Uncaught TypeError generiert.
  • Bilder, die über den Seitenaufbau-Editor hochgeladen werden, werden jetzt mit Tags versehen, die unter Content > Media Gallery verwendet werden. Zuvor wurden diese Bilder in der Media Gallery als nirgendwo verwendet markiert.
  • Durch das Hinzufügen eines Produkts zu einem Warenkorb aus dem Page Builder-Karussell wird die Artikelmenge nicht mehr von Seiten mit zwei verschiedenen Widgets dupliziert, die dieselben Produkte anzeigen.
  • Der Seitenaufbau fügt das Attribut tabindex HTML nicht mehr zu Hyperlink-Tags a hinzu, wenn Sie einen Hyperlink bearbeiten und dann eine Vorlage speichern.
  • Das Produkt-Widget und die Vorschau des Seitenaufbaus verarbeiten jetzt HTML-Sonderzeichen ordnungsgemäß. Zuvor zeigte das Produkt-Widget SKUs mit dem Zeichen & nicht korrekt an.
  • Der Inhalt des Textelements von Page Builder wird jetzt erwartungsgemäß aktualisiert, wenn Sie den gesamten Inhaltsbaustein im Vorschaumodus auswählen und aktualisieren.
  • Das Kopieren und Einfügen von Text aus einem Seitenaufbau-Texteditor in einen anderen funktioniert jetzt erwartungsgemäß. Zuvor konnte die Seite, auf die Sie Text einfügen wollten, nicht gespeichert werden, und Adobe Commerce zeigte diesen Konsolenfehler: [ERROR] Page Builder was rendering for 5 seconds without releasing locks..
  • Der in älteren Versionen von Page Builder erstellte Inhaltstyp column-block wird jetzt korrekt angezeigt.
  • Die Filterung der Produktmetadaten-Beschreibung während der Produkterstellung durch den Administrator wurde verbessert. Bisher wurde bei aktiviertem Page Builder die Beschreibung der Produktmetadaten basierend auf der Standardmaske {{name}} {{description}} generiert. Die standardmäßige Meta-Beschreibungsmaske des Produkts besteht jetzt aus {{name}}. GitHub-36107
  • Beim Hinzufügen eines dynamischen Blocks ohne Inhalt wird kein Fehler mehr Trigger.

Zahlung

  • Commerce behandelt jetzt korrekt 502-Fehler von PayPal, indem es die Erstellung von Bestellungen verhindert, wenn dieser Fehler auftritt. Zuvor wurden Bestellungen trotz eines 502-Fehlers von PayPal noch erstellt, was zu Inkonsistenzen zwischen Commerce-Einträgen und PayPal-Einträgen führte.
  • PayPal Express Checkout-Transaktionen beinhalten jetzt untergeordnete Produkt-SKUs und vollständige Produktnamen. Die Datei "Magento/Paypal/Model/Cart.php"erfasst jetzt untergeordnete Produkt-SKUs mit ihrem übergeordneten Produktnamen, um den Produktnamen mit der untergeordneten SKU zu identifizieren. GitHub-36808
  • Die Konfigurationseinstellung Card Security Code Does Not Match wird jetzt während des Zahlungsvorgangs von Payflow Pro erwartungsgemäß verarbeitet. Zuvor war dieser Bewertungsprozess noch nie abgeschlossen, was den Checkout blockierte.
  • Die Option Vault-Zahlungsmethode wird nicht mehr im Admin-Checkout-Workflow angezeigt, wenn der Käufer über kein Vault-Token verfügt. GitHub-36273
  • Die Schaltfläche Venmo kann jetzt ausgeblendet werden, wenn die Schaltflächen "PayPal"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 eine Versandmethode auswählen, während sie während des Checkouts Couponcode anwenden. Zuvor hatte Commerce unter diesen Bedingungen einen Fehler ausgegeben und der Bestellung eine Pauschalversandrate zugewiesen.
  • Probleme mit der Storefront-Verarbeitung der Zahlungsmethoden von PayPal und PayPal wurden behoben.
  • Es wurden Probleme mit Fallback-URLs für Bestellungen behoben, die von Ideal-Zahlungen 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 die Käufer sehen jetzt nur noch Karteninformationen, die in dem Laden gespeichert wurden, in dem sie einkaufen. Bisher konnten Käufer gespeicherte Karteninformationen aus allen Geschäften beim Checkout sehen. GitHub-34253
  • Käufer können jetzt eine Bestellung, die an mehrere Adressen versandt wird, mithilfe einer Braintree-Zahlungsmethode auschecken, wenn die Vault für Kartenzahlungen deaktiviert ist. GitHub-37615
  • Teilfakturierte Bestellungen werden nun wie erwartet in Implementierungen erfasst, in denen Händler über zwei verschiedene Händlerkonto-IDs für dieselbe Braintree-Währung verfügen.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn eine zweite Teilrechnung für eine von Braintree bezahlte Bestellung erstellt wird, wenn Enable Vault for Card Payments aktiviert ist. Zuvor hatte ein Händler, der versuchte, eine zweite Rechnung zu erstellen, folgenden Fehler ausgegeben: 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 wird im Checkout-Workflow nicht mehr automatisch deaktiviert, wenn ein Käufer seine Rechnungsadresse aktualisiert. Zuvor war die Zahlungsmethode deaktiviert, als der Käufer die Schaltfläche My billing and shipping address are the same deaktiviert hatte.
  • Behebung von Problemen beim Auschecken mit PayPal über Braintree nach der Aktualisierung von Adobe Commerce 2.4.5-p2. GitHub-37242
  • Telefonnummern werden jetzt erwartungsgemäß mit Adressen in den Versandadressen der Google Pay Modal-Popup-Adresse angezeigt. Zuvor fehlten Telefonnummern.
  • Bestellungen werden jetzt erfolgreich mit Braintree platziert, wenn die Braintree-Antwort einen leeren Wert für threeDSecureInfo/eciFlag enthält. Zuvor kam es beim Checkout zu einem PHP-Fehler, wenn dieser Wert leer war.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn ein Käufer beim Kassengang mit Google Pay aus dem Mini-Warenkorb einen Gutschein auf der Bestellüberprüfungsseite anwendet. Zuvor wurden Käufer auf eine 404-Seite umgeleitet.
  • Käufer können jetzt mit Braintree Payments und Adobe Commerce 2.4.6 mit unsichtbarem ReCAPTCHA v2 oder v3 einen Checkout abschließen. GitHub-37241
  • Käufer können nicht mehr auf die Schaltfläche PayPal klicken, um ein konfigurierbares Produkt zu erwerben, ohne zuvor die erforderlichen Optionen auszuwählen. Bisher konnten Käufer auf die Schaltfläche PayPal klicken und wurden anschließend mit einem Fehler zur Produktseite zurückgeleitet:
  • Die Schaltfläche PayPal wird nun wie erwartet auf den Warenkorb- und Mini-Warenkorbseiten angezeigt. Zuvor wurde diese Schaltfläche nicht auf der Warenkorbseite angezeigt und auf der Mini-Warenkorbseite dupliziert.

Leistung

  • Durch mehrere Klicks im Dropdownmenü für Massenaktionen der Seite Verkauf > Bestellungen werden nicht mehr mehrere POST-Anforderungen generiert. GitHub-37997
  • Nur 200 - oder 404 -Antworten werden zwischengespeichert, wenn ein Käufer zu einer Seite navigiert, auf die eine 301-Umleitung Trigger wird, es sei denn, der Cache-Control-Header 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 in seinem Cache-Control-Header. GitHub-36492
  • Der nicht verwendete Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper wurde aus Magento\Catalog\Model\ProductRepository entfernt. Zuvor hat ProductRepository diesen Helfer geladen, der ein Adminhtml Controller ist. GitHub-37864
  • Die Leistung beim Laden von Seiten wurde verbessert, wenn gebündelte Produkte mit vielen Optionen ausgestattet werden. GitHub-29409
  • Der Prozess der Zuweisung von Produkten zu Kategorien über den Tab Products in Category wurde optimiert. Die Schaltflächen Assign und Remove auf der Registerkarte Add Product by SKU sind jetzt deaktiviert, bis Produkte vollständig in das Raster geladen sind. Bisher konnten Admin-Benutzer keine Produkte nach SKU in Katalogen hinzufügen, die Millionen registrierter Produkte enthielten.
  • Die Leistung der addProductToCart-Mutation bei der Ausführung mit vielen benutzerdefinierten Produktattributen wurde verbessert. Zuvor, als diese Mutation mit vielen Produktattributen ( ca. 1000) ausgeführt wurde, versuchte Commerce, alle Produktattribute zu laden.
  • Leistungsprobleme beim Laden von Produktattributen, die von Warenkorbregeln verwendet werden, wurden behoben. Jetzt werden nur Produktattribute für aktive Warenkorbregeln geladen.
  • Der Befehl bin/magento setup:perf:generate-fixtures setup/performance-toolkit/profiles/ee/small.xml wird jetzt erfolgreich ausgeführt, wenn er mehrmals ausgeführt wird. Zuvor wurde dieser Fehler ausgegeben, wenn er mehr als einmal ausgeführt wurde: Coupon with the same code already exists.

Promotion

  • Die Auswirkungen der Fixed amount discount for whole cart -Preisregel werden bei Anwendung der Apply to shipping amount -Regel jetzt proportional zwischen Produkten und Versandmengen verteilt. Zuvor waren die Rabattberechnungen falsch.
  • Die Einstellung 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

  • Das unsichtbare reCAPTCHA v3 funktioniert jetzt wie erwartet für die Schaltfläche der Checkout-Seite Sign in . Bisher konnten sich Käufer nicht anmelden und Commerce hatte JavaScript-Fehler.
  • Die Google reCAPTCHA im Checkout-Workflow funktioniert jetzt wie erwartet für Schecks, Geldbestellungen und benutzerdefinierte Zahlungsmethoden.
  • Adobe Commerce forms können nicht mehr gesendet werden, bevor das Kontrollkästchen Google ReCAPTCHA geladen wird.
  • Das reCAPTCHA-Widget steht auf der Zahlungsseite jetzt vor der Schaltfläche Place Order . Zuvor wurde das Widget oben auf der Seite angezeigt.

Berichte

  • Der Bestellbericht (REPORTS > Sales > Orders) enthält jetzt die richtigen Bestellwerte, wenn Bestellungen von Geschäften generiert werden, die nicht standardmäßige Währungen verwenden. Zuvor enthielt dieser Bericht falsche Werte. GitHub-36742
  • Irreführende Informationen im Bestellformular wurden überarbeitet, um Klarheit zu schaffen.
  • Admin-Benutzer können jetzt auf der Seite "Bericht zu abgebrochenen Warenkörben"nach Datensätzen mit E-Mails suchen, die + (Plus)-Zeichen enthalten. GitHub-36560
  • GraphQL-Transaktionsnamen werden jetzt ordnungsgemäß angezeigt, nachdem New Relic vom Commerce-Administrator deaktiviert wurde. GitHub-36112

Überprüfungen

  • Käufer können keine doppelten Produktüberprüfungen mehr schnell senden, wenn Invisible reCAPTCHA v3 aktiviert ist.

Prämien

  • Die Gültigkeit von Bonuspunkten wird nicht mehr gesendet, nachdem die Punkte abgelaufen sind. Die Cron-Aufgaben magento_reward_balance_warning_notification und magento_reward_expire_points wurden überarbeitet, um die Flexibilität und E-Mail-Versandkapazität zu erhöhen. Bisher konnten Händler nicht viele E-Mails senden, die von diesen Cron-Aufgaben generiert wurden. Dies könnte zu Verzögerungen bei der Bereitstellung zeitkritischer Benachrichtigungen geführt haben.
  • Abgelaufene Belohnungspunkte werden nun wie erwartet von der aktuellen Belohnungspunktebauschale eines Käufers abgezogen.
  • Bei der E-Mail-Benachrichtigung zur Aktualisierung des Saldos der Bonuspunkte wird nun der aktuelle Store-Kontext berücksichtigt. Zuvor wurden in der E-Mail zur Aktualisierung des Guthabenbilds Konfigurationseinstellungen für den Standardspeicher verwendet.
  • Nach der Erstellung eines Kreditmemotos können jetzt Bonuspunkte zurückerstattet werden. Zuvor konnten Händler nach der Erstellung eines Kreditmemos keine Belohnungspunkte zurückgeben, und der Bestellstatus blieb bei Completed, nicht bei Closed.

RMA

  • Die REST POST /V1/returns -Anfrage erstellt jetzt eine RMA pro Produkt. Bisher konnte diese Anfrage die Validierung umgehen und mehrere RMAs pro Produkt zurückgeben.
  • RMA-Attribute werden jetzt automatisch zum standardmäßigen EAV-Formular hinzugefügt, wenn das Attribut Show on Storefront RMA auf no gesetzt ist. Zuvor war das Popup mit den Details zum RMA-Element leer, wenn ein benutzerdefiniertes Rückgabeattribut erstellt wurde und das Attribut Show on Storefront RMA auf no festgelegt wurde.
  • 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 zur Produktbearbeitung aktiviert ist.
  • Das Attribut Enable RMA auf der einzelnen Produktebene berücksichtigt jetzt die Store-RMA-Einstellungskonfiguration. Bisher wurde diese Einstellung standardmäßig deaktiviert, wenn Sie ein Produkt hinzugefügt haben, unabhängig von den Speicherkonfigurationseinstellungen.

Suche search-heading

  • Die Suchvorschläge für die automatische Vervollständigung im Minisuchfrontend der Kopfzeile funktionieren jetzt erwartungsgemäß. Bisher wurde dieses Feld durch die automatische Vervollständigung nicht ausgefüllt, wenn diese Funktion aktiviert war. GitHub-37557
  • Die Leistung von Abfragen über die Admin-Suchleiste wurde durch Hinzufügen eines Indexers verbessert. Zuvor war die Dauer der Abfrage umso länger, je größer die Tabelle search_query war.
  • Die alphabetische Sortierung von Produkten nach Namen funktioniert nun bei Namen, die türkische Zeichen enthalten, korrekt.
  • Die Eigenschaft des Produktattributs Use in Search Results Layered Navigation wird jetzt nur angezeigt, wenn die Einstellung Use in Search auf Yes gesetzt ist.
  • Die erweiterten Suchpreise und SKU-Filter funktionieren jetzt ordnungsgemäß, 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 Tabelle search_query verringert. Zuvor wurde bei falschen Abfragen oder Abfragen über leere Suchfelder ein großer Datensatz zurückgegeben, was die Größe der search_query -Tabelle vergrößerte und zu Problemen mit /tmp führte.
  • Storefront-Filter funktionieren jetzt wie erwartet, wenn Katalogeinträge mit Dropdown-benutzerdefinierten Attributen sortiert werden.
  • Suchergebnisse zeigen nun relevante Ergebnisse basierend auf der Suchgewichtung der Attribute wie erwartet an.
  • Informativer Text unter dem Eingabefeld Storefront Properties des Attributs Search Weight unter Admin Stores > Attributes > Product beschreibt jetzt mögliche Werte. GitHub-36646

Versand

  • Regeln zu Warenkorbpreisen funktionieren jetzt erwartungsgemäß, wenn ein Bundle-Produkt 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 nun wie erwartet zu einer neuen Versandseite, nachdem eine Teillieferung für eine Bestellung erstellt wurde. Zuvor hat Commerce nach der Erstellung eines Teilversands keine komplette Versandseite für die übrigen Produkte der Bestellung erstellt. GitHub-38063
  • Der Gesamtbetrag für den Versand einer Bestellung an mehrere Adressen wird nun korrekt berechnet. Wenn zuvor ein Angebot mehr als eine Versandadresse enthielt, aktualisierte der Gesamtsammler den Versandbetrag für die in $quote->getShippingAddress() angegebene Adresse, anstatt ihn wie erwartet durch $shippingAssignment weiterzugeben. GitHub-37283
  • Commerce löst beim Checkout mit mehreren Versandadressen keine Ausnahme mehr aus, wenn der Administrator die Anmeldung als Kundenfunktion verwendet hat.
  • Produkte werden jetzt korrekt im Raster Produkte der Seite Pakete erstellen aufgeführt, wenn Sie Produkte zu einem Paket hinzufügen, nachdem die Versandbeschriftung erstellt wurde.
  • Die cart -Abfrage gibt jetzt diskrete Versandrabatte als separate Versandrabatte mit eindeutigen Rabattbeschriftungen zurück. Die neue Discount-Eigenschaft applied_to unterstützt die Differenzierung zwischen Rabatten, die auf einen Warenkorbartikel angewendet werden. Zuvor wurden alle Lieferrabatte in einen fest programmierten Shipping Discount -Wert zusammengefasst.
  • Wenn ein Admin-Benutzer eine Neubestellung erstellt, füllen die Abrechnungs- und Versandadressen aus der ursprünglichen Bestellung automatisch die entsprechenden Felder aus, wenn der Admin-Benutzer auf die Schaltfläche Reorder klickt (Admin Sales > Orders > View ). Wenn dieselben Adressen im Adressbuch des Kunden gespeichert sind, enthält die Neubestellung stets eine aktualisierte Version dieser Adressen. Zuvor war das Feld für die Versandadresse mit den aktualisierten Daten vorausgefüllt, das Feld für die Abrechnungsadresse 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 -Wert zurück, der mit einem der available_shipping_methods -Träger- und Methodencodes übereinstimmt. Wenn zuvor eine der ausgewählten Versandmethoden einen Unterstrich enthielt, wurden diese Träger-/Methodencodes nicht richtig zugeordnet. GitHub-36606
  • Die Mutation setShippingAddressesOnCart gibt keinen Fehler mehr aus, wenn der zweite Wert im Straße-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 wie erwartet in einer mehrstöckigen Implementierung. 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 Website id != 1 und Einzelspeichermodus aktiviert sind. Zuvor schlug die Speicheraktion mit dieser Meldung fehl: SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails. GitHub-35009

Staging

  • Staging-Updates für Verkaufsregeln werden nicht mehr im Staging-Dashboard dupliziert.
  • Bundle-Produkte werden jetzt ordnungsgemäß aktualisiert, wenn ein Käufer sie zum Warenkorb hinzufügt, wenn eine Planung aktualisiert wird. Wenn zuvor ein Bundle-Produkt mit Optionen zum Warenkorb hinzugefügt wurde, während eine Planaufgabe verarbeitet wurde, gab Commerce diese Ausnahme zurück: Some of the products below do not have all the required options. Please select all required options.
  • Für geplante Aktualisierungen werden nun die richtigen Preise für Bundle-Optionen beibehalten. Zuvor wurden diese Preise für bestimmte Website- oder Store-Ansichten auf null geändert.
  • Wenn Sie eine geplante Aktualisierung aktualisieren, wird die vorherige Version des gestaffelten Elements nicht mehr entfernt, wenn kein Enddatum angegeben ist. Zuvor wurde beim Aktualisieren eines gestaffelten Elements die rollenunterstützte Version des Elements entfernt, wenn kein Enddatum angegeben wurde. Commerce hat vor dem Löschen keinen Fehler ausgegeben oder Benutzer vor dem Löschen gewarnt.
  • Die Werte der Bezeichnungen der Store-Ansichten werden nach einer geplanten Aktualisierung der Warenkorbpreisregeln nicht mehr gelöscht. Zuvor wurden diese Beschriftungen gelöscht, selbst wenn sie in der Aktualisierung nicht angegeben waren.
  • Die Vorschau für die Inhaltstaging-Vorschau funktioniert jetzt ordnungsgemäß für verknüpfte Seiten. Zuvor war es nicht möglich, in der Staging-Vorschau zu verknüpften Seiten zu navigieren, sondern wurde stattdessen fälschlicherweise zu Storefront-Seiten weitergeleitet.
  • С Änderung einer Staging-Aktualisierung führt nicht mehr dazu, dass geplante Aktualisierungen, denen ein späteres Datum zugewiesen wird, entfernt werden.
  • JavaScript-Fehler treten nicht mehr auf, wenn Sie geplante Aktualisierungen für Kategorien hinzufügen oder bearbeiten, wenn Google Analytics Content Experiments aktiviert ist.
  • Merchants 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.
  • Downloadbare Links werden jetzt erwartungsgemäß beibehalten, wenn eine geplante Aktualisierung angewendet wird, während zuvor hinzugefügte Produkte sich im Warenkorb befinden. Zuvor waren herunterladbare Links von der Seite Mein Konto (Meine herunterladbaren Produkte) und der Seite zur Ansicht der Admin-Bestellung verschwunden.
  • Produkte sind nun wie erwartet auf der Storefront sichtbar, nachdem ein Staging-Update durchgeführt wurde, das die Anwendung des Produkts ermöglicht. Zuvor war das Produkt in der Admin-Kategorie aktiviert, aber nicht in der Storefront-Kategorie sichtbar, wenn für den Indexmodus des Kataloginventars die Option Auf Zeitplan aktualisieren ausgewählt war. Ein vollständiges Neuindizieren behebt das Problem.
  • Die staging.synchronize_entity_period-Verbraucherwarteschlange in der magento_bulk-Tabelle erhöht sich nicht mehr, wenn keine Staging-Updates zur Verarbeitung vorhanden sind. Zuvor wurde bei der Konfiguration von cron für jede Minute ein neuer Datensatz zum staging.synchronize_entity_period Consumer zu dieser Tabelle jede Minute hinzugefügt.
  • Adobe Commerce gibt keinen SQL-Fehler mehr aus, wenn Sie beim Speichern eines anderen Produkts eine Planungsänderung für ein Produkt erstellen. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt: The product with the SKU "%1" couldn't be added to the current update.

Zielregeln

  • Target-Regeln funktionieren jetzt korrekt mit verschiedenen Store-Ansichten. Zuvor wurde durch Probleme mit dem Regelcache für zugehörige Produkte verhindert, dass empfohlene Produkte in Multi-Store-Bereitstellungen angezeigt wurden.

Steuern

  • Rechnungen zeigen jetzt die richtige Zwischensumme an, wenn Steuern konfiguriert und FPT aktiviert ist.
  • Commerce zeigt jetzt den richtigen Wert für den Regular Price -Wert an, wenn eine benutzerdefinierte Option für ein Produkt ausgewählt wird, das einen Special Price -Wert hat, wenn Price Display Settings auf "tax einschließen"eingestellt ist.
  • Die Steuer ist jetzt wie erwartet im Versandpreis des Checkout-Workflows enthalten, wie in den Konfigurationseinstellungen angegeben.
  • Der Antwortwert der cart Abfrage applied_taxes enthält jetzt alle Steuerregeln wie erwartet. Zuvor wurde der Gesamtsteuerwert zurückgegeben, wenn mehrere Steuerregeln konfiguriert wurden.
  • Das Symbol zum Reduzieren/Erweitern für den Abschnitt Additional Settings während der Erstellung von Steuerregeln funktioniert jetzt erwartungsgemäß. Zuvor funktionierte nur das Symbol zum Erweitern. GitHub-37922
  • Sie können jetzt den Wert von "Tax Rate Country"und "Region"auf der Bearbeitungsseite "Tax Rule"wie erwartet bearbeiten. Zuvor wurden auf dieser Seite vorgenommene Änderungen nicht gespeichert.
  • Der Steuerbetrag im Bereich für die Schätzung des Warenkorbs wird jetzt bei der Aktualisierung der Versandmethode erwartungsgemäß aktualisiert. Zuvor wurde der Steuersatz nicht aktualisiert, nachdem ein Käufer beim Auschecken das Land gewechselt hatte.
  • Der tax class -Wert für neu erstellte einfache Produkte wird jetzt beim Erstellen neuer Varianten eines vorhandenen konfigurierbaren Produkts im Bereich "Store View"auf den Wert des übergeordneten Produkts gesetzt. Zuvor war dieser Wert auf "none"festgelegt. Infolgedessen wurden diese Produkte im Warenkorb nicht mit Steuern belastet, und die Kunden wurden zu wenig besteuert. GitHub-37180

Test

  • Der AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders-Test wurde verbessert, um Fehler zu beseitigen, die durch vorzeitiges Ausfüllen des E-Mail-Felds verursacht wurden.
  • StorefrontVerifyProductAfterPartialReindexOnSeveralWebsitesTest wurde überarbeitet, um die Zuverlässigkeit zu verbessern. GitHub-38359
  • Korrektur des AdminSimpleProductwithTextandVisualSwatch -Tests durch Einführung eines zusätzlichen Schritts, der explizit die Attribute festlegt, die bei der Suche verwendet werden sollen.
  • Fehlerkorrektur - Der Typo im SortbyTest-Komponententest wurde korrigiert. GitHub-37792
  • Verweise auf nicht vorhandene Klassen in Komponententests wurden entfernt. GitHub-37636
  • Der AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders-Test wurde verbessert, um Fehler zu beseitigen, die durch vorzeitiges Ausfüllen des E-Mail-Felds verursacht wurden.
  • Der Magento\GraphQl\Catalog\ProductSearchTest::testFilterProductsBySingleCategoryId-Test wurde überarbeitet, um eine zufällige Kategoriereihenfolge in products Abfrageantworten zu verarbeiten.
  • Leistungsprobleme mit großen Arrays in TableNameSniff wurden behoben.
  • Integrationstests für die Bearbeitungsfunktion der Geschenkregistrierung basieren nicht mehr auf vorhandenen Entitäts-IDs. Alle erforderlichen Daten werden nun über -Korrekturen abgerufen. Zuvor war \Magento\GiftRegistry\Controller\Index\EditPostTest fehlgeschlagen.
  • CollectionTest::testGetDateRangeFirstPart() berücksichtigt jetzt die Sommerzeit.
  • Es wurde ein Hinweis auf die Einstellung von StorefrontDeleteItemFromRequisitionListPrintView behoben.

UI-Framework

  • Der Bild-Uploader funktioniert jetzt wie erwartet in dynamischen Zeilen. Bilder werden jetzt korrekt hochgeladen, wenn sie als multinationales Array gesendet werden. GitHub-37957
  • Dateiupload-Stile werden nicht mehr im Luma-Design dupliziert. GitHub-32373
  • Die Straßenfelder im Feld "Straße", in dem das Adressformular für Kundenkonten zur Bearbeitung gespeichert ist, werden jetzt korrekt gespeichert. Diese Felder werden jetzt korrekt nach den angegebenen Schlüsseln im Formular sortiert. GitHub-37973
  • Das Cursorverhalten im Textfeld der Geschenkregistrierung Message wurde korrigiert.
  • Die Werte der kumulativen Layoutverschiebung (CLS) wurden für Produktdetailseiten verbessert. (Diese Metrik quantifiziert die visuelle Stabilität von Seitenlayouts.) GitHub-35410
  • Die Fehlermeldung beim Vorlagen-Rendering 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 ordnungsgemäß 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 im Storefront gespeichert werden.
  • Korrektur eines Syntaxfehlers in der Kalendervorlagendatei. GitHub-37725
  • Administratoren können jetzt das Storefront-Logo ändern, wenn der Einzelspeichermodus aktiviert ist. Zuvor zeigte Commerce das standardmäßige Fallback-Logo an. GitHub-35952
  • Die Konfigurationswerte von Mixins sind nicht mehr leer, und jQuery-Mixins funktionieren jetzt unabhängig von der Ladeposition. Zuvor wurden jQuery-Mixins nicht konsistent über Browser hinweg geladen.
  • Passwörter werden jetzt erwartungsgemäß angezeigt, wenn das Kontrollkästchen Show Password auf der Anmeldeseite aktiv ist.
  • Adobe Commerce zeigt nun die richtigen Preise für Festpaketprodukte mit Sonderpreisen an.
  • Der Link zur Seite mit der GitHub-Problemliste in der Vorlagendatei für die Storefront-Fußzeile wurde aktualisiert. GitHub-37214
  • Das Widget "Kürzlich angezeigt"zeigt jetzt den richtigen Steuerbetrag in gruppierten Produktpreisen an. GitHub-35881
  • Administratoren konnten jetzt die für das einfache Produkt erstellten anpassbaren Optionen 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
  • Systemnachrichten werden jetzt schneller geladen. Nur die angezeigten Nachrichten werden geladen. Zuvor wurden alle Nachrichten aus der Datenbank geladen, was zeitaufwendig war.
  • Wenn Sie den Breadcrumbs-Knoten durch Festlegen von remove=true über die Layout-XML entfernen, wird der Seitentitel auf der Kategorieseite nicht mehr entfernt. Beim Entfernen von Breadcrumbs auf diese Weise wurde zuvor der Seitentitel aus der Kategorieseite entfernt.
  • Das Formular zur Kundenregistrierung wird jetzt erwartungsgemäß geladen, wenn es mehrere ausgewählte Kundenattribute enthält. Zuvor hatte Adobe Commerce diese Ausnahme ausgelöst: [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 mit einfachen Anführungszeichen werden jetzt korrekt auf der Storefront ohne Konsolenfehler dargestellt. Wenn zuvor eine Willkommensnachricht ein einfaches Anführungszeichen enthielt, wurde die Willkommensnachricht beim Storefront-Rendering nicht geladen. Adobe Commerce zeigte auch Konsolenfehler an.
  • Adobe Commerce gibt keinen Fehler mehr aus, wenn Sie versuchen, die Ansicht zwischen dem Kommentar-Verlauf und den Rückgaben auf der Seite "Admin-Reihenfolge"schnell zu ändern. Zuvor wurde in Adobe Commerce dieser allgemeine 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 den Bereich "all stores view"eingestellt sind.
  • Das Lupe-Widget wird jetzt wie erwartet auf der Produktseite geladen.
  • Mehrzeilige anpassbare Optionen werden jetzt ordnungsgemäß in PDF-Dokumenten zu Rechnungsstellung, Versand und Credit Memo dargestellt. Zuvor war mehrzeiliger Text mit einem unerwarteten Seitenumbruch versehen. Wenn der Text die Seite überschritt, wurde der Text abgeschnitten.
  • Admin-Benutzer können jetzt vom Administrator 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
  • Die Details der Unternehmensadministratoren werden jetzt erwartungsgemäß gespeichert und die Administratoren werden korrekt umgeleitet, wenn E-Mails zum Zuweisen von Unternehmensadministratoren eine CMS Block URL -Variable enthalten.
  • Fehlermeldungen, die mit dem Senden von Kommentaren auf der Bestelldetailseite verbunden sind, 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 diese 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 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 mit Mehrfachauswahlfeldern werden jetzt erfolgreich geladen. Zuvor wurde dieses Formular nicht geladen, wenn es Mehrfachauswahlfelder 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
  • Durch Klicken auf eine Videominiatur im Vollbildmodus der Produktgalerie wird das Video jetzt erwartungsgemäß 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 automatisch jedes Jahr aktualisiert wird. GitHub-36776
  • Der Bildregler auf der Produktseite funktioniert jetzt wie erwartet in der Mobile-Ansicht. 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 Multi-Store-Bereitstellungen generiert. Zuvor wurden URL-Neuschreibungen nicht für nicht standardmäßige Stores generiert, wenn die Produktansicht unter dem standardmäßigen Store-Umfang auf nicht sichtbar festgelegt war.
  • Category::getUrl() ruft keine 301-Umleitung mehr ab. GitHub-38152
  • Commerce generiert keine Produkt-URL-Neuschreibungen mehr für Stammkategorien und für Produkte, die in Multi-Store-Setups auf Not Visible Individually gesetzt sind, wenn fehlende URL-Neuschreibungen für benutzerdefinierte Stores generiert werden.
  • Kanonische URL-Tags spiegeln nun erwartungsgemäß Änderungen wider, nachdem die Kategorie-URL-Schlüsseleigenschaft aktualisiert wurde. Zuvor wurde die veraltete Kategorie-URL verwendet, die sofort die Weiterleitung zur neuen URL auslöste.
  • Kategorieprodukt-URL-Neuschreibungen 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 Kategorie-/Produkt-URL-Umschreibungen generieren 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 Produkt-URL erstellt wird, werden Korrelationen zwischen Produkt, Kategorie und Store überprüft. Diese Prüfung basiert nun auf korrelierten Entitätseigenschaften (Kategorie und Produkt). Zuvor wurde diese Prüfung an bereits vorhandenen URL-Neuschreibungen durchgeführt.
  • KategorieURL-Neuschreibungen werden jetzt für alle Store-Ansichten generiert, wenn eine neue Kategorie aus einer CSV-Datei importiert wird.
  • Die Konfigurationen für das Produkt-URL-Suffix und das Kategorie-URL-Suffix stimmen jetzt mit den Suffixen in der Tabelle url_rewrite überein. Zuvor traten bei der Aktualisierung von URL-Suffix-Konfigurationen Race-Bedingungen auf und die konfigurierten URL-Suffixe und die url_rewrite -Tabelle stimmten nicht überein.
  • Adobe Commerce rendert den Kategoriebaum jetzt auf allen Ebenen, wenn Kategorie-URL-Neuschreibungen erstellt werden. Zuvor wurden nur die ersten drei Kategorieebenen angezeigt. GitHub-36973
  • Neu erstellte CMS-Seiten mit einem untergeordneten Knoten sind jetzt im Marketing-Filterraster (Marketing > URL rewrites) enthalten. Zuvor wurden für diese CMS-Seiten keine URL-Neuschreibungen erstellt.
  • Die Neuschreibungen der Kategorie-URL sind jetzt während des Imports einer neuen Kategorie in der CSV-Datei vorhanden.
  • CMS-Seiten mit mehreren Stores ohne URL-Neuschreibungen werden jetzt erwartungsgemäß weitergeleitet. Zuvor wurden angeforderte CMS-Seiten mit mehreren Stores ohne URL-Neuschreibungen zur Store-Homepage umgeleitet, aber die ursprünglichen CMS-Seiten wurden nicht weitergeleitet.

Visual Merchandiser

  • Sie können jetzt das Attribut Categories für Visual Merchandiser-Regeln verwenden. Zuvor hatte Adobe Commerce diese Ausnahme ausgelöst: Something went wrong while saving the category.

Web-API-Framework

  • Commerce zeigt keine Integration not secure -Warnung mehr in Admin System > Extensions > Integrations an, wenn die Felder Callback URL und Identity link URL leer sind. GitHub-36407
  • Die Erweiterungsattribute taxes, itemized_taxes und additional_itemized_taxes wurden zu 3. Magento\Sales\Api\Data\OrderInterface Mit diesen Attributen können Sie angewendete Steuern mit Order REST-Aufrufen speichern.
  • Die Tier Prices REST API unterstützt jetzt Dezimalmengen. Zuvor war diese API nicht für Dezimalmengen geeignet, selbst wenn die Einstellung Use Decimal Quantity aktiviert war.
  • Der REST V1/orders/{id}/comments -Endpunkt ändert den Status einer Bestellung nicht mehr, wenn versucht wird, einen Kommentar zum Status einer ausstehenden Bestellung hinzuzufügen. Es gibt jetzt einen informativen Fehler. Zuvor änderte dieser Endpunkt den Bestellstatus beim Hinzufügen eines Kommentars.
  • Der REST-API-Endpunkt GET und der REST-API-Endpunkt POST V1/products/attributes geben für die Optionen Filterable(with results) und Filterable(no results) der Option Use in Layered Navigation nicht mehr denselben Wert für das Attribut is_filterable zurück. Zuvor gab dieser Endpunkt denselben Wert zurück, da die Eigenschaft is_filterable des Attributtyps Boolean war, was die Festlegung dieser Eigenschaft auf Filterable(no results) nicht ermöglichte. GitHub-37979
  • Das fehlende Feld media_gallery_entries wurde dem REST V1/configurable-products/sku/children -Endpunkt hinzugefügt. Zuvor fehlte dieser Funktion der Code, der zum Speichern und Anzeigen von media_gallery_entries erforderlich war. GitHub-37607
  • Die REST V1/carts/mine/estimate-shipping-methods -Methode validiert jetzt alle Ebenen von Payload-Felddaten und gibt einen 400-HTTP-Code für ungültige Daten zurück. Zuvor wurde nur die erste API-Payload validiert und wenn ungültige Daten in nicht validierten Payload-Ebenen zurückgegeben wurden, gab Commerce einen Statuscode 500 zurück.
  • Asynchrone Massen-REST-API-Vorgänge zum Aktualisieren von Produkten mit Stufenpreisen und verschiedenen Attributsätzen wurden nun erfolgreich abgeschlossen. Zuvor konnten Produkte mit unterschiedlichen Attributsätzen nicht auf diese Weise aktualisiert werden, und in Commerce wurde der folgende 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 Tier-Preises ein ungültiger Kundengruppenname verwendet wird. Zuvor gab Adobe Commerce einen Fehler wie den folgenden zurück: 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 die Gruppen-ID durch diese Anforderungen auf den Standardwert zurückgesetzt.
  • Kunden, die mit der Bulk API erstellt wurden, erhalten jetzt E-Mails zur Kundenregistrierung in der Sprache, die auf ihrer 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 Gastaufträge mehr, wenn Allow Guest Checkout deaktiviert ist.
  • Sie können jetzt eine Bestellung vom Admin mit dem Status Received öffnen, wenn AsyncOrder nicht aktiviert ist. Zuvor war es nicht möglich, die Bestelldetailseite vom Administrator zu öffnen, wenn der Bestellstatus durch POST V1/orders geändert wurde.
  • Adobe Commerce gibt nun erfolgreich das Attribut content (base64-Bildcode) in den GET V1/products/sku/media -Produktmedien-API-Antworten zurück. Das Attribut content wurde zuvor nicht in der Antwort angezeigt.

Wunschliste

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

Systemanforderungen

Unser Technologiestapel basiert auf PHP und MySQL. Weitere Informationen finden Sie unter Systemanforderungen.

Installations- und Upgrade-Anweisungen

Sie können Adobe Commerce 2.4.7 mit Composer installieren.

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