Versionshinweise zu Adobe Commerce 2.4.4
Adobe Commerce 2.4.4 führt Unterstützung für PHP 8.1 ein. Alle Projektbibliotheken und Abhängigkeiten wurden auf Kompatibilität mit PHP 8.1 aktualisiert. Core Composer-Abhängigkeiten und Drittanbieter-Bibliotheken wurden ebenfalls auf die neuesten Versionen aktualisiert, die mit PHP 8.1 kompatibel sind. Diese Version unterstützt auch OpenSearch 1.2.
Diese Version umfasst fast 250 Fehlerbehebungen und Verbesserungen.
Wenden Sie AC-3022.patch
an, um DHL weiterhin als Versandunternehmen anzubieten.
DHL hat die Schemaversion 6.2 eingeführt und wird in naher Zukunft die Schemaversion 6.0 veraltet sein. Adobe Commerce 2.4.4 und frühere Versionen, die die DHL-Integration unterstützen, unterstützen nur Version 6.0. Händler, die diese Versionen bereitstellen, sollten so schnell wie möglich AC-3022.patch
anwenden, um DHL weiterhin als Versandunternehmen anzubieten. Informationen zum Herunterladen und Installieren des Patches finden Sie im Artikel Anwenden eines Patches, um DHL weiterhin als Versandunternehmen anzubieten Knowledge Base .
Weitere Versionsinformationen
Obwohl der Code für diese Funktionen mit vierteljährlichen Versionen des Adobe Commerce-Kerncodes gebündelt wird, werden mehrere dieser Projekte (z. B. B2B, Page Builder und Progressiven Webs Application (PWA) Studio) ebenfalls unabhängig 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.
composer.json
-Datei identifizieren müssen, bevor die Plug-ins ausgeführt werden. Derzeit werden Plug-ins, die in der Datei composer.json
enthalten, aber nicht als vertrauenswürdig gekennzeichnet sind, automatisch installiert. Ab Juli 2022 lädt Composer jedoch keine Plug-ins, es sei denn, dies ist ausdrücklich erlaubt. Anweisungen zum Ändern der composer.json
-Datei, um explizites Laden von Plug-ins zuzulassen, finden Sie im Knowledge Base-Artikel Probleme mit Composer-Plug-ins beim Aktualisieren auf Adobe Commerce 2.4.4 .In dieser Version enthaltene Hotfixes
Adobe Commerce 2.4.4 beinhaltet die Lösung aller Probleme, die von den folgenden Hotfixes behoben wurden, die für Adobe Commerce und Magento Open Source 2.4.3, 2.4.3-p1 und 2.3.7-p2 bereitgestellt wurden:
-
Die von
MDVA-43395_EE_2.4.3-p1_COMPOSER_v1.patch
undMDVA-43443_EE_2.4.3-p1_COMPOSER_v1.patch
angesprochene Schwachstelle wurde in dieser Version behoben. -
AC-384_Fix_Incompatible_PHP_Method__2.4.3_ce.patch
. Dieser Patch behebt einen schwerwiegenden PHP-Fehler, der während der Aktualisierung aufgetreten ist. Weitere Informationen finden Sie im Artikel Adobe Commerce-Upgrade 2.4.3, 2.3.7-p1 PHP-Fatal error Hotfix Knowledge Base .
Wenden Sie diesen Hotfix nach der Installation von 2.4.4 an.
Es wird empfohlen, nach der Installation von Adobe Commerce 2.4.4 den folgenden Patch anzuwenden:
braintree-disabled-partial-capture-for-applepay-googlepay.patch
. Die Händler können keine Teilerstattungen für Bestellungen einreichen, die mit Apple Pay über Braintree bezahlt werden. Wenn ein Händler versucht, ein Kreditmemo für eine teilweise Rückerstattung aus der Bestellrechnung zu erstellen, kann das Feld Zu erstattende Menge nicht bearbeitet werden. Dieses Problem wird durch diesen Hotfix behoben. Siehe den Artikel Adobe Commerce 2.4.4: Teilrechnungen können nicht erstellt werden Knowledge Base .
Adobe Commerce 2.4.4 - Highlights
Beachten Sie die folgenden Highlights in dieser Version.
Sicherheitsverbesserungen
Diese Version enthält eine Sicherheitskorrektur und Verbesserungen der Plattformsicherheit. Diese Sicherheitskorrektur wurde auf Adobe Commerce 2.4.3-p2 und Adobe Commerce 2.3.7-p3 zurückportiert.
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
Unter Adobe-Sicherheitsbulletin finden Sie die aktuelle Diskussion zu diesen behobenen Problemen.
Zusätzliche Sicherheitsverbesserungen
Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit, einschließlich:
-
Die Verwendung von E-Mail-Variablen wurde bereits in Version 2.3.4 als Teil einer Sicherheitsrisikobegrenzung zugunsten einer strikteren Variablensyntax eingestellt. Dieses veraltete Verhalten wurde in dieser Version als Fortsetzung dieser Sicherheitsrisikobegrenzung vollständig entfernt.
Daher funktionieren E-Mail- oder Newsletter-Vorlagen, die in früheren Versionen von Adobe Commerce verwendet wurden, möglicherweise nicht ordnungsgemäß, nachdem auf Adobe Commerce 2.4.4 oder Magento Open Source 2.4.4 aktualisiert wurde. Betroffene Vorlagen sind Admin-Überschreibungen, Designs, untergeordnete Designs und Vorlagen aus benutzerdefinierten Modulen oder Erweiterungen von Drittanbietern. Ihre Bereitstellung kann auch nach Verwendung des Kompatibilitätstools für Aktualisierungen zur Behebung veralteter Verwendungszwecke weiter beeinträchtigt sein. Informationen zu möglichen Auswirkungen und Richtlinien für die Migration der betroffenen Vorlagen finden Sie unter Migrieren benutzerdefinierter E-Mail-Vorlagen .
-
Integrations-Token können nicht mehr für die API-Träger-Token-Authentifizierung verwendet werden. Zuvor konnte ein Integrations-Token als eigenständiger Schlüssel für token-basierte Authentifizierung verwendet werden. Dieses Verhalten wurde jedoch aufgrund der Sicherheitsauswirkungen eines nie ablaufenden Zugriffstokens standardmäßig deaktiviert. Das vorherige Verhalten kann über die Befehlszeile oder den Administrator aktiviert werden. Siehe Token-basierte Authentifizierung.
-
Sitzungs-IDs werden nicht mehr in der Datenbank gespeichert.
-
OAuth-Zugriffstoken und Token zum Zurücksetzen des Kennworts werden jetzt verschlüsselt, wenn sie in der Datenbank gespeichert werden.
-
Die Validierung wurde verbessert, um das Hochladen von nicht alphanumerischen Dateierweiterungen zu verhindern.
-
reCAPTCHA-Unterstützung für Coupon-Codes hinzugefügt.
-
Swagger ist jetzt standardmäßig deaktiviert, wenn sich Adobe Commerce im Produktionsmodus befindet.
-
HTTPS ist jetzt standardmäßig für die Adobe Commerce Storefront aktiviert. Die Einstellungen Sichere URLs in Storefront verwenden und Sichere URLs in Admin verwenden sind standardmäßig aktiviert und alle integrierten Cookies sind jetzt als sicher festgelegt.
-
Das Plug-in zur Abhängigkeitsverwirrung ist jetzt für alle Adobe Commerce-Installationen erforderlich. Zuvor war dieses Plug-in nur für Composer-basierte Installationen erforderlich. Es sind jetzt vertrauenswürdige Versionen zulässig. Merchants können die in diesem Plug-in festgelegten Einschränkungen umgehen, die bestimmte Kombinationen von Composer-Installationen verbieten. Die Einschränkungen können für vertrauenswürdige Versionen übersprungen werden. Adobe Commerce zeigt jetzt eine Warnung an, bevor die Installation fortgesetzt wird.
-
Entwickler können jetzt die Begrenzung der Größe von Arrays, die von Adobe Commerce RESTful-Endpunkten akzeptiert werden, pro Endpunkt konfigurieren. Siehe API-Sicherheit.
-
Es wurden Mechanismen hinzugefügt, mit denen die Größe und Anzahl der Ressourcen, die ein Benutzer über eine Web-API systemweit anfordern kann, begrenzt und die Standardwerte für einzelne Module überschrieben werden können. Dadurch wird das Problem behoben, das durch
MC-43048__set_rate_limits__2.4.3.patch
behoben wurde. Siehe API-Sicherheit.
Plattformverbesserungen
Adobe Commerce 2.4.4 unterstützt jetzt PHP 8.1. Alle Projektbibliotheken und Abhängigkeiten wurden auf Kompatibilität mit PHP 8.1 aktualisiert. Zu den weiteren Plattformverbesserungen gehören:
-
Adobe Commerce 2.4.4 unterstützt Elasticsearch 7.16 und OpenSearch 1.2. Adobe Commerce-Händler mit lokal gehosteten Bereitstellungen können beide Lösungen verwenden. OpenSearch ist jetzt jedoch die standardmäßige Suchmaschine für Adobe Commerce 2.4.4-Bereitstellungen, die in der Cloud gehostet werden. Alle Kunden mit Cloud-Bereitstellungen, die auf Version 2.4.4 aktualisieren, müssen OpenSearch verwenden. Siehe Wechseln zu OpenSearch für Adobe Commerce in Cloud 2.4.4
-
Die Bibliothek
JQuery
wurde auf Version 3.6 aktualisiert. Die Bibliothekjquery-ui
wurde auf Version 1.13.0 aktualisiert. Mehrere andere JavaScript-Bibliotheken wurden auf die neuesten Versionen aktualisiert. -
TinyMCE 5.8.1 wird jetzt unterstützt. TinyMCE 4 wurde aus der Codebase entfernt.
-
Die Bibliothek
RequireJS
wurde auf die neueste Version (v2.3.6) aktualisiert. GitHub-33672 -
PHPUnit wurde auf die neueste Version (9.5.x) aktualisiert. Tests und Test-Frameworks wurden aktualisiert, um mit der neuen Version kompatibel zu sein.
-
Die meisten Laminas-Abhängigkeiten wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.1 kompatibel sind. Drei Laminas-Abhängigkeiten wurden aus der Codebase entfernt, um die Anzahl der Abhängigkeiten zu reduzieren.
jQuery UI-Upgrade
Die jQuery-Benutzeroberfläche wurde auf die neueste Version (v1.13.0) aktualisiert. Die folgenden jQuery-Komponenten der Version 1.10.0 wurden entfernt:
-
Optionen
ajaxOptions
undcache
für Registerkarten. Siehe Registerkarten. -
.zIndex()
. jQuery UI v1.12.1 enthältjquery/z-index.js
, was die Verwendung von.zIndex()
unterstützt. Siehe UI Core. -
Daten-Fallbacks für Widget-Namen. Sie müssen den vollständigen Namen für den Schlüssel
.data()
verwenden. -
Hartkodierung von Klassen wie
ui-corner-all
in Widgets.
Leistungsverbesserungen und Verbesserungen der Skalierbarkeit
Adobe Commerce-Leistungsverbesserungen steigern die Verarbeitung hoher Durchsatzmengen und die Optimierung der Nachrichtenwarteschlange. Die in dieser Version eingeführte Funktion für asynchrone Bestellungen unterstützt die Erstellung von etwa 60.000 Bestellungen/Stunde. Frühere Versionen von Adobe Commerce unterstützten die Verarbeitung von etwa 10.000 Bestellungen/Stunde, was einen potenziellen Engpass für Flash-Verkäufe darstellte. Die neue Funktion "Mehrere Verbraucher"unterstützt die Skalierung der Anzahl der Verbraucher in der Nachrichtenwarteschlange auf einer einzelnen Cloud-Instanz und erhöht die Anzahl der pro Stunde verarbeiteten Bestellungen.
Leistungsverbesserungen in dieser Version:
-
Die Funktion AsyncOrder unterstützt eine schnellere Auftragsplatzierung als die synchrone Ausführung. Wenn AsyncOrder aktiviert ist, wird die Bestellplatzierung im Hintergrund ausgeführt, während Käufer andere Aufgaben im Storefront ausführen.
-
Die neue Konfigurationsoption Lagerbestandsüberprüfung beim Laden des Warenkorbs aktivieren bietet eine umschaltbare Bestandsüberprüfung beim Laden eines Produkts in den Warenkorb. Sie ist standardmäßig aktiviert. Wenn Sie diese Option deaktivieren, überspringt Adobe Commerce die Bestandsüberprüfung beim Laden des Anführungszeichens, was den Checkout beschleunigt, insbesondere für Warenkörbe mit vielen Artikeln.
-
Die neue Konfigurationsoption
multiple_processes
unterstützt die Ausführung paralleler Verbraucher in mehreren Prozessen. Zuvor führtecron
bei Bedarf einen einzelnen Verbraucher aus. Das parallele Starten mehrerer Benutzer zur Ausführung von Prozessen kann die Ausführungsgeschwindigkeit von Aufgaben verbessern. Um diese Funktion zu aktivieren, fügen Siemultiple_processes
zur Dateiapp/etc/env.php
hinzu. -
Der Warenkorbvorgang für Warenkörbe mit über 750 konfigurierbaren Produkten wurde verbessert, indem die Speicherbegrenzung in der Datei
php.ini
ummax_input_vars
erhöht wurde, um das Volumen der Eingabevariablen zu unterstützen. -
Optimierung der Verarbeitung der Verkaufsregeln während des Checkouts durch Verschiebung der Gesamtberechnung. In der Regel findet die Verarbeitung von Verkaufsregeln jedes Mal statt, wenn ein Käufer ein Produkt zum Warenkorb hinzufügt, die Produktmenge aktualisiert oder auf die Schaltfläche Bestellung aufgeben klickt. Händler können diese Verschiebung aktivieren, indem sie die Variable
checkout/deferred_total_calculating
in der Dateienv.php
festlegen. Alternativ können Siebin/magento setup:config:set --deferred-total-calculating 1|0
ausführen. -
Verbesserungen am Validierungsprozess für Bestellungen, die von einer Regel zum Warenkorbpreis während der asynchronen Bestellplatzierung betroffen sind.
GraphQL
Diese Version umfasst die folgenden GraphQL-Verbesserungen:
- Vollständige GraphQL-Abdeckung für verhandelbare Anführungszeichen. Benutzer von B2B-Unternehmen können jetzt alle Aufgaben im Zusammenhang mit verhandelbaren Anführungszeichen mit GraphQL ausführen. Frühere Versionen dieser API unterstützten Verhandlungsflüsse, aber keinen Checkout.
Neue Mutationen
-
assignCustomerToGuestCart
Mutation -
placeNegotiableQuoteOrder
Mutation -
setNegotiableQuoteBillingAddress
Mutation -
setNegotiableQuotePaymentMethod
Mutation -
setNegotiableQuoteShippingMethods
Mutation -
setNegotiableQuoteShippingAddress
Mutation -
Leistungsverbesserungen:
-
Die Leistung von GraphQL-Warenkorb-Vorgängen wurde verbessert. Die
collectQuoteTotals()
-Methode wird jetzt nur einmal während einer GraphQL-Anfrage aufgerufen, wodurch die Antwortzeit verkürzt wird. -
Die Storefront-Leistung wurde durch Änderungen an der Zwischenspeicherung von GraphQL-Anforderungen verbessert. Fastly and Varnish speichert jetzt GraphQL-Anforderungen, die mit
auth
-Token gesendet werden, zwischen.
-
-
Neue Store-bezogene Admin-Konfigurationseinstellungen. Die
storeConfig
-Abfrage gibt jetzt die Konfigurationseinstellungen für die Methoden "Zero Subtotal Checkout"und "Check/Money Order Payment"zurück. -
Aktualisierung der GraphQL-Hauptbibliothek. Die
webonyx
-Bibliothek, die die Funktion des GraphQL-Kerns ermöglicht, wurde auf Version ^14.9 aktualisiert. -
Korrektur von Übersetzungsproblemen in GraphQL mit Stores mit mehreren Sites und mehreren Sprachen. Der GraphQL-Resolver gibt jetzt übersetzte Zeichenfolgen basierend auf dem Speicherbereich wie erwartet zurück.
-
GraphQL stellt New Relic jetzt beschreibende Transaktionsnamen zur Verfügung, die beim Debugging hilfreich sein können. GitHub-30915
Weitere Informationen zu diesen Verbesserungen finden Sie im GraphQL-Entwicklerhandbuch .
B2B
Diese Version enthält mehrere Fehlerbehebungen. Siehe B2B-Versionshinweise.
Anbietergebundene Erweiterungen
Mit Ausnahme von Braintree wurden alle vom Anbieter bereitgestellten Erweiterungen aus der Codebasis von Adobe Commerce 2.4.4 entfernt. Händler sollten zu den offiziellen Erweiterungen migrieren, die auf der Commerce Marketplace verfügbar sind.
PWA Studio
PWA Studio v.12.3.0 ist mit Adobe Commerce 2.4.4 kompatibel. Es enthält Unterstützung für reCaptcha, die Inhaltsoptimierung von Page Builder und personalisierte Inhalte. Weitere Informationen zu Verbesserungen und 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.
PayPal-Zahlungsverbesserungen
-
Die Zahlungsoption Venmo wird jetzt unterstützt.
-
"Später bezahlen"wurde als Option für Käufer hinzugefügt, die auf dem Standort des Käufers und nicht auf dem Standort des Käufers basieren.
-
Händler können jetzt das Land des Käufers festlegen, wenn sie das Kundenerlebnis in ihrem Land der Wahl testen. Zuvor waren Tests nur auf das Land beschränkt, in dem sich der Händler befindet. Diese Änderung ist nur im Sandbox-Modus gültig.
-
Die Nachrichten auf der Checkout-Seite zeigen jetzt präzise Nachrichten darüber an, wie viel und in wie vielen Inkrementen Kunden bei der Verwendung von "Später bezahlen"erwartet werden.
Live Search
Live Search unterstützt jetzt PHP 8.1.
Das neue Magento_ElasticsearchCatalogPermissionsGraphQl
-Modul wird während der aktualisierten Live Search Installation deaktiviert. Vorhandene Live Search-Installationen müssen auf Live Search 2.0.0 aktualisiert werden, um diese Funktionen nutzen zu können. Weitere Informationen finden Sie in den Live Search- Versionshinweisen.
Aktualisierungen der Barrierefreiheit
Diese Version verbessert die Konformität mit den standardmäßigen Richtlinien für Barrierefreiheit. Diese Verbesserungen verbessern das Erlebnis von Benutzern mit eingeschränkter Sehkraft oder eingeschränkter Sprachkenntnisse, kognitiven Fähigkeiten und Lernfähigkeiten. Auch die Leistung der Reader-Tools wurde verbessert.
Zu den Verbesserungen der Barrierefreiheit gehören:
- QuickInfo-Links mit Text und genauen, aufgabenfokussierten, sichtbaren Beschriftungen für Eingaben
- Bearbeitungsschaltflächen verfügen jetzt über eindeutigen Text.
- Admin-Schaltflächen haben jetzt einen eindeutigen, zugänglichen und beschreibenden Zweck bei der Einhaltung von AA-Standards.
- Symbolbilder, die Bedeutung vermitteln, bieten jetzt eine Textalternative.
- Verbesserter Kontrast in Admin-Schaltflächen und Formularfeldern auf ein Kontrastverhältnis von mindestens 3:1 mit angrenzenden Farben.
Page Builder
- Merchants können Bildern (Bild, Banner, Folie) jetzt alternativen Text (
alt_text
) hinzufügen, um die Barrierefreiheit von Inhalten zu verbessern. GitHub-746
Behobene Probleme
Wir beheben Hunderte von Problemen im Adobe Commerce 2.4.4-Kerncode. Eine Untergruppe dieser behobenen Probleme wird nachfolgend beschrieben.
Installation, Aktualisierung, Bereitstellung
- Adobe Commerce protokolliert jetzt Fehler bei der Bereitstellung statischer Inhalte in Build-Protokolldateien wie erwartet.
- Datenpatches können die eindeutigen Einschränkungen einer Tabelle nicht mehr ignorieren und doppelte Werte in eine MySQL-Datenbanktabelle einfügen. Zuvor konnten durch Patches doppelte Werte eingefügt werden, was die Datenbank beschädigte.
- Merchants können jetzt erfolgreich von einer Adobe Commerce 2.4.2-Bereitstellung mit Klarna auf Adobe Commerce 2.4.3 aktualisieren. GitHub-33760
- Die Konfiguration des Sitemap-Generators kann jetzt erfolgreich über die Befehlszeile geändert werden. Zuvor wurde dieser Fehler in Adobe Commerce angezeigt, als Sie versuchten, die Sitemap-Konfiguration außerhalb von Admin zu ändern:
Import failed: Notice: Trying to access array offset on value of type null in app/code/Magento/Cron/Model/Config/Backend/Sitemap.php on line 78
. GitHub-31428
- Der Befehl
bin/magento app:config:import
wird jetzt fehlerfrei ausgeführt, wenn Sie dietime
-Werte inconfig.php
aktualisieren. Zuvor führte eine Änderung der Konfiguration von Produktwarnungen durch manuelle Bearbeitung (d. h. nicht Verwendung des Administrators) zu einem Fehler.
Zugänglichkeit
- Fehler bei der Barrierefreiheit bei der Navigation auf den Warenkorb- und Checkout-Seiten wurden behoben. GitHub-34483
- Sprachausgaben können jetzt alle relevanten Formularelemente auf Produktseiten lesen.
- Der Kontrast für die Bildlöschungs- und -verschiebungssymbol-Schaltflächen im gesamten Storefront wurde verbessert, um die Lesbarkeit für sehbehinderte Benutzer zu verbessern.
- Dem Lupensymbol, das zur Ausführung von Suchvorgängen in der gesamten Produktoberfläche verwendet wird, wurde ein zugänglicher Name und eine Textalternative zugewiesen.
- Der Zugriff auf die Symbolleiste des Rich-Text-Editors erfolgt jetzt über die Tabulatortaste.
- Das Element "Dieses Element hat "weight select"-Eingabe auf der Detailseite Katalog > Produkt enthält jetzt sichtbare Beschriftungen und einen zugänglichen Namen.
- Der barrierefreie Name des Steuerelements enthält jetzt den Text seiner sichtbaren Bezeichnung für die Anzahl der Elemente pro Seite-Dropdown-Liste.
- Die Tabellensteuerelemente auf der Detailseite Katalog > Produkt verfügen jetzt über sichtbare Beschriftungen und einen zugänglichen Namen, wenn die Tabelle ausgeblendet wird.
- Links zum Bearbeiten in der Tabelle "Produkte"haben jetzt einen eindeutigen, aussagekräftigen Linktext.
- Die Trigger, die QuickInfos erweitern, geben jetzt Textnamen an.
- Schaltflächen in der gesamten Storefront haben jetzt eindeutige, beschreibende, zugängliche Namen. Zuvor hatten Schaltflächen zum Teilen mit einer Textschaltfläche und einer angrenzenden Pfeilschaltfläche nach unten denselben barrierefreien Namen.
- Der Kontrast für die Bildlöschungs- und -verschiebungssymbol-Schaltflächen im gesamten Storefront wurde verbessert, um die Lesbarkeit für sehbehinderte Benutzer zu verbessern.
- Dem Stiftsymbol, das angezeigt wird, wenn ein Händler die Eingabe für das Akkordeon Suchmaschinenoptimierung bearbeitet, wurden Textalternativen hinzugefügt.
- Dem Lupensymbol, das zur Ausführung von Suchvorgängen in der gesamten Produktoberfläche verwendet wird, wurde ein zugänglicher Name und eine Textalternative zugewiesen.
- Das Texteingabefeld für die Produktseite Neue Ansicht hat jetzt einen zugänglichen Namen.
- Das Element "Dieses Element hat "weight select"-Eingabe auf der Detailseite Katalog > Produkt enthält jetzt sichtbare Beschriftungen und einen zugänglichen Namen.
AdminGWS
- Administratoren mit eingeschränkten Berechtigungen können jetzt eine Rückkehr erwartungsgemäß erstellen.
Backend
- Administratoren können sich jetzt bei Admin in einer Bereitstellung anmelden, für die ein benutzerdefinierter Admin-Pfad konfiguriert und der geheime Schlüssel aktiviert ist. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:
Invalid security or form key. Please refresh the page
.
- Adobe Commerce leitet nicht mehr zum Bereich "Alle Store-Ansicht"weiter, wenn sich die Hierarchie für mehrere Stores ändert. Zuvor wurden Käufer nach dem Speichern der Hierarchie zu einer falschen Store-URL umgeleitet und der Bereich Alle Store-Ansichten wurde in einer Bereitstellung mit mehreren Stores ausgewählt.
Paketprodukte
- Käufer können nun ein Bundle-Produkt mit fester Produktsteuer und zwei Optionen zu ihrem Warenkorb hinzufügen. Zuvor hat Adobe Commerce das Produkt nicht hinzugefügt und diesen Fehler angezeigt:
We can't add this item to your shopping cart right now
.
- Die Formularüberprüfung in Form der Attribute
data-validate
undmin
wurde dem Feld für die Warenkorbmenge hinzugefügt, um negative Werte für Bundle-Produkte zu verhindern.
- Die
products
-Abfrage filtert jetzt Produkte korrekt, wenn untergeordnete Produkte auf der Store-Ansichtsebene deaktiviert sind. Zuvor gab die Abfrage untergeordnete Produkte zurück, die auf Store-Ansichtsebene deaktiviert waren.
cron
löscht jetzt den Produktkategorie-Cache wie bei der Ausführung vonindexer_update_all_views
erwartet. Zuvor wurde in Adobe Commerce nach der gebündelten Aktualisierung vieler Produkte in der Kategorie auf der Kategorieseite eine falsche Produktanzahl angezeigt.
- Adobe Commerce aktualisiert jetzt den Kategorieprodukt-Cache wie erwartet, wenn ein Bundle-Produkt wieder auf Lager angezeigt wird.
- Der Cache-Reinigungsalgorithmus, der während der Neuindizierung ausgeführt wird, wurde optimiert. Bundle-Produkte werden jetzt erwartungsgemäß angezeigt, wenn eine Kategorie während der Neuindizierung zwischengespeichert wird. Zuvor wurden Bundle-Produkte nicht stundenlang angezeigt, nachdem Produktkategorien während der Neuindizierung zwischengespeichert wurden.
- Die Währungsumrechnung erfolgt nun wie erwartet in E-Mail-Bestätigungen für Bundle-Produktkäufe in Multi-Store-Bereitstellungen, die unterschiedliche Währungen verwenden. GitHub-33426
- Für Bundle-Produkte mit dem Präfix % im Produktraster werden jetzt spezielle Preisnachlässe mit erweiterten Preisen korrekt angezeigt. Zuvor wurde ein prozentualer Rabatt fälschlicherweise mit $-Präfix anstelle von % im Produktraster angezeigt.
- Der Produktstatus des Bundles in Admin wird jetzt automatisch aktualisiert, wenn ein verwandtes Produkt seinen Status ändert.
- Der GraphQL-Resolver für Bundle-Produkte prüft jetzt, ob untergeordnete Bundle-Produkte deaktiviert wurden. Zuvor wurde diese Prüfung nicht durchgeführt und Abfragen wie
categoryList
gaben untergeordnete Produkte zurück, die nicht verkauft werden konnten.
cart
-Abfrageantworten geben jetzt genaue Rabatte für Bundle-Produkte mit dynamischen Preisen zurück. Zuvor umfassten die Abfrageantworten Rabatte, die auf jedes Bundle-Produkt einzeln angewendet wurden.
Cache
- Der Seiten-Cache wächst bei typischer Verwendung nicht mehr schnell. GitHub-9458
- Wenn Sie eine Bestellung aufgeben, werden nicht mehr alle Cache-Tags entfernt, die sich auf die bestellten Produkte aus dem Varnish-Cache beziehen. GitHub-30128
- Der Seiten-Cache für die gesamte Site wird nicht mehr gelöscht, wenn Sie ein Produkt aus den Top-Kategorien aktualisieren oder einen Index ausführen, um die Produktattribute oder den Lagerstatus zu aktualisieren. Zuvor wurden im Varnish-Cache allen Seiten-Cache-Tags die Kategorie-IDs des obersten Menüs hinzugefügt. GitHub-33465
Warenkorb und Checkout
- Der Mindestpreis für Werbung Was ist das?Der Link auf der Warenkorbseite kann jetzt angeklickt werden und öffnet das Popup-Fenster mit den Informationen. Zuvor hatte das Klicken auf diesen Link keine Auswirkungen.
- Käufer können jetzt nach einem Sitzungs-Timeout in Bereitstellungen, in denen persistenter Warenkorb aktiviert ist, fehlerfreie Bestellungen aufgeben. Zuvor wurde in Adobe Commerce nach einer Sitzungs-Zeitüberschreitung ein Zahlungsfehler angezeigt.
- Wenn einem Kundenadressattribut ein hoher Sortierreihenfolgswert zugewiesen wird, beeinträchtigt dies nicht mehr die Leistung auf der Checkout-Seite.
- Adobe Commerce stellt die Warenkorbproduktmenge jetzt auf den vorherigen Wert zurück, wenn die aktualisierte Menge ungültig ist.
- Durch Klicken auf die Schaltfläche Zum Warenkorb hinzufügen im Abschnitt "Kürzlich angezeigt"wird nun wie erwartet die Produktdetailseite umgeleitet. Zuvor wurden Käufer zur Produktlistenseite weitergeleitet.
- Gastkäufer können jetzt erfolgreich mit einer Kundenadresse auschecken, die verschiedene Typen von benutzerdefinierten Kundenadressattributen enthält. Zuvor wurden Werte für benutzerdefinierte Attribute beim Checkout nicht korrekt formatiert. GitHub-30290
- Adobe Commerce wendet die Schwelle für den kostenlosen Versand nun korrekt auf Bestellungen an, wenn die Tabellensätze aktiviert sind. GitHub-21832
- Sie können jetzt mit
POST /V1/guest-carts/:cartId/items
einfache Produkte mit verschiedenen Optionen zu einem Warenkorb hinzufügen. Zuvor änderte dieser Aufruf die Menge des ersten einfachen Produkts, das Sie hinzugefügt haben, anstatt ein zweites einfaches Produkt mit den angegebenen Optionen hinzuzufügen. GitHub-32302
- Im Abschnitt "Bestellzusammenfassung"der Checkout-Seite wird jetzt die richtige Währung und der richtige Betrag angezeigt, wenn eine Bereitstellung für
Poland
Land undPLN
Währung konfiguriert ist. Zuvor wurde auf der Einkaufswagen- und Kassenseite der Betrag PLN 0 angezeigt.
- Adobe Commerce gibt keinen Fehler mehr aus, wenn ein Käufer auf Warenkorb aktualisieren klickt, nachdem er eine Produktmenge im Mini-Warenkorb geändert hat. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:
The quote item isn't found. Verify the item and try again
.
- GraphQL
products
-Abfragen für konfigurierbare Produkte in einem bestimmten Store geben jetzt nur die Preisbereiche der Produkte im angegebenen Store zurück. Zuvor gaben Anfragen Preisbereiche für einfache Produkte in nicht spezifizierten Stores zurück.
- Adobe Commerce löst diesen Fehler nicht mehr aus, wenn ein Käufer eine Abrechnungsadresse hinzufügt, der ein Straßenfeld fehlt:
Uncaught TypeError: Unable to process binding "text: function(){return currentBillingAddress().street.join(', ') }"
. GitHub-33826
- Adobe Commerce gibt beim Checkout in Geschäften, aus denen der Mini-Warenkorb entfernt wurde, keinen Konsolenfehler mehr aus. GitHub-34513
- Der Checkout schlägt im Zahlungsstadium nicht mehr fehl, wenn die Abrechnungsadresse Straßenfeldwerte fehlt oder der Straßenfeldwert kein Array ist. Zuvor schlug der Checkout mit diesem Fehler fehl:
Uncaught TypeError: Unable to process binding "text: function(){return currentBillingAddress().street.join(', ') }"
. GitHub-33826
- Die Gesamtsumme der Verkäufe wird jetzt korrekt im Raster des Gutscheinberichts berechnet. Zuvor war die Versandsumme nicht enthalten.
- Die Rabatte auf den ganzen Warenkorb werden jetzt korrekt berechnet, wenn der Käufer zwischen Versandmethoden wechselt.
- Die Dropdown-Liste für das Feld Status auf der Seite "Bestellung durch Admin erstellen"wird jetzt mit den vordefinierten Werten für das ausgewählte Land gefüllt. Zuvor war dieses Feld ein Eingabetextfeld anstelle eines Dropdown-Menüs.
- Adobe Commerce gibt keinen Fehler mehr aus, nachdem Sie mit der
addConfigurableProductsToCart
-Mutation ein konfigurierbares Produkt direkt nach dem Ändern der Store-Ansicht zum Warenkorb hinzugefügt haben.
- Adobe Commerce gibt keinen Fehler mehr aus, wenn Sie mit der
addConfigurableProductsToCart
-Mutation ein deaktiviertes untergeordnetes Element eines konfigurierbaren Produkts zum Warenkorb hinzufügen. Zuvor hatte Adobe Commerce einen Fehler wegen einer Verletzung der Integritätsbeschränkung ausgegeben.
- Cross-Sell-Produkte sind nicht mehr auf der Warenkorbseite sichtbar, wenn die Konfigurationseinstellung Cross-Sell-Elemente im Warenkorb anzeigen deaktiviert ist.
- Der Verwendungswert des Gutscheins ändert sich nicht mehr, wenn die Reihenfolge, auf die der Gutschein angewendet wurde, fehlschlägt. Zuvor wurden automatisch generierte Gutscheine für einmalige Verwendung als ungültig markiert, nachdem der Gutschein im Warenkorb angewendet wurde, die Bestellung jedoch nicht platziert wurde.
- Im Checkout-Workflow wurde eine Validierung hinzugefügt, um die Straßenadresse des Kunden mit dem Standardwert zu vergleichen. Wenn der Validierungsprozess Änderungen erkennt, wird
customer_address_id
aufnull
gesetzt, um sie als neue Kundenadresse zu behandeln. Bisher hat der Kunde die Adresse ohne Validierung beim Checkout gespeichert und denselben Kunden versucht, eine Bestellung unter Verwendung derselben Adresse aufzugeben, nachdem die Validierung auf das Checkout-Feld angewendet wurde , hat Adobe Commerce die bearbeitete Adresse nicht akzeptiert und eine Ausnahme ausgelöst.
Preisregeln für Warenkorb
- Die Couponerzeugung wird nun blockiert, bis die Regel zum Warenkorbpreis mit aktivierter Option
auto
gespeichert wird. Wenn Sie versuchen, diese Regel zu speichern, ohne die Optionauto
zu aktivieren, zeigt Adobe Commerce die folgende Meldung an:Rule is not saved with auto generate option enabled. Please save the rule and try again
.
- Es wurde ein Test zur Bestätigung der korrekten Anwendung eines Rabatts für Warenkorbpreise hinzugefügt.
- Preisregeln für Warenkorb, die eine SKU-Bedingung mit verwenden, wenn ein Artikel im Warenkorb gefunden/NICHT GEFUNDEN wird, wobei All/Beliebige dieser Bedingungen wahr ist, funktionieren jetzt mit konfigurierbaren Produkten erwartungsgemäß.
- Die Preisregeln für Warenkorb werden jetzt korrekt auf Produkte für Bundle mit festen Preisen angewendet. Zuvor galten die Preisregeln für den Warenkorb nicht für diese Produkte, wenn für mindestens ein untergeordnetes Produkt in der Regelbedingung derselbe Attributsatz festgelegt war.
- Ein Produkt mit dem Preis 0 kann jetzt erfolgreich zum Warenkorb hinzugefügt werden, wenn Adobe Commerce mit der Regel Fester Rabatt für den gesamten Warenkorb konfiguriert ist. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:
report.ERROR: Warning: Division by zero in /home/mer33515/public_html/ee24develop/app/code/Magento/SalesRule/Helper/CartFixedDiscount.php on line 85
.
- Es wurde eine Bedingung korrigiert, bei der die
cart
-Abfrage einen ungenauen Rabattbetrag zurückgab, wenn Warenkorbregeln mit Festbetrag aktiviert wurden.
Katalog
- Adobe Commerce löst keine Ausnahme mehr aus, wenn eine Aktion zum Aktualisieren von Massenattributen im Produktraster ausgeführt wird, wenn ein Produkt das Attribut
datetime
aufweist.
- GraphQL-Abfragen liefern jetzt Ergebnisse für untergeordnete Produkte eines konfigurierbaren Produkts gemäß den Sichtbarkeitsfiltereinstellungen der untergeordneten Produkte.
- Adobe Commerce ändert die zugehörigen Produktpreise nicht mehr, wenn die konfigurierbaren Produktattribute geändert werden. Zuvor überschrieb der "Minimum Advertised Price"(MAP) für ein konfigurierbares Produkt den Preis verwandter Produkte auf der Storefront.
- Administratoren können jetzt das letzte Produkt, das in einer Kategorie verbleibt, erneut zuweisen und die leere Kategorie speichern.
- Dropdown-/Mehrfachauswahl-Attributwerte für das Admin-Produktraster und -filter werden jetzt erwartungsgemäß aus den Admin-Einstellungen abgeleitet. Zuvor wurden Attributwerte aus den Standardspeichereinstellungen abgeleitet.
- GraphQL-Kategorieabfragen geben erwartungsgemäß Informationen zu Änderungen an gestaffelten Kategorien zurück.
- Produktlisten werden jetzt im Admin in Implementierungen korrekt wiedergegeben, wobei Produkte sowohl einer übergeordneten Kategorie als auch ihren Unterkategorien zugewiesen sind, sich jedoch an verschiedenen Positionen in den einzelnen Kategorien befinden. Zuvor schlug das Rendern der Produktliste mit diesem Fehler fehl:
Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists
. GitHub-33145
- Mehrfachauswahlattribute mit vielen Optionen (über 150) können jetzt neuen Produkten zugewiesen werden. Zuvor wurden Attributoptionen in der Tabelle
catalog_product_entity_varchar
gespeichert und nicht alle Optionen waren beim erneuten Öffnen des Produkts in der Admin-Konsole vorhanden. GitHub-33486
- Es wurde eine Validierung für den Fall hinzugefügt, dass ein Router eine von einer URL erfasste Aktionsklasse nicht instanziieren kann. Adobe Commerce zeigt nun die Standard-Fehlermeldung an. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:
PHP Error: Cannot instantiate abstract class Magento\Catalog\Controller\Product\Compare
.
- Adobe Commerce berechnet nun die Rabatte korrekt, wenn zwei Warenkorbregeln auf eine Bestellung angewendet werden, die diese Bedingungen erfüllt: Eine Warenkorbregel wird mit einem Couponcode und eine Festpreis-Bedingung für den ganzen Warenkorb angewendet, die zweite Warenkorbpreisregel enthält keinen Coupon und eine Prozent des Produktpreisrabatts -Bedingung. Zuvor konnte der relevante Algorithmus den Rabatt nicht ordnungsgemäß auf Warenkorbprodukte aufteilen, wenn eine vorherige Warenkorbregel bereits einen Rabatt auf einige Produkte angewendet hatte.
- Die Zuweisung vieler Produkte (etwa 10.000) zu einer Kategorie führt nicht mehr zum Absturz des Browsers.
- Bildattribute werden jetzt konsistent in der Datenbank gespeichert, unabhängig davon, ob sie vom Administrator gespeichert oder importiert werden. Zuvor wurden ALT-Textwerte für Bilder inkonsistent gespeichert. Wenn das Bild vorhanden war und die Beschriftung auf null gesetzt wurde, wurde der Beschriftungswert nicht in der Datenbank zurückgesetzt.
- Die SQL-Abfrage des Catalog Widget wurde optimiert. Zuvor haben große MySQL-Abfragen das Laden der Seite verlangsamt und zu MySQL-Ausfällen geführt.
- Preisfilter funktionieren jetzt ordnungsgemäß mit konfigurierbaren Produkten, die nicht auf Lager sind. Zuvor wurden konfigurierbare nicht vorrätige Produkte nicht in der korrekten Preisspanne angezeigt.
- Durch die Aktualisierung eines untergeordneten Produkts wird der von der Katalogregel übernommene Rabatt nicht mehr vom übergeordneten konfigurierbaren Produkt entfernt, das während des partiellen Indizierungsprozesses übernommen wurde. Zuvor, als wir ein konfigurierbares Produkt einer Kategorie, aber nicht den zugehörigen einfachen Produkten zugewiesen und dann diese Kategorie zum Erstellen einer Katalogregel verwendet haben, entfernte Adobe Commerce die Katalogregel, die dem einfachen Produkt während des partiellen Indizierungsprozesses zugewiesen war.
- Die Rasteransichtsliste mit gruppierten und konfigurierbaren Produkten enthält jetzt nur einfache und virtuelle Produkte, wenn Produktoptionen hinzugefügt werden. Zuvor umfasste die Anwendung einfache Produkte mit Optionen.
Katalogregel
- Tägliche Aktualisierungen der Katalogregeln führen nicht mehr zu Leistungsbeeinträchtigungen. Zuvor wurden bei der partiellen Indexierung der Katalogproduktpreise alte Preise oder Daten nicht entfernt.
- Adobe Commerce entfernt bei der partiellen Neuindizierung nicht mehr die Katalogpreisregeln für konfigurierbare Produkte. Zuvor wurden nur Subprodukte neu indiziert, wenn konfigurierbare Produkte neu indiziert wurden.
- Katalogpreisregeln mit der Bedingung category is not category_id gelten jetzt für Produkte, die keiner Kategorie angehören.
Konfigurierbare Produkte
- Der Beschriftungsname für die konfigurierbare Produktoption basiert jetzt auf der ausgewählten Store-Ansicht während der Erstellung der Admin-Bestellung. Zuvor verwendete Adobe Commerce den Beschriftungsnamen aus der standardmäßigen Store-Ansicht.
- Produktlisten enthalten jetzt korrekt untergeordnete Produkte eines nicht vorrätigen Produkts, wenn die globale Markierung für die Anzeige von nicht vorrätigen Produkten aktiviert ist. Zuvor enthielt die Produktliste das untergeordnete Produkt nicht, wenn eine von mehreren untergeordneten Produktoptionen bei Aktivierung dieser Markierung nicht vorrätig war.
- Sie können jetzt die
addConfigurableProductsToCart
-Mutation verwenden, um ein konfigurierbares Produkt in einer nicht standardmäßigen Store-Ansicht zum Warenkorb hinzuzufügen. Zuvor war es nicht möglich, ein konfigurierbares Produkt zu einem Warenkorb hinzuzufügen, wenn Website-ID und Store-ID unterschiedlich waren. GitHub-30948
- GraphQL
products
-Abfragen geben keine Daten mehr zu den deaktivierten untergeordneten Produkten konfigurierbarer Produkte zurück.
- Beim Erstellen neuer Konfigurationen für ein konfigurierbares Produkt werden Änderungen in bestehenden Konfigurationen nicht mehr überschrieben. Zuvor wurde der Status vorhandener Varianten mit dem Standardstatus
enabled
überschrieben, nachdem neue Varianten generiert wurden.
- Adobe Commerce gibt keinen internen Fehler mehr aus, wenn Sie versuchen, ein deaktiviertes untergeordnetes Element eines konfigurierbaren Produkts zum Warenkorb hinzuzufügen.
Kunde
- Adobe Commerce berücksichtigt jetzt den Website-Umfang für Admin-Gebietsschemata bei der Auftragserstellung. Zuvor funktionierten Bestelldetails wie Kundenadressattribute nur in einer Site-übergreifenden Bereitstellung ordnungsgemäß auf einer Website. GitHub-23254
Kundensegment
- Die Anzahl der übereinstimmenden Kunden für ein neues Kundensegment wird jetzt automatisch aktualisiert, wenn Sie ein Unternehmenskonto erstellen. Zuvor mussten Sie Segmentdaten aktualisieren, um eine genaue Zählung zu erhalten.
- Fehler bei der Validierung von E-Mail-Feldern im Popup für die Checkout-Anmeldung stimmen jetzt mit E-Mail-Validierungsfehlern auf der Kundenanmeldeseite überein, wenn ein Kunde versucht, sich mit einem ungültigen E-Mail-Konto anzumelden.
- Adobe Commerce enthält keine Fehlermeldung mehr in der E-Mail mit den Versanddetails, wenn ein Versandkommentar vom Admin hinzugefügt und das Kontrollkästchen Kunde benachrichtigen aktiviert wird. Zuvor enthielten Versandbestätigungs-E-Mails die folgende Nachricht:
We're sorry, an error has occurred while generating this content
.
- Die Werte der Regions- und der Länder-ID werden jetzt ordnungsgemäß in E-Mail-Vorlagen konvertiert. Wenn Sie zuvor in der Admin-E-Mail-Vorlage auf Vorschau-Link geklickt haben, wurden Land und Name der Region nicht korrekt angezeigt.
- Von Admin gesendete E-Mails zur Verkaufsaktualisierung für nicht standardmäßige Store-Ansichten enthalten jetzt korrekte Bezeichnungen für den Bestellstatus. Zuvor wurden diese E-Mails immer als Status aus dem Standardspeicher angezeigt. GitHub-29263
- Adobe Commerce enthält nun wie erwartet
Content-Disposition: inline
-Header in der E-Mail. GitHub-29258
- E-Mails zu Bestellungen und Sendungen funktionieren jetzt in Bereitstellungen mit Microsoft Outlook und MS Exchange Server erwartungsgemäß. Zuvor war der E-Mail-Textkörper leer, enthielt jedoch einen mit ATT* gekennzeichneten Anhang. GitHub-25076
- Bestellungs-E-Mails enthalten jetzt Daten, die wie erwartet mithilfe des Gebietsschemas des Käufers lokalisiert wurden. Zuvor wurden E-Mails zum Bestellen vom Admin-Gebietsschema verwendet.
- Wenn Sie auf die Vorschau einer E-Mail-Vorlage klicken, wird die Vorlagenvorschau jetzt wie erwartet in einem separaten Fenster geöffnet. Zuvor hat Adobe Commerce die Vorlagenvorschau gleichzeitig über das Raster E-Mail-Vorlagen und in einem Popup-Fenster geöffnet.
- E-Mails asynchroner Bestellungen, die von einer nicht standardmäßigen Website gesendet werden, enthalten jetzt Logo-URLs von der entsprechenden Website. Zuvor enthielten diese E-Mails immer Logos von der standardmäßigen oder primären Website. (Dem zweiten Array-Argument, das an die Funktion
UrlInterface
getUrl
übergeben wird, wurde ein Standardschlüssel mit dem WertstoreCode
zugewiesen. Dieser Wert unterscheidet URLs in Bezug auf verschiedene Stores/Websites und generiert eine korrektebaseUrl
für den E-Mail-Inhalt, der an den Kunden gesendet wird.)
Frameworks
- Nicht strikte Vergleiche zwischen Zahlen und nicht-numerischen Zeichenfolgen funktionieren jetzt, indem die Zahl in eine Zeichenfolge umgewandelt und die Zeichenfolgen verglichen werden. Vergleiche zwischen Zahlen und numerischen Zeichenfolgen funktionieren weiterhin wie bisher. Das bedeutet, dass
0 == "not-a-number"
jetzt als "false"betrachtet wird. GitHub-33780
- Der Helfer
Magento\Payment\Helper\Data
erstellt keine neuen Layouts mehr in Konstruktoren. Bisher hat Adobe Commerce einen Fehler ausgegeben, wenn dieser Helfer in benutzerdefinierten Befehlen verwendet wurde, ohne einen Bereichscode anzugeben. GitHub-33908
- Die Abhängigkeit
allure-framework/allure-php-api
Composer wurde aktualisiert.
- Adobe Commerce gibt jetzt einen 500-Antwortcode zurück, wenn in der Bootstrap-Datei eine Ausnahme auftritt. Zuvor gab Adobe Commerce einen Statuscode "200 OK"zurück. GitHub-22196
- Das Währungssymbol wird jetzt wie erwartet auf den Produktdetailseiten der Storefront geladen. Zuvor war dieses Symbol manchmal nach dem Neuladen der JavaScript-Seite verschwunden.
- Das Aktualisieren von
symfony/console
verursacht keinen Fehler mehr, wennbin/magento setup:di:compile
ausgeführt wird. GitHub-33595
- Neue erforderliche Optionen wurden zu den
.htaccess
- undnginx.conf
-Dateien hinzugefügt, die mit Adobe Commerce für die Unterstützung von PHP 8.x bereitgestellt werden. Auch veraltete Optionen wurden entfernt. GitHub-34358
- Händler können jetzt ein Video für mehrere Produkte hochladen. Der Dateierstellungsprozess hängt jetzt nur dann eine Erweiterung an den Dateinamen an, wenn der Name der hochgeladenen Datei eine Erweiterung enthält. Zuvor gab Adobe Commerce den folgenden Fehler aus, als ein Händler versuchte, dasselbe Video hochzuladen und es dann für zwei verschiedene Produkte zu speichern:
Notice: Undefined index: extension in /app/7ha7zds7wvqys_stg/vendor/magento/framework/File/Uploader.php on line 699
. Dies trat auf, weil Adobe Commerce versucht hat, eine Dateierweiterung an den Namen anzuhängen, unabhängig davon, ob der Name der hochgeladenen Datei eine Erweiterung aufweist.
- Fehlerkorrektur - Die Konstruktion von
sprintf(__())
undsprintf(Magento\Framework\Phrase())
funktioniert jetzt problemlos mit PHP 8.x in der gesamten Codebasis. Zuvor hatte Adobe Commerce diesen Fehlertyp ausgegeben:Expected parameter of type 'string', 'Magento\Framework\Phrase' provided
. GitHub-34085
- Verbesserte Validierung der erweiterten Suchabfrageparameter. GitHub-33589
- Beim Ausführen von
bin/magento support:backup:code
wird jetzt ein Backup wie erwartet erstellt. Zuvor erstellte Adobe Commerce eine Sicherung, gab jedoch einen Fehler aus.
- Erfolgreich ausgeführte
cron
-Prozesse erhalten jetzt den Statussuccess
. Zuvor konnte derselbecron
-Prozess zweimal ausgeführt werden, da erfolgreichencron
-Prozessen der Statuspending
zugewiesen wurde.
- Der Auftrag
staging_synchronize_entities_period
cron
funktioniert jetzt erwartungsgemäß. Zuvor wurde das erste Staging-Update erfolgreich angewendet, aber Adobe Commerce hat diesen Fehler mit nachfolgenden Aktualisierungen ausgegeben:report.ERROR: Cron Job staging_synchronize_entities_period has an error: The active update can't be deleted
.
- Das
Magento_Logging
-Modul unterstützt jetzt IPv6.
Allgemeine Fehlerbehebungen
- Adobe Commerce kopiert beim Duplizieren eines Produkts jetzt alle Produktfelder entsprechend den definierten Bereichen. Zuvor wurden die Felder name und description auf den Bereich
global
zurückgesetzt.
- Adobe Commerce wendet die Delta-Rundung nicht mehr auf einen Rabatt an, wenn der Produktpreis 0 beträgt. Zuvor berechnete Adobe Commerce einen negativen Rabattbetrag.
- Produkte mit dem Attribut Als neu festlegen , denen ein leeres Startdatum und ein abgelaufenes Enddatum zugewiesen sind, können jetzt erfolgreich gespeichert werden. Zuvor gab Adobe Commerce diesen Fehler aus, als Sie ein Produkt mit den folgenden Einstellungen speicherten:
Make sure the To Date is later than or the same as the From Date
.
- Adobe Commerce dupliziert keine bestehende CMS-Seite in der CMS-Hierarchie mehr, wenn Sie die SEO-URL-Kennung ändern. Zuvor erstellte Adobe Commerce einen neuen Knoten in der CMS-Hierarchie und duplizierte einen vorhandenen.
- Administratoren können nun Vorgänge, die während der maximalen Verarbeitungszeit ausgeführt wurden, erneut versuchen. Der Standardwert beträgt maximal 12 Stunden.
- Während der Verarbeitung von Massenaktionen treten aufgrund nicht bestätigter Nachrichten für den Verbraucher keine Fehler mehr in der Pipeline auf. Eine Eigenschaft "prefetch count"beschränkt diese Meldungen nun für den Verbraucher und vermeidet Fehler. Zuvor erzeugte die Ausführung von
bin/magento queue:consumers:start async.operations.all
diesen Fehler:Broken pipe or closed connection
.
- Käufer werden nun nach einem zweiten fehlgeschlagenen Anmeldeversuch zur Anmeldeseite zurückgeleitet. Zuvor wurden Käufer nach einem zweiten erfolglosen Anmeldeversuch auf eine 404-Seite umgeleitet. GitHub-32885
- Die Gültigkeit des Tokens für das Zurücksetzen von Passwörtern wurde erweitert, um zu verhindern, dass bei der Übermittlung der Seite für die Kennwortänderung eine Wettlaufbedingung auftritt. GitHub-29647
- Berechtigungen, die neuen Integrationen zugewiesen sind, werden jetzt eingehalten. GitHub-33347
- Fehlerkorrektur - Es wurden Regressionsfehler behoben, der die in den Ausnahmeprotokollen für das Kontaktformular verbleibenden Nachrichten betraf. GitHub-34483
- Es wurden mehrere Probleme beim Laden von Kundendaten durch JavaScript behoben. GitHub-30498
- Die Verwendung von
QuoteIdToMaskedQuoteId
in einer Erweiterung erhöht die Reaktionszeit nicht mehr signifikant. GitHub-33676
- Die Klasse
BundleDiscountPrice
inmagento2/app/code/Magento/Bundle/Pricing/Price/ConfiguredPrice.php
wird jetzt als erwartet deklariert. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben:Class Magento\Bundle\Pricing\Price\BundleDiscountPrice not found
. GitHub-33334
- Die vom AWS S3-Adapter geschriebenen CSV-Feldwerte mit Escapezeichen stimmen nun mit den von anderen Dateisystemadaptern geschriebenen Daten überein.
- S3-kompatibler Speicher wird jetzt unterstützt. GitHub-32114
- Beim Abmelden von einem Gerät wird der Käufer nicht mehr automatisch von anderen Geräten abgemeldet.
- Adobe Commerce speichert eine CMS-Seite jetzt erfolgreich, wenn Sie sie von Inline-Raster auf Store-Ansichtsebene aus bearbeiten, wenn die Konfigurationseinstellung Übergeordnete Knotenhierarchie verwenden deaktiviert ist. Zuvor wurde dieser Fehler in Adobe Commerce angezeigt und Ihre CMS-Seitenbearbeitungen wurden nicht gespeichert:
A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later
.
- Breadcrumbs werden jetzt korrekt für Knoten angezeigt, die dieselbe Seite enthalten. Zuvor zeigte Adobe Commerce denselben Knotennamen für Seiten an, die zu mehreren Knoten gehörten. Adobe Commerce hat nur den ersten Knoten für eine Seite abgerufen, selbst wenn für jede Seite mehrere Knoten vorhanden waren.
- URL-Neuschreibungen von Inline-Bearbeitungsereignissen werden jetzt in Berichten protokolliert.
- Das Cookie
mage-messages
wird nicht zurückgesetzt, wenn keine neuen Nachrichten vorhanden sind.
Geschenkkarten
- Es wurde eine informativere Fehlermeldung hinzugefügt, wenn ein Käufer eine ungültige Geschenkkarte eingibt.
GraphQL
- Die Mutationen
generateCustomerToken
undrevokeCustomerToken
stellen jetzt die richtige Cache-ID für den Benutzerstatus bereit. Zuvor wurde bei diesen Mutationen ein ungültigerx-magento-cache-id
verwendet, was die Leistung beeinträchtigte.
- Die Mutation
setBillingAddressToCart
verwendet nun korrekt den Parametersame_as_shipping
, um die Rechnungsadresse so festzulegen, dass sie mit der Lieferadresse wie erwartet übereinstimmt. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:The shipping method is missing. Select the shipping method and try again
. GitHub-30924
- GraphQL-Warenkorbvorgänge berechnen jetzt die Gesamtsummen der Warenkorbsummen nur, wenn die Abfrage sie anfordert. Zuvor wurde bei Warenkorboperationen immer die Gesamtsumme berechnet, was ein ressourcenintensiver Vorgang ist.
- Die Mutation
addProductsToCart
fügt dem Warenkorb jetzt nur Produkte hinzu, die dem Store zugewiesen sind, der in der Kopfzeile definiert ist.
products
Abfragen mit Navigationsfiltern mit Ebenen geben jetzt korrekte untergeordnete Kategorienlisten zurück. GitHub-33387
- Abfragen und Mutationen, die das
ConfigurableCartItem
-Objekt zurückgeben, enthalten erwartungsgemäß Informationen zu konfigurierten Varianten.
- Die
products
-Abfrage gibt jetzt Konfigurationsoptionenwerte und Variantenattributwerte zurück. Zuvor waren diese Werte in den Abfrageantworten leer.
- Die
products
-Abfrage filtert jetzt Produkte korrekt, wenn untergeordnete Produkte auf der Store-Ansichtsebene deaktiviert sind. Zuvor gab die Abfrage untergeordnete Produkte zurück, die auf Store-Ansichtsebene deaktiviert waren.
- GraphQL stellt New Relic jetzt beschreibende Transaktionsnamen zur Verfügung, die beim Debugging hilfreich sein können. GitHub-30915
- Die
setShippingAddressesOnCart
-Mutation unterstützt jetzt das Festlegen von Versandadressen in einem Warenkorb mit einem leeren Telefonnummernwert, wenn die Konfigurationseinstellung Telefon anzeigen für die Admin-Konfiguration auf optional gesetzt ist. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben:Field CartAddressInput.telephone of required type String! was not provided
.
- Es wurde ein Problem behoben, bei dem die
addSimpleProductsToCart
-Mutation es Ihnen ermöglichte, einfache Produkte zu einem Warenkorb hinzuzufügen, die nicht der Ziel-Website zugewiesen sind.
- MySQL-Abfragen wurden für GraphQL
products
-Abfragen optimiert, die Suchparameter verwenden, um die Suchergebnisse zu verfeinern.
- Die
addConfigurableProductToCart
-Mutation unterstützt nicht mehr das Hinzufügen eines Produkts zu einem Warenkorb, wenn das Produkt nicht im angeforderten Umfang enthalten ist.
- Die
products
-Abfrage gibt jetzt nur konfigurierbare Varianten zurück, die dem angeforderten Speicher zugewiesen sind. Zuvor wurden alle Varianten des angeforderten konfigurierbaren Produkts zurückgegeben.
addSimpleProductsToCart
-Anforderungen können jetzt erfolgreich parallel ausgeführt werden. Zuvor wurden bei mehreren Anforderungen für dieselbe SKU doppelte Zeileneinträge für dieselbe Warenkorb-ID erstellt, anstatt die Produktmenge wie erwartet zu erhöhen.
- Die
addProductsToCompareList
-Mutation kann jetzt verwendet werden, um Varianten konfigurierbarer Produkte zu vergleichen.
- Wenn der Preis eines Tierprodukts vom Backend aus aktualisiert wird, wird der neue Preis im Warenkorb des Kunden korrekt aktualisiert. Zuvor wurde die Zwischensumme der Zeile in der Zusammenfassung des Warenkorbs zwar korrekt aktualisiert, aber die Zeilenuntersumme wurde nicht aktualisiert.
- Die
addProductsToCart
-Mutation fügt jetzt alle ausgewählten Optionen zum Warenkorb hinzu, wenn sie zum Hinzufügen von Bundle-Produkten mit mehreren Auswahloptionen verwendet wird. Zuvor wurde durch die Mutation nur die letzte Auswahl hinzugefügt. GitHub-33123
- GraphQL-Abfragen geben jetzt die Rechnungsadresse wie erwartet zurück, wenn der Wert eines optionalen Telefonfelds auf eine leere Zeichenfolge gesetzt ist. Zuvor wurde bei Abfragen ein Nulladressenwert zurückgegeben. GitHub-30218
- Die Antwort der
products
-Abfrage listet Produkte nun entsprechend der angegebenen Sortierreihenfolge auf, wenn mehrere Produkte dieselbe Relevanz oder denselben Preiswert haben.
- Gleichzeitige
addSimpleProductsToCart
- undaddProductsToCart
-Anforderungen führen nicht mehr zu duplizierten Anführungszeichen.
products
Abfrageebenen-Navigationsfilter geben nun die richtigen untergeordneten Kategorienlisten zurück. Nur direkte Unterkategorien sind jetzt enthalten, wenn dieincludeDirectChildrenOnly
-Markierung in der Anfrage angegeben ist. Zuvor wurden alle Kategorien als Antwort im Aggregationsabschnitt berücksichtigt, wenn ein Produkt mehreren Kategorien zugewiesen wurde.
- Suchvorschlagsfunktion für GraphQL-Suchabfragen hinzugefügt.
- Das Feld
OrderAddress.telephone
ist jetzt in dercustomer
-Abfrage oder anderen Abfragen und Mutationen optional, die Kunden-Bestelladressen zurückgeben oder ändern.
- Die Preise werden jetzt für Kunden in einer bestimmten Gruppe sowohl im Storefront als auch Admin korrekt aktualisiert, wenn eine Gruppen-ID über die API geändert wird. Bisher wurden diese Preise nicht korrekt aktualisiert, wenn eine Gruppen-ID über die API geändert wurde.
Bild
- Wasserzeichenbilder mit transparentem Hintergrund haben keinen weißen Hintergrund mehr auf dem transparenten Produktbild, das überlagert wird. Zuvor wurde das Wasserzeichen mit einem weißen Hintergrund angezeigt, wenn sowohl das Wasserzeichenbild als auch das Produktbild einen transparenten Hintergrund hatten.
- Logos für Rechnungen und Lieferbestätigungen werden jetzt hochgeladen und wie erwartet angezeigt, wenn AWS S3 aktiviert ist.
- Das Medien-Tag, das mit einem Bild verknüpft ist, das einer CMS-Seite in einer Bereitstellung hinzugefügt wurde, in der der Administrator auf eine andere Domäne als die Store-URL festgelegt ist, enthält jetzt erwartungsgemäß Store-URLs. Zuvor enthielten Medien-Tags statische Admin-URLs anstelle der erwarteten Store-URLs. GitHub-32930
- Adobe Commerce gibt keinen Fehler mehr aus, wenn Sie den Bilder-Cache leeren und gleichzeitig Bilder auf der Storefront laden.
Import/Export
bin/magento remote-storage:sync
schlägt nicht mehr fehl, wenn Dateinamen ähnlich sind, sich aber nur um ein oder zwei Zeichen unterscheiden. Zuvor wurde das erste Bild korrekt gespeichert, aber das zweite, ähnlich benannte Bild verursachte einen Synchronisierungsfehler und diesen Fehler:Notice: Undefined index: media/catalog/product/5/_ in /src/vendor/magento/module-remote-storage/Driver/Adapter/Cache/Generic.php on line 197
. GitHub-34337
- Adobe Commerce konvertiert nun den Zeitstempel im Exportdateinamen nach einem geplanten Export in die Zeitzone des Benutzers. Zuvor wurden diese Werte nicht konvertiert, und Adobe Commerce zeigte den UTC-Zeitstempel an.
- Adobe Commerce erstellt keine doppelten Bilder mehr im Remote-Speicher, wenn dieselbe CSV-Datei mehrmals importiert wird.
- Der Import schlägt mit dieser Meldung nicht mehr fehl:
Import failed: Area code not set: Area code must be set before starting a session
. GitHub-16171
- Sie können jetzt erfolgreich importieren, nachdem Sie
bin/magento app:config:dump
ausgeführt undconfig.php
manuell bearbeitet haben. GitHub-31428
- Nicht standardmäßige Trennzeichen für mehrere Werte können jetzt in benutzerdefinierten Attributen mit Mehrfachauswahl verwendet werden. Zuvor schlug die Validierung beim Import fehl. GitHub-23156
- Die Produktposition in Kategorien wird jetzt beim Import aus CSV korrekt zugewiesen.
Index
- Adobe Commerce zeigt jetzt Produkte wie erwartet nach der Neuindizierung auf der Storefront an. Zuvor wurden in der Storefront keine weiteren Produkte angezeigt, als die ersten 500 Produkte, die neu indiziert wurden, vorrätig waren und die nächsten 500 Produkte nicht vorrätig waren.
- Es wurden Konsistenzprobleme in zusammengeführten
indexer.xml
-Dateien behoben. Die zulässigen Werte inclassType
sind jetzt in nicht zusammengeführten und zusammengeführtenindexer.xml
-Dateien identisch. GitHub-29609
- In Kategorienindexern wurde ein Synchronisierungsmechanismus implementiert, um zu verhindern, dass vollständige und partielle Indexer parallel ausgeführt werden. Wenn diese Indexer zuvor parallel ausgeführt wurden, konnten Produkte vorübergehend auf Kategorieseiten der Storefront ausgelassen werden oder Kategorieseiten konnten vorübergehend von Produkten leer sein.
Infrastruktur
- Die nicht unterstützte
str_contains
-Methode wurde durch eine unterstützte Funktion ersetzt. Dies war ein bekanntes Problem für Adobe Commerce 2.4.3. GitHub-33680
-
Die Codebase wurde überarbeitet, um die Verwendung des Suchbegriffs
match
zu korrigieren, das in PHP 8.x ein reserviertes Schlüsselwort ist. GitHub-33626 -
HTML-Tags werden jetzt verschachtelt und ordnungsgemäß geschlossen, um die Standards in JQuery 3.5.x für nicht void-Elemente, einschließlich benutzerdefinierter Elemente, zu erfüllen.
- Korrektur der Funktionen
abs()
undround()
für die Kompatibilität mit PHP7.x und PHP8.x. GitHub-34322
- Das Aktualisieren von
symfony/console
verursacht keinen Fehler mehr, wennbin/magento setup:di:compile
ausgeführt wird. GitHub-33595
- Die Einschränkung für die Abhängigkeit
colinmollenhour/cache-backend-redis
Composer wurde korrigiert. GitHub-34177
- Die Codebase wurde überarbeitet, um Aufrufe zu veralteten Methoden von
phpunit/phpunit
zu entfernen. GitHub-33916
- Adobe Commerce zeigt jetzt einen informativen Fehler an, wenn ein Administrator mit einem schreibgeschützten
pubs/media
versucht, auf die Produktdetailseite für ein Produkt zuzugreifen, das Bilder enthält. Zuvor hatte Adobe Commerce einen PHP-Fehler ausgegeben. GitHub-32819
- Alle Anmerkungen auf Mitgliederebene
@api
wurden in der gesamten Codebase in ihre Klasse verschoben.
gift-card Cms
Widget-Daten wurden vonMagento/WidgetSampleData
(Magento Open Source) inMagento/GiftCardSampleData
(Adobe Commerce) verschoben. Dies hat Probleme bei der Installation (Magento Open Source) mit Beispieldaten auf PHP8.1 behoben.
- Markierte Schnittstellen in der gesamten Adobe Stock Integration-Codebase mit
@api
nach Bedarf. GitHub-32875
- Bei Verwendung emulierter vorbereiteter Anweisungen werden nun Integer und Floats in Ergebnismengen mit nativen PHP-Typen anstelle von Zeichenfolgen zurückgegeben. GitHub-34625
- Die automatische Erstellung von Arrays aus falschen Werten wurde deaktiviert, um die Kompatibilität mit PHP 8.1 sicherzustellen.
- Der Helfer
Magento\Payment\Helper\Data
erstellt keine neuen Layouts mehr in Konstruktoren. Bisher hat Adobe Commerce einen Fehler ausgegeben, wenn dieser Helfer in benutzerdefinierten Befehlen verwendet wurde, ohne einen Bereichscode anzugeben. GitHub-33908
- Sie können jetzt ein
data
-Argument durchdi.xml
an einen Konstruktor der Blockinstanz übergeben.
Generator.php
wurde für Lesbarkeit optimiert. GitHub-33809
- Die JWK-Prüfung in der Klasse
JwsManager
wurde verbessert, um Situationen zu verarbeiten, in denen der Algorithmus direkt in der Kopfzeile festgelegt ist. Zuvor wurde bei dieser Prüfung dieses gültige Szenario ignoriert. GitHub-32636
Kompatibilität von Upgrades für PHP 8.1
-
Funktionen, die in PHP 8.1 nicht mehr unterstützt werden, wurden aus der Codebase entfernt. GitHub-34497
-
Es wurden Rückgabetypdeklarationen zu internen Methoden mit unvollständigen Rückgabetypen hinzugefügt, um die Kompatibilität mit PHP 8.1 zu gewährleisten. GitHub-34498
-
Das Stamm-Metapaket
composer.json
und die Dateicomposer.json
für jedes Modul wurden auf PHP 8.1 aktualisiert. GitHub-34009 -
Drittanbieter-Bibliothek
jquery.tabs
(aktuelle Version) -
NPM-Pakete (neueste Version) GitHub-33512, GitHub-33972
-
jquery.cookie
Bibliothek eines Drittanbieters (aktuelle Version) GitHub-34427
Aktualisierungen der Komponentenabhängigkeiten
-
Alle Composer-Abhängigkeiten wurden auf die mit PHP 8.1 kompatiblen Versionen aktualisiert.
-
PHPUnit wurde auf die neueste Version (9.5.x) aktualisiert. Tests und Test-Frameworks wurden aktualisiert, um mit der neuen Version kompatibel zu sein.
JavaScript-Abhängigkeitsaktualisierungen
jquery-validate
Bibliothek eines Drittanbieters GitHub-33853
Less.js
(v3.13.1) GitHub-32845
Entfernung und Veraltungen von Bibliotheken
-
Die folgenden Bibliotheken wurden entfernt, da alle Browser, die von Adobe Commerce 2.4.x unterstützt werden, integrierte Unterstützung für diese Funktion haben:
es6-collections.js
MutationObserver.js
Modernizr
FormData.js
-
Die nicht verwendete JavaScript-Bibliothek
jquery.hoverIntent
wurde entfernt. GitHub-33732 -
lib/internal/Magento/Framework/Filter/Money.php
ist veraltet. Es enthält die Funktionmoney_format()
, die in PHP 8.x entfernt wurde. GitHub-33870 -
Das veraltete, nicht unterstützte
grunt-autoprefixer
-Paket wurde entfernt. GitHub-34037
Bibliotheksaktualisierungen
-
Die folgenden Bibliotheken wurden auf neuere Versionen aktualisiert:
script.aculo.us
Chart.js
moment.js
moment-timezone-with-data.js
matchMedia.js
underscore.js
PrototypeJS
RequireJS
LessCSS
Rechnung
- Bei automatisch inkrementierten Rechnungskennungen wurde die Markierung auf
int
entfernt, wenn ihnen eine Zeichenfolge vorangestellt wird. Daher wird für Rechnungen nun für Zahlen, denen eine Zeichenfolge vorangestellt ist, der Wert 0 angezeigt. GitHub-34451
Protokollierung
- Adobe Commerce erstellt keine Protokolleinträge mehr für fehlgeschlagene API-Aufrufe, die Massenaktionen in System > Massenaktionen ausführen. Zuvor wurden dem Massen-Aktionsprotokoll permanente Einträge für fehlgeschlagene API-Aufrufe hinzugefügt.
- Die automatische Erstellung von Arrays aus falschen Werten ist nicht mehr zulässig. GitHub-34499, GitHub-34589
Adobe Commerce-Codierungsstandard
phpunit/ phpunit
wurde auf die neueste Version für dasmagento-coding-standard
-Repository aktualisiert. GitHub-33622
- Aktualisierung der
webonyx/graphql-php
-Abhängigkeit auf Version ^14.9 im Adobe Commerce-Standard-Repository für die Kodierung. GitHub-32863
- Es wurde ein neuer Sniff
Magento2.PHP.ArrayAutovivification
zum Adobe Commerce-Kodierungsstandard hinzugefügt, um die automatische Erstellung von Arrays von einem Wert vom Typ "false"zu identifizieren. GitHub-34509
- Es wurde ein neuer Sniff
Magento2.Functions.DeprecatedFunction
zum Adobe Commerce-Kodierungsstandard hinzugefügt. GitHub-34547
- Es wurden veraltete Funktionen hinzugefügt, mit denen
Magento2.Functions.DiscouragedFunction
im Adobe Commerce-Kodierungsstandard ausgewertet werden kann. GitHub-34548
- Der "
Magento2.Annotation.MethodAnnotationStructure
"-Sniff schlägt nicht mehr mit einem falsch-positiven Ergebnis fehl. GitHub-34679
Media Gallery
- Der Befehl
bin/magento media-gallery:sync
schlägt in Bereitstellungen, in denen AWS S3 aktiviert ist, nicht mehr fehl.
- Die neu hinzugefügten Untermenütitel des Mediengalerie-Inhalts werden jetzt angezeigt, wenn die Menüelemente größer als 11 sind und die Konfigurationseinstellung Alte Mediengalerie aktivieren aktiviert ist. GitHub-33889
- Die Ladezeit für die Registerkarte "Media Gallery"beim Bearbeiten eines Produkts mit vielen Bildern wurde verbessert. GitHub-33434
MFTF
-
CURLOPT_POSTFIELDS
akzeptiert keine Objekte mehr als Arrays. Um ein Objekt als Array zu interpretieren, führen Sie eine explizite (array
) Umwandlung durch. Diese Vorgehensweise gilt auch für andere Optionen, die Arrays akzeptieren. GitHub-33781 -
curl_init()
gibt jetzt einCurlHandle
-Objekt und keine Ressource zurück. Die Funktioncurl_close()
hat keine Auswirkung mehr. Stattdessen wird dieCurlHandle
-Instanz automatisch zerstört, wenn sie nicht mehr referenziert wird. GitHub-33781
- Fehlerkorrektur - MFTF-Tests für herunterladbare Produkte funktionieren nun fehlerfrei. GitHub-34270
CliCacheFlushActionGroup
wurde aus den ModulenCatalogSearch
,GroupedProduct
,Newsletter
,Paypal
,Quote
undReview
entfernt. GitHub-33531
- Nicht strikte Vergleiche zwischen Zahlen und nicht-numerischen Zeichenfolgen funktionieren jetzt, indem die Zahl in eine Zeichenfolge umgewandelt und die Zeichenfolgen verglichen werden. Vergleiche zwischen Zahlen und numerischen Zeichenfolgen funktionieren weiterhin wie bisher. Das bedeutet, dass 0 == "not-a-number" jetzt als "false" betrachtet wird. GitHub-33780
parse_url()
unterscheidet jetzt zwischen fehlenden und leeren Abfragen und Fragmenten. GitHub-33782
- Die Codebase wurde aktualisiert, um einen schwerwiegenden Fehler bei der Verwendung der
ReflectionType::isBuiltin()
-Methode zu vermeiden. GitHub-34194
Neue Aktionsgruppen
AdminCheckOrderStatusInGridActionGroup
GitHub-33747
StorefrontSelectFirstShippingMethodActionGroup
GitHub-33773
AdminClickUpdateChangesOnCreateOrderPageActionGroup
GitHub-33689
Aktionsgruppen
Wiederholte Aktionen wurden in diesen Tests durch Aktionsgruppen ersetzt:
AdminAddInStockProductToTheCartTest
GitHub-34512
AdminAddBundleItemsTest
GitHub-34312
AdminConfigurableProductAddConfigurationTest
GitHub-34511
AdminConfigurableProductBulkUpdateTest
GitHub-34435
AdminConfigurableProductDisableAnOptionTest
GitHub-34511
AdminConfigurableProductOutOfStockAndDeleteCombinationTest
GitHub-34316
AdminConfigurableProductOutOfStockTestDeleteChildrenTest
GitHub-34316
AdminConfigurableProductRemoveAnOptionTest
GitHub-34511
AdminConfigurableProductRemoveConfigurationTest
GitHub-34511
AdminCreateAndEditSimpleProductSettingsTest
GitHub-34435
AdminCreateAndEditVirtualProductSettingsTest
GitHub-34435
AdminCreateInactiveFlatCategoryTest
GitHub-34490
AdminCreateInactiveInMenuFlatCategoryTest
GitHub-34510
AdminCreateDuplicateCategoryTest
GitHub-34414
AdminCreateDuplicateProductTest
GitHub-34414
AdminDeleteSimpleProductTest
GitHub-33783
AdminEditRelatedBundleProductTest
GitHub-34313
AdminMassDeleteBundleProductsTest
GitHub-34313
AdminNavigateMultipleUpSellProductsTest
GitHub-34314
AdminSimpleProductSetEditContentTest
GitHub-34435
AdminSimpleProductTypeSwitchingToConfigurableProductTest
GitHub-33788
AdminConfigurableProductTypeSwitchingToVirtualProductTest
GitHub-33788
AdminCreateConfigurableProductWithDisabledChildrenProductsTest
GitHub-33775
AdminUpdateFlatCategoryAndAddProductsTest
GitHub-34490
AdminUpdateTopCategoryUrlWithNoRedirectTest
GitHub-33774
AdminUpdateTopCategoryUrlWithRedirectTest
GitHub-33774
CatalogProductListWidgetOperatorsTest
GitHub-34579
CreateProductAttributeEntityWithReservedKeysTest
GitHub-34422
EnableDisableBundleProductStatusTest
GitHub-34313
StorefrontCheckRefundGrandTotalActionGroup
GitHub-34315
StorefrontInactiveCatalogRuleTest
GitHub-33556
StorefrontConfigurableProductCantAddToCartTest
GitHub-33786
StorefrontConfigurableProductOptionsTest
GitHub-33785
StorefrontConfigurableProductCanAddToCartTest
GitHub-33784
StorefrontConfigurableProductGridViewTest
GitHub-34311
StorefrontConfigurableProductListViewTest
GitHub-34311
StorefrontProductNameWithHTMLEntitiesTest
GitHub-33806
StorefrontProductNameWithDoubleQuoteTest
GitHub-32991
Neue Tests
AdminCreateOrderWithCheckedAppendCommentCheckboxTest
GitHub-32381
CheckoutWithEnabledCaptchaTest
GitHub-32991
StorefrontAddProductWithBackordersAllowedOnProductLevelToCartTest
GitHub-33635
StorefrontGiftMessageForOrderOnCheckoutCartPageTest
GitHub-32821
StorefrontCaptchaCheckoutWithEnabledCaptchaTest
GitHub-32821
StorefrontCheckoutWithEnabledMinimumOrderAmountOptionTest
GitHub-33460
Refaktorierte Tests
CaptchaWithDisabledGuestCheckoutTest
GitHub-30828
Newsletter
- Benutzer mit entsprechenden Berechtigungen können jetzt die Abonnements von Kunden-Newslettern erwartungsgemäß verwalten. Zuvor konnten nur Administratoren mit vollständigen Berechtigungen Newsletter-Abonnements für Kunden auf der Seite "Admin-Kundenkonto"verwalten.
Bestellung
- Käufer können eine bestehende Bestellung, die ein Produkt enthält, jetzt erfolgreich neu anordnen, indem sie benutzerdefinierte Optionen der Dateityp- und Typ-Dropdown-Liste sowohl aus der Storefront als auch aus der Admin-Liste kombinieren. Zuvor hatte Adobe Commerce einen Fehler ausgegeben und die Neuanordnung nicht verarbeitet.
- Die Rechnungen für Bestellungen, die per Gutschrift bei einem Geschäft bezahlt werden und für die eine feste Produktsteuer (FPT) gilt, enthalten jetzt die korrekte Gesamtsumme.
- Die Detailseite zur Admin-Bestellung wird jetzt erwartungsgemäß geladen. Zuvor hatte Adobe Commerce beim Laden der Detailseite für Bestellungen mit bestimmten Steuern den folgenden Fehler ausgegeben:
Call to a member function getId() on array
.
- Administratoren mit eingeschränkten Berechtigungen, einschließlich Bestell- und Versandberechtigungen, können jetzt die Bestellseite wie erwartet anzeigen. Zuvor gab Adobe Commerce einen Fehler aus, wenn ein Administrator mit diesen Berechtigungen versucht hatte, eine Bestellung anzuzeigen. GitHub-14633
- Käufer können jetzt eine Bestellung aufgeben, die ein untergeordnetes konfigurierbares Produkt enthält, wenn eine zulässige Höchstmenge festgelegt ist.
Zahlungsmethoden
- Käufer können jetzt Braintree verwenden, um eine Bestellung über eine Rechnungsadresse ohne eine bestimmte Region in Bereitstellungen mit aktiviertem 3DS durchzuführen. Zuvor wurde der Kassengang eingefroren, als der Käufer auf Bestellung aufgeben klickte und der Kauf nicht abgeschlossen werden konnte. GitHub-34204
- Die Zahlungsoption Venmo wird jetzt unterstützt.
- PayPal kann nun nach BN-Code nachverfolgt werden.
bin/magento setup:upgrade
wird jetzt wie erwartet ausgeführt, wenn von Adobe Commerce 2.4.2-p1 aktualisiert wird. Zuvor hatte Adobe Commerce den folgenden Fehler ausgegeben:Unable to apply data patch Magento\Paypal\Setup\Patch\Data\UpdateBmltoPayLater for module Magento_Paypal
. GitHub-33678
- Die richtige Store-ID wird jetzt zum Abrufen gespeicherter Kreditkarten während der Admin-Bestellplatzierung verwendet. Gespeicherte Kreditkarten werden jetzt bei der Auftragsplatzierung entsprechend der Konfigurationseinstellung des Website-Umfangs angezeigt. Zuvor waren, wenn ein Administrator versuchte, über den Administrator eine Bestellung für einen Kunden zu erstellen und die Methode "Gespeicherte Kreditkarten"auswählte, keine Optionen für gespeicherte Karten verfügbar.
- Anomalien mit PayPal Kreditanzeige von Geschenkgutscheinen wurden gelöst. Bisher wurde bei Aktivierung von PayPal-Guthaben und der Konfiguration mehrerer Geldbeträge für Geschenkgutscheine, wenn ein Käufer den Betrag für den Wert einer Geschenkkarte änderte, der Store den Betrag für die Zahlung der Tranche nicht aktualisiert. Dies war ein bekanntes Problem in Adobe Commerce 2.4.3.
PayPal
- Adobe Commerce zeigt beim Checkout mit der Zahlungsmethode PayPal Express keinen Fehler mehr an. Bisher wurde in Adobe Commerce, obwohl der Checkout-Prozess abgeschlossen war, der folgende Fehler angezeigt:
Something went wrong
.
- PayPal Express funktioniert jetzt wie erwartet aus dem Warenkorb. Bisher hat Adobe Commerce diesen Fehler ausgegeben, als Sie auf die Schaltfläche PayPal geklickt haben, um den Kassengang aus dem Warenkorb auszudrücken:
To check out, please sign in with your email address
. GitHub-33445
- PayPal Payflow Pro führt jetzt eine verzögerte Erfassung mit den richtigen übergeordneten Transaktions-IDs in Bereitstellungen durch, bei denen das PayPal Payflow Pro Gateway mit Zahlungsaktion auf Autorisierung eingestellt ist. Eine Verkauf -Transaktion wird an Payflow mit einer übergeordneten Transaktions-ID des Vault-Tokens gesendet, das beim Checkout wie erwartet erstellt wurde. Zuvor wurde eine verzögerte Aufnahme -Transaktion erstellt und an PayPal-Payflow gesendet. GitHub-33445
- Käufer werden nun wie erwartet auf die Erfolgsseite umgeleitet, nachdem die Zahlung mit PayPal Payments Advanced Payment abgeschlossen ist. Zuvor wurden Käufer nicht auf diese Seite umgeleitet, obwohl die Zahlung erfolgreich verarbeitet und keine Fehler protokolliert wurden.
Leistung
- Es wurde ein Index zu
magento_giftcardaccount.code
hinzugefügt, um die Leistung zu verbessern.
- Die Ausführungsdauer der Modulliste wurde verbessert.
- Die Leistung des Cache für populäre Suchbegriffe wurde verbessert. Zuvor dauerte der Abschluss einer Suchabfrage umso länger, je größer die Tabelle
search_query
war. GitHub-27559
- Adobe Commerce verändert die Größe von Bildern standardmäßig während des Produktspeichers synchron. Merchants können die Größe von Bildern jetzt als asynchroner Hintergrundprozess ändern, indem kleinere Änderungen an einer
di.xml
-Datei vorgenommen werden.
- Die Leistung des Kategorieproduktindexers wurde in Multi-Store-Bereitstellungen verbessert. GitHub-33984
- Der neue Arbeitsspeichercache für
glob()
-Systemaufrufe verbessert die Leistung, indem die Anzahl derglob()
-Aufrufe reduziert wird. GitHub-34025
- Die Leistung des Neuindizierungsprozesses des asynchronen Bestell-Rasters wurde verbessert.
- Der Speicherverbrauch während des Produktexports wurde optimiert.
- Das Laden von Produktdetailseiten mit verwandten Produkten wurde optimiert. Die damit verbundenen Fragen zu Produktbedingungen wurden ebenfalls optimiert.
Preise
- Die Preissortierung funktioniert jetzt wie erwartet, wenn die Produktpreise nahe null oder gleich null sind und freigegebene Kataloge aktiviert sind. Zuvor wurden bei der Neuindizierung der Preise die Nullwertpreise ignoriert.
- Adobe Commerce gibt keinen Fehler mehr aus, wenn der Preisfilter auf der Seite Kategorie keinen zweiten Wert enthält. Zuvor hatte Adobe Commerce in der Protokolldatei eine Ausnahme ausgelöst.
ProductAlert
- Der neue
product_alert
-Verbraucher verbessert das Senden von Kundenwarnungen, indem er Warteschlangennachrichten erstellt, den Verbraucher ausführt und die Ausführungszeit verkürzt. Zuvor hatte Adobe Commerce beim Senden von mehr als 100.000 Produktwarnungen eine Speicherausnahme ausgelöst. Adobe Commerce brauchte auch mehr als 20 Stunden, um alle Warnungen zu senden.
Produktvideo
- Adobe Commerce aktiviert jetzt die Schaltfläche Speichern und füllt automatisch Felder aus, wenn Sie beim Hinzufügen eines Videos eine unvollständige URL eingeben (Admin Katalog > Produkte > Video hinzufügen). Zuvor war die Schaltfläche Speichern deaktiviert und die Felder wurden nicht ausgefüllt.
Return Merchandise Authorizations (RMA)
- Das Raster Rückkehrprodukt erstellen zeigt nun Steuern an, einschließlich der Preise nur für Produkte, die so konfiguriert sind, dass Steuern mit Preisen angezeigt werden. Zuvor hat Adobe Commerce die Konfigurationseinstellungen für das Flag
tax/calculation/price_includes_tax
nicht überprüft.
Überprüfungen
- In der Produktlistenansicht wird nun die richtige Startrang für Produkte angezeigt. GitHub-30196
- Bewertungen sind nun erwartungsgemäß sichtbar, wenn ein Käufer auf der Produktseite der Storefront auf Überprüfen klickt.
- Die Produkt-Stern-Bewertung ist nun über die Raster- und Listenansichten auf der Storefront-Produktlistenseite einheitlich. Zuvor konnte dasselbe Produkt unterschiedliche Bewertungen in den Anzeigemodi "Raster"und "Liste"haben.
Prämien
- Die Bonuspunkte Saldo und Rewards Points History zeigen jetzt den gleichen Saldo an. Abgelaufene Punkte werden nun korrekt abgezogen. Zuvor wurden die abgelaufenen Punkte nicht korrekt in den Saldo der belohnten Punkte übernommen.
- Abgelaufene Belohnungspunkte werden jetzt im Verlaufsraster der Storefront-Belohnungspunkte im Verlaufsraster als Abgelaufen markiert.
Vertrieb
- Die Leistung von Absatznetzaktualisierungen im asynchronen Modus für Tabellen mit großen Datensätzen nach der Aktualisierung auf MariaDB 10.2.34 wurde verbessert.
- Adobe Commerce entfernt jetzt die erwarteten HTML-Tags aus der Storefront Konto > Meine Bestellungen > Bestellung anzeigen . Zuvor wurden in Adobe Commerce HTML-Tags im Bereich für den Warenkorb für Kundenbestellungen angezeigt.
- Es wurde eine automatisierte Testabdeckung hinzugefügt, um zu überprüfen, ob ein Index für
sales_shipment_grid.order_id
vorhanden ist.
POST V1/orders
-Aufrufe aktualisieren jetzt Erweiterungsattribute ohne Fehler. Zuvor trat ein SQL-Syntaxfehler auf.
Suche search-heading
- Layerte Navigationsoptionen für Preisbereiche funktionieren jetzt erwartungsgemäß mit benutzerdefinierten Preisattributen. Adobe Commerce verwendet beim Filtern benutzerdefinierter Preisattribute die Konfiguration des Preisnavigationsschritts. Zuvor verwendete Adobe Commerce die manuelle Schrittkonfiguration.
- Die Storefront zeigt nun alle Unterkategorien der aktuellen Kategorie im Navigationsbereich mit Ebenen an, unabhängig von der Anzahl der im Katalog verfügbaren Kategorien.
- Elasticsearch-Katalogsuchvorgänge sind jetzt diakritisch unempfindlich. Zuvor führte die Suche nach Begriffen ohne Akzent zu unterschiedlichen Ergebnissen als die Suche nach demselben Begriff mit Akzent.
- Die Suchgewichtung wird jetzt korrekt für SKU-Attribute festgelegt, die Sonderzeichen enthalten.
category_name
wurde zu den systemreservierten Produktattribut-Codes hinzugefügt. Adobe Commerce zeigt jetzt einen Fehler an, wenn ein Benutzer versucht, ein Produktattribut mit dem Attributcodecategory_name
zu erstellen. Zuvor wurden Produkte nicht in der erwarteten Kategorie aufgeführt und ein Elasticsearch-Fehler wurde protokolliert.
- Beliebte Suchbegriffe werden jetzt nach jeder GraphQL-Suchabfrage aktualisiert.
- Adobe Commerce fügt dem Preisindex-Mapping des Elasticsearchs jetzt die korrekten Preisfelder hinzu. Zuvor wurden dem Index falsche Preisfelder mit der Store-ID anstelle der Website-ID hinzugefügt.
Versand
- Die Versand-E-Mail enthält jetzt nur die Trackingnummer für die aktuelle Sendung. Zuvor, als eine Bestellung mehrere Sendungen umfasste, enthielt die E-Mail jedes Versands die Trackingnummern aller Sendungen im Zusammenhang mit der Bestellung.
- Adobe Commerce aktualisiert den Mini-Warenkorb jetzt erfolgreich, wenn ein Käufer ein Produkt aus seinem Warenkorb löscht, während er sich im Versandmodus befindet, und dann zu einer einzigen Lieferadresse wechselt. Zuvor wurden die Produktpreise nicht wie erwartet aktualisiert.
- Der Import von Tabellenraten funktioniert jetzt bei Verwendung des S3-Speicheradapters wie erwartet. Zuvor wurde in Adobe Commerce folgender Fehler angezeigt:
File "https://[bucket].s3.eu-central-1.amazonaws.com/[prefix]/tmp/phpLjGmHf" not found
. GitHub-33072
- Sie können jetzt E-Mails zum Versand-Update wie erwartet unter Geschäfte > Konfiguration > Verkauf > E-Mails zum Verkauf deaktivieren. GitHub-33165
- Adobe Commerce zeigt jetzt die Gesamtkosten für den kostenlosen Versand (0) auf der Admin- und Storefront-Rechnungsseite an. Zuvor wurde bei einer Bestellung von null an die Versandmenge von Adobe Commerce die Versandsumme nicht in der Gesamtsumme der Rechnungsseite angezeigt.
- Die Preisanfragen an Online-Reedereien wurden von mehreren Anträgen auf einen reduziert. Paketversicherungen und Bearbeitungskosten pro Artikel/Paket werden jetzt korrekt berechnet. Zuvor zeigte Adobe Commerce falsche Versandraten für FedEx-Versandmethoden an.
- Adobe Commerce zeigt jetzt UPS-Preise an, wenn Versandbeschriftungen für den Versand von Puerto Rico erstellt werden. Zuvor wurden diese UPS-Tarife in Adobe Commerce nicht angezeigt.
- Nach dem Entfernen aus dem Eingabefeld wird nun die Lieferadresse vollständig gelöscht. Zuvor wurden im Textfeld ein oder mehrere Zeichen beibehalten, nachdem Sie die Adresse gelöscht haben.
Staging
- Geplante Produktaktualisierungsbilder und -videos werden jetzt korrekt gespeichert. Bisher wurden Videos, URLs, Titel und Beschreibungen nach der Erstellung einer neuen geplanten Aktualisierung entfernt.
- Adobe Commerce zeigt jetzt das Attribut "Mindestpreis"im Formular "Neues Update planen"für die Store-Ansichten an, für die das Attribut aktiviert ist.
- Adobe Commerce zeigt jetzt im Formular Geplantes Update nur eine Registerkarte Bilder an. Zuvor hat Adobe Commerce diese Registerkarte dupliziert.
- Der Status des Produktbestands wird jetzt korrekt in der Vorschau der Zeitplanaktualisierung angezeigt. Zuvor wurde der Produktstatus als nicht vorrätig angezeigt, wenn ein zuvor deaktiviertes Produkt während der Erstellung der Zeitplanaktualisierung aktiviert wurde.
Store
- Die Funktion Als Kunde anmelden funktioniert jetzt wie erwartet in Bereitstellungen, die mehrere Stores auf verschiedenen URLs enthalten. Zuvor hat Adobe Commerce den richtigen Store nicht geladen, selbst wenn auf die richtige Store-Domäne zugegriffen wurde.
Site-weites Analyse-Tool
- Händler können nun wie erwartet auf das Site-weite Analyse-Tool zugreifen. Zuvor verhinderten beschädigte Schlüsselpaare, dass einige Händler auf das Tool zugreifen konnten.
Steuern
- Adobe Commerce berechnet nun die Zwischensumme des Mini-Warenkorbs korrekt, wenn ein Kunde einen Artikel löscht, nachdem er den Versand an mehrere Adressen ausgewählt hat.
- Adobe Commerce zeigt nun auf allen Checkout-Seiten denselben Steuersatz an, wenn der Warenkorb nur virtuelle Produkte enthält.
- Die Statuspreise für konfigurierbare Produkte zeigen nun genaue einbezogene und ausgeschlossene Steuerwerte auf der Storefront an. Zuvor wurden für eingeschlossene und ausgeschlossene Steuern dieselben Werte angezeigt. GitHub-33673
Test
- WebAPI-Tests sind jetzt mit PHP 8.1 kompatibel. GitHub-34653
- Integrationstests sind jetzt mit PHP 8.1 kompatibel. GitHub-34567, GitHub-34569
- Händler können jetzt das Kundenerlebnis des Landes testen, in dem sich der Käufer befindet, und nicht den Standort des Händlers.
- Der Speicherverbrauch für Integrationstests wurde reduziert, was die Testleistung verbessert und die für den Testabschluss erforderliche Zeit verkürzt.
- Es wurde ein Test zur Überprüfung des benutzerdefinierten Datumsattributformats für Storefront und Admin hinzugefügt.
- Fehlerkorrektur - Fehler mit
StorefrontPOWorkflowVerifyApprovalFlowTabTest
wurden korrigiert. GitHub-34378
- Funktionstests wurden für die Kompatibilität mit PHP 8.x stabilisiert. GitHub-34327, GitHub-34188
- Funktionsprobleme in WebAPI-Tests behoben. GitHub-34196
- Fehlerkorrektur - statische Tests mit falscher positiver Wirkung werden nun korrekt ausgeführt. GitHub-34056
- Die Testabdeckung wurde für
call_user_func_array
aktualisiert. GitHub-34301
- Der
Magento\GraphQl\CatalogGraphQl\ProductSearchTest
-Test gibt diesen Fehler nicht mehr aus, wenn er mit dem AWS-Elasticsearch ausgeführt wird:Magento\GraphQl\CatalogGraphQl\ProductSearchTest::testSearchSuggestions Failed asserting that an array is not empty. /var/www/html/dev/tests/api-functional/testsuite/Magento/GraphQl/CatalogGraphQl/ProductSearchTest.php:94 /var/www/html/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/GraphQlAbstract.php:257
.
-
Es wurden zahlreiche nicht kritische Komponententestwarnungen behoben, indem alle nachgeahmten Variablen umbenannt wurden, um das Suffix
Mock
einzuschließen, und Verweise auf eine veraltete Object Manager-Klasse entfernt wurden. GitHub-33695 -
Der
Magento\Framework\MessageQueue\TopologyTest
-Test ist jetzt mit dem AWS MQ für den RabbitMQ-Dienst kompatibel. Zuvor schlug dieser Test mit der folgenden Meldung fehl:Invalid exchange configuration: magento-topic-based-exchange1 Failed asserting that two arrays are equal
.
- Unit-Tests sind jetzt mit PHP 8.1 kompatibel. GitHub-34441
Unit-Tests
Die folgenden Komponententests wurden umgestaltet und verwenden nun PHPUnit
anstelle von AspectMock
:
AllureHelperTest
GitHub-33294
ObjectHandlerUtil
GitHub-33584
MockModuleResolverBuilder
GitHub-33583
MagentoTestCase
GitHub-33582
ModuleResolverTest
GitHub-33308
ParallelGroupSorterTest
GitHub-33306
SuiteGeneratorTest
GitHub-33299
OperationDataArrayResolverTest
GitHub-33296
Design
- Benachrichtigungsinhalte werden jetzt korrekt angezeigt, wenn in Adobe Commerce ein Unterpfad in der Basis-URL konfiguriert ist.
- Zur Vorlage der Storefront-Seite wurde ein Element
aria-label
hinzugefügt, das angibt, zu welcher Seite der Käufer beim Klicken auf einen Link navigiert. Zuvor wurde derselbe Linktext für Links zu verschiedenen Seiten verwendet. GitHub-33075
- Adobe Commerce zeigt keine Fehlermeldung mehr an, wenn die Startseite eines Stores mit bereits vorhandenem benutzerdefiniertem Design geladen wird. Zuvor hat Adobe Commerce folgende Meldung angezeigt:
The store will not work correctly in the case when cookies are disabled
.
Übersetzungen und Gebietsschemata
- Der Validator
UserExpiration
schlägt nicht mehr mit den Gebietsschemasde_DE
unduk_UA
fehl. Zuvor gab Adobe Commerce einen Fehler aus, wenn ein Administrator beim Erstellen eines neuen Benutzers aus dem Admin ein Ablaufdatum mit den Gebietsschematade_DE
oderuk_UA
festzulegen versuchte. GitHub-32497
- Die schweizerischen Regionennamen werden jetzt in den Adressformularen zur Erstellung oder Bearbeitung einheitlich in englischer Sprache angezeigt. GitHub-32602
- Die
zip_codes.xml
-Muster für Guernsey wurden aktualisiert, um GY10-Postcodes für die Insel Sark zu unterstützen. GitHub-33144
- Weißrussland-Regionen wurden zur Tabelle
directory_country_region
hinzugefügt. GitHub-33924
- Anzeigeanomalien mit Storefronts, die die Philippinen-Gebietsschemas (Philippinen) ausführen, wurden behoben. GitHub-33996
- Sie können jetzt erfolgreich ein Geburtsdatum für einen Kunden eingeben, wenn Sie ein neues Konto in Geschäften erstellen, das auf ein portugiesisches Gebietsschema (Portugal) festgelegt ist. Zuvor gab Adobe Commerce einen Fehler aus, als Sie versuchten, ein Konto zu erstellen. GitHub-34130
- Die Produktdetailseite wird jetzt erfolgreich mit dem Gebietsschema Arabisch (Saudi-Arabien) angezeigt. Zuvor hat dieses Gebietsschema die Produktdetailseite durchbrochen.
Benutzeroberfläche
- Fehlerkorrektur - Bei MFTF-Tests mit
maps.googleapis.com
werden Fehler korrigiert.
- Adobe Commerce schneidet jetzt die geschützten Leerzeichen aus dem E-Mail-Eingabefeld Kontakt mit uns ab. Zuvor wurde das Formular gesendet, ohne die geschützten Leerzeichen aus der E-Mail-Eingabe zu entfernen (falls vorhanden), was zu Fehlern in den Protokolldateien führte. Das Feld Antwort-an fehlte auch in der generierten Kontakt-E-Mail-Nachricht an den Store-Administrator.
- Adobe Commerce zeigt nun verbundene Produkte, Up-Sell-Produkte und Crosssell-Produkte entsprechend ihrer Position in der Admin an.
.action-close
-Schaltflächen funktionieren jetzt wie erwartet, wennMultiselect
in einem Modal verwendet wird. Zuvor funktionierte die Schaltflächeaction-close
nicht, da sie das CSS der Schaltfläche.action-close
des Modals übernommen hatte. GitHub-27240
- Das Rich-Snippet Angebote ist jetzt im Hauptpreisfeld in der Produktansicht vorhanden. Zuvor fehlte dieses Snippet in diesem Feld im Produktblock in der Produktansicht, was dazu führte, dass Google-Suchergebnisse falsche Preise anzeigten. GitHub-34063
- Probleme mit der modalen Höhe auf Geräten mit iOS wurden behoben. GitHub-34467
- Dropdown-Menüs für Aktionen sind jetzt im gesamten Storefront korrekt positioniert. GitHub-31379
- Fehler bei der Barrierefreiheit bei der Navigation auf den Warenkorb- und Checkout-Seiten wurden behoben. GitHub-34483
- Sprachausgaben können jetzt alle relevanten Formularelemente auf Produktseiten lesen.
- Die Sortierungsreihenfolge des Storefront-Katalog-Widgets (Katalog > Kategorie > Produkte) stimmt nun mit der im Admin konfigurierten Reihenfolge überein. GitHub-27126
- Der Regionsselektor funktioniert jetzt wie erwartet auf der Seite Konto erstellen . GitHub-30099
- Das Admin-Kundenraster zeigt nun alle Kundendaten, einschließlich neu hinzugefügter benutzerdefinierter
date
-Attribute, erwartungsgemäß an. Zuvor hatte Adobe Commerce einen Fehler ausgegeben und das Kundenraster "Admin"nicht korrekt angezeigt, wenn das Attributdate
als Spalte festgelegt wurde.
- Die Eingabebeschriftungen auf der Detailseite Katalog > Produkt wurden geändert, um den Zweck der Eingabe genau widerzuspiegeln. Felder, für die keine Benutzereingabe erforderlich ist, zeigen keine Beschriftungen mehr mit einem Sternchen an.
- Der Zugriff auf die Symbolleiste des Rich-Text-Editors erfolgt jetzt über die Tabulatortaste.
- Der barrierefreie Name des Steuerelements enthält jetzt den Text seiner sichtbaren Bezeichnung für die Anzahl der Elemente pro Seite-Dropdown-Liste.
- Die Tabellensteuerelemente auf der Detailseite Katalog > Produkt verfügen jetzt über sichtbare Beschriftungen und einen zugänglichen Namen, wenn die Tabelle ausgeblendet wird.
- Schaltflächen in der gesamten Storefront haben jetzt eindeutige, beschreibende, zugängliche Namen. Zuvor hatten Schaltflächen zum Teilen mit einer Textschaltfläche und einer angrenzenden Pfeilschaltfläche nach unten denselben barrierefreien Namen.
- Die Ansichtsoption Heute wurde zum Dashboard "Admin Bestellungen"und "Beträge"hinzugefügt, um eine Zusammenfassung der Verkäufe und Bestellungen über den gesamten Tag hinweg zu liefern. GitHub-34008
- Der aktive Status (Klick) der Mehrfachauswahl Schließen -Schaltfläche funktioniert jetzt konsistent. GitHub-34338
- Adobe Commerce zeigt diese Meldung nach der Aktualisierung nicht mehr an, wenn der Cookie-Einschränkungsmodus deaktiviert ist:
The store will not work correctly in the case when cookies are disabled
. GitHub-33811
- Produktbilder im Vollbildmodus werden jetzt korrekt auf Designs mit vertikaler Navigationsrichtung für Miniaturansichten auf Mobilgeräten angezeigt. Zuvor wurden Produktbilder auf Designs mit vertikaler Navigationsrichtung für Miniaturansichten auf Mobilgeräten im Vollbildmodus falsch skaliert oder unsichtbar.
- Fehlermeldungen auf der Produktdetailseite werden nicht mehr schnell ausgeblendet, wenn die Konfigurationseinstellung Widget-Produkte mit Backend-Speicher synchronisieren aktiviert ist.
- Die Validierung auf negative Werte wurde dem Feld Zu antwortende Menge im Formular Neue Rückgabe erstellen hinzugefügt.
- Adobe Commerce zeigt keine doppelten Adressen mehr an, wenn ein Käufer in einer Bereitstellung, in der die Konfigurationseinstellung Adresssuche aktiviert ist, auf der Seite "Überprüfung und Zahlungen"auf Adresse ändern klickt.
- Die Schaltfläche Produkte hinzufügen ist jetzt für Administratoren mit eingeschränkten Berechtigungen erwartungsgemäß aktiviert, während sie im Bereich "Store-Ansicht"auf der Seite "Admin-Kategorie"arbeiten.
- View Breakpoints sind jetzt in Adobe Commerce konsistent.
- Adobe Commerce zeigt nun auf der Admin-Kundenseite korrekt benutzerdefinierte Kundendatumsattribute mit benutzerdefinierten Gebietsschemas an.
- Mit dem Seitenaufbau hinzugefügte Bilder werden nicht mehr auf der Storefront dupliziert, wenn sie mit einer Browserfensterbreite von 768 px angezeigt werden. Bisher hat Adobe Commerce mit dieser Browserfensterbreite Bilder auf der Storefront dupliziert, indem sowohl die mobile als auch die Desktop-Version der Bilder angezeigt wurden.
URL-Neuschreibungen
- URL-Neuschreibungen werden bei der Erstellung einer neuen Store-Ansicht beim Ausführen von
bin/magento setup:upgrade
nicht mehr für alle Store-Ansichten neu generiert. GitHub-32954
Visual Merchandiser
- Die automatische Sortieroption Visual Merchandiser Von Lager zu Ende verschieben funktioniert jetzt wie erwartet für konfigurierbare Produkte, wenn alle einfachen Produkte nicht mehr vorrätig sind.
- Die Regel Visual Merchandiser wird nicht mehr gespeichert, wenn keine Bedingungen hinzugefügt wurden.
Web-API-Framework
- Web-API-Anfragen für selbst autorisierte Kundenressourcen verursachen keine Autorisierungsfehler mehr, wenn der beständige Warenkorb aktiviert ist.
- Sie können jetzt Objekte mit den untergeordneten Klassen von
\Magento\Framework\Api\AbstractSimpleObjectBuilder
in PHP 7.3 erstellen. Zuvor hattepreg_match
diese Warnmeldung ausgegeben, wenn Adobe Commerce auf Redhat mit PHP 7.3 gehostet wurde:Warning: preg_match(): Compilation failed: unrecognized character follows...
.
- Die von der
PUT /V1/guest-carts/:cartId/collect-totals
-Anfrage abgerufenen Summen werden jetzt mit dem korrektenshippingMethod
aktualisiert. GitHub-18508
- Durch Hinzufügen eines neuen Deserialisierungsprogramms zur REST-API werden andere Deserialisierer nicht mehr entfernt. Zuvor akzeptierte die REST-API einen neuen Inhaltstyp, doch funktionierten CORE-definierte Inhaltstypen für APIs nicht mehr und gaben einen 400-Fehler zurück. GitHub-26433
- Sie können jetzt eine Überschreibung für einen Parameter entfernen, der in einer
webapi.xml
Datei definiert ist. GitHub-33843
- Adobe Commerce generiert jetzt eine "
customertoken
"-Anfrage von GraphQL- oder REST-API-Anfragen nach mehreren aufeinander folgenden fehlgeschlagenen Anmeldeversuchen. Zuvor hat Adobe Commerce nicht überprüft, ob der Wert vonlock_expires_at
inoauth_token_request_log
größer als das aktuelle Datum und die aktuelle Uhrzeit war, und immer die Anzahl fehlgeschlagener Versuche zurückgegeben, was verhindert hat, dass sich der Kunde jemals anmeldet. GitHub-34067
- Das Hinzufügen einer maskierten Anführungszeichen-ID zu
QuoteRepository::getList
führt nicht mehr zu einer Endlosschleife. Bisher löste die Verwendung des Zahlungsverarbeiters, der sich bei der Auftragsaktualisierung auf die REST-API stützte, dieses Verhalten aus. GitHub-33675
- Der
/rest/all/V1/categories/<above_created_category_id>
Beim PUT-Aufruf werden nun die vonavailable_sort_by
angegebenen Werte berücksichtigt. Zuvor wurde die Dropdown-Liste Verfügbare Produktliste Sortieren nach mit allen möglichen Optionen auf der Seite Kategorie ausgewählt und das Kontrollkästchen Alle verwenden aktiviert. GitHub-32596
- Die Leistung von REST-API-Anfragen zum Erstellen von Kunden-Token wurde verbessert.
- Fehlerkorrektur - kein Fehler mehr, wenn Speichercode zu URLs hinzufügen auf Ja gesetzt ist und ein REST-Aufruf keinen Speichercode enthält. Obwohl die Payload gültig war, gab der Aufruf den folgenden Fehler zurück:
Fatal error: Allowed memory size of **​**​**​**​**​ bytes exhausted (tried to allocate ​**​** bytes) in vendor/magento/module-store/Model/StoreRepository.php on line 75
.
- Teilrechnungen für dieselbe Bestellung können jetzt gleichzeitig mit der REST-API erstellt werden.
Wunschliste
- Adobe Commerce rendert keine Wunschliste mehr in der Kategorieseitenleiste, wenn die Option In Sidebar anzeigen Wunschliste deaktiviert ist. Zuvor hat Adobe Commerce diese Option ignoriert.
WYSIWYG
- PageBuilder rendert jetzt benutzerdefinierte Widgets mit dem WYSIWYG-Editor korrekt.
Bekannte Probleme
Problem: Bei der Aktualisierung von Adobe Commerce 2.4.4 auf Adobe Commerce 2.4.4-p1 werden möglicherweise Hinweise zum Upgrade der Paketversion angezeigt. Diese Nachrichten können ignoriert werden. Die Diskrepanz in Paketversionen resultiert aus Anomalien bei der Package-Erstellung. Die Produktfunktionalität wurde nicht beeinflusst. Im Knowledge Base-Artikel Pakete, die nach dem Upgrade von 2.4.4 auf 2.4.4-p1 herabgestuft wurden, finden Sie eine Diskussion der betroffenen Szenarien und Problemumgehungen.
Problem: Die Händler können keine Teilerstattungen für Bestellungen einreichen, die mit Apple Pay über Braintree bezahlt wurden. Wenn ein Händler versucht, ein Kreditmemo für eine teilweise Rückerstattung aus der Bestellrechnung zu erstellen, kann das Feld Zu erstattende Menge nicht bearbeitet werden. Problemumgehung: Wenden Sie den Patch braintree-disabled-partial-capture-for-applepay-googlepay.patch
an. Siehe den Artikel Adobe Commerce 2.4.4: Teilrechnungen können nicht erstellt werden Knowledge Base .
Problem: Käufer können ihrem Warenkorb kein Produkt hinzufügen, wenn unter Admin Store > Konfiguration > Allgemein > Länderoptionen > Länder zulassen keine Optionen ausgewählt sind. Adobe Commerce zeigt stattdessen den folgenden Konsolenfehler an: Failed to load resource: the server responded with a status of 400 (Bad Request)
.
Problem: Die Beschreibung von Dotdigital unter Partner und Erweiterungen suchen > Magento Marketplace ist veraltet. Hier finden Sie eine aktualisierte Beschreibung:
Dotdigital ist eine Kundeninteraktionsplattform, mit der digitale Marketing-Experten und Entwickler Kommunikation über die Journey bereitstellen können. Wir nutzen die Leistungsfähigkeit von Kundendaten, ermöglichen Interaktion, Konversion und Treue für Marken bei deren Wachstum und Skalierung. Kunden lieben unsere benutzerfreundliche Plattform, die Erstanbieterdaten systemübergreifend verbindet, leistungsstarke Einblicke bietet und prädiktive kanalübergreifende Nachrichten automatisiert.
Die über 350 Mitarbeiter von Dotdigital sind weltweit und branchenübergreifend für Mid- und Enterprise-Unternehmen tätig. Wir streben ein verantwortungsvolles Marketing an und engagieren uns für Nachhaltigkeit, Privatsphäre und Sicherheit. Dotdigital ist stolz darauf, die weltweit erste CO2-neutrale Marketing-Automatisierungsplattform zu sein, zertifiziert für ISO 14001, ISO 27701 und ISO 27001.
Informationen zu Kauf und Download finden Sie unter Dotdigital — Marketing Automation .
Gemeinschaftsbeiträge
Wir sind der weiteren Magento Open Source-Community dankbar und möchten ihre Beiträge zu dieser Version würdigen.
Das Community-Engineering-Team Magento Contributors führt nach Monat, Quartal und Jahr eine Liste der beitragenden Personen und Partner. Auf dieser Mitarbeiter-Seite können Sie Links zu ihren zusammengeführten PRs auf GitHub folgen.
Partnerbeiträge
In der folgenden Tabelle sind die Beiträge von Partnern aufgeführt. In dieser Tabelle sind der Partner aufgeführt, der die Pull-Anforderung beigetragen hat, die Nummer der externen Pull-Anforderung und die GitHub-Problemnummer, die dieser zugeordnet ist (falls verfügbar).
Individuelle beitragende Faktoren
In der folgenden Tabelle sind die Beiträge unserer Community-Mitglieder aufgeführt. In dieser Tabelle sind das Community-Mitglied, das die Pull-Anforderung beigetragen hat, die Nummer der externen Pull-Anforderung und die damit verbundene GitHub-Problemnummer aufgeführt (sofern verfügbar).
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.4 mit Composer installieren.
Migrationstool-Kits
Mit dem Datenmigrationswerkzeug können Sie vorhandene Magento 1.x-Speicherdaten auf Magento 2.x übertragen. Diese Befehlszeilenschnittstelle umfasst Funktionen für Überprüfung, Fortschrittsverfolgung, Protokollierung und Tests. Installationsanweisungen finden Sie unter Installieren des Datenmigrationswerkzeugs. Sie sollten das Datenmigrations-Repository erkunden oder dazu beitragen.
Mit dem Code Migration Toolkit können Sie vorhandene Magento 1.x Store-Erweiterungen und -Anpassungen auf Magento 2.x übertragen. Die Befehlszeilenschnittstelle enthält Skripte zum Konvertieren von Magento 1.x-Modulen und -Layouts.