Zusätzliche Sicherheitsverbesserungen

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

  • Die reCAPTCHA-Unterstützung wurde den Formularen „Wish List Sharing“, „Create New Customer Account“ und „Gift Card“ hinzugefügt.

  • ACL-Ressourcen wurden zum Inventar hinzugefügt.

  • Die Sicherheit der Inventarvorlage wurde verbessert.

  • Der MaliciousCode wurde aktualisiert, um die HtmlPurifier-Bibliothek zu verwenden.

Plattformverbesserungen

Magento Open Source 2.4.5 unterstützt jetzt

  • Composer 2.2

  • TinyMCE (5.10.2). Frühere Versionen von TinyMCE (v5.9.2 oder früher) erlaubten die beliebige Ausführung von JavaScript, wenn eine speziell erstellte URL oder ein Bild mit einer speziell erstellten URL aktualisiert wurde.

  • jQueryUI (1.13.1)-

  • PHPStan (^1.5.7 mit Einschränkung) GitHub-35315

Das DHL-Integrationsschema wurde von v6.0 auf v6.2 aktualisiert. Dieses Upgrade führt nicht zu einer Änderung des Produktverhaltens.

Veraltete JavaScript-Bibliotheken wurden auf die neuesten Versionen aktualisiert und veraltete Abhängigkeiten wurden entfernt. Diese Änderungen sind abwärtskompatibel.

Aktualisierungen der Abhängigkeit von Composer

Die folgenden Composer-Abhängigkeiten wurden mit Einschränkungen auf die neuesten Versionen aktualisiert:

  • colinmollenhour/credis (1.13.0)
  • guzzlehttp/guzzle (^7.4.2)
  • laminas/laminas-captcha (aktualisiert mit einer Einschränkung ^2.12)
  • laminas/laminas-db (^2.15.0)
  • laminas/laminas-di (^3.7.0)
  • laminas/laminas-escaper (~2.10.0)
  • laminas/laminas-eventmanager (^3.5.0)
  • laminas/laminas-feed (^2.17.0)
  • laminas/laminas-mail (^2.16.0)
  • laminas/laminas-mvc (^3.3.3)
  • laminas/laminas-server (^2.11.1)
  • laminas/laminas-servicemanager (^3.11.0)
  • laminas/laminas-validator (^2.17.0)
  • league/fly (2.4.3)
  • monolog/monolog (^2.5)
  • phpmd/phpmd (^2.12.0)
  • phpstan/phpstan (^1.5.7)
  • phpunit/phpunit (~9.5.20)
  • php-cs-fixer (^3.4.0)
  • webonyx/graphql-php (14.11.6)

Die laminas/laminas-session-, laminas/laminas-text- und laminas/laminas-view-Abhängigkeiten wurden entfernt.

Andere Upgrades und Ersetzungen

  • Das DHL-Integrationsschema wurde von v6.0 auf v6.2 aktualisiert.

  • Die Standard-Gateway-URL für den USPS-Versand wurde aktualisiert, um https anstelle von http zu verwenden.

  • Die Froogaloop-Bibliothek wurde durch die Vimeo-Player.js-Bibliothek (2.16.4) ersetzt.

  • Die grunt-eslint-Bibliothek (NPM) wurde auf die neueste Version aktualisiert.

  • Die jQuery Storage Bibliotheken wurden durch julien-maurel/js-storage ersetzt.

  • Die php-cs-fixer und phpcs statischen Codeanalysetools sind jetzt mit PHP 8.x kompatibel.

  • glob.js (aktualisiert mit Einschränkung auf ~7.2.0)

  • serve-static.js (aktualisiert mit Einschränkung ~1.14.2)

  • underscore.js (NPM) (1.14.2)

  • moment-timezone-with-data.js (0,5,34)

  • Die Bibliothek jquery/jquery-cookie wurde durch js-cookie/js-cookie ersetzt.

  • Die jarallax.js- und jaralax-video.js-Bibliotheken wurden aktualisiert, um die neueste Version der Vimeo REST-API zu verwenden.

Updates zur Barrierefreiheit

Der Schwerpunkt dieser Version lag auf der Erstellung eines Storefront-Erlebnisses auf Venia (PWA), das besser wahrnehmbar, bedienbar, verständlich und stabil ist. Zu diesen Verbesserungen gehören:

  • Informationen zur Suchergebnisübersicht werden jetzt für Benutzende von Sprachausgaben ausgegeben
  • Die Sprachausgabe wird jetzt informiert, wenn eine neue Seitenansicht geladen wird
  • Kontrast und Tastaturzugriff wurden verbessert

Google Analytics

Google hat die Tracking- und Integrationsmechanismen von AdWords und Analytics in Web-Anwendungen durch die Integration mit GTag aktualisiert. Diese Integration von Google-Funktionen in Website-Seiten erweitert die Möglichkeiten, Inhalte über Google Services zu verfolgen und zu verwalten. Adobe Commerce verfügt über eine Reihe integrierter Module, einschließlich Google AdWords, Analytics, Optimizer und TagManager, die die frühere API für die Integration mit Google-Services nutzen. In dieser Version haben wir diese Integration mithilfe des GTag-Ansatzes erneut implementiert​ Siehe Migration von analytics.js zu gtag.js (Universal Analytics).

GraphQL

Zu den Leistungsverbesserungen von GraphQL gehören:

  • Entwickelnde und Admins erfahren eine schnellere Neuerstellung des einheitlichen Storefront-GraphQL-Schemas bei der Bereitstellung oder beim Ändern von Attributen in der Produktion. Außerdem erleben Kundinnen und Kunden deutlich schnellere Seitenladegeschwindigkeiten, wenn das GraphQL-Schema aus irgendeinem Grund neu erstellt werden muss.

  • Es wurde die Möglichkeit hinzugefügt, das Ablaufdatum und die Ablaufzeit des Autorisierungs-Tokens mithilfe von JSON Web Tokens (JWT) in der GraphQL-API zu nutzen.

  • Mit dem Befehl bin/magento config:set graphql/session/disable 1 können Händler die Erstellung von Sitzungs-Cookies für alle GraphQL-Vorgänge vollständig deaktivieren. Standardmäßig erstellt die Anwendung Open Source diese Cookies und verwendet sie für die Autorisierung, was sich auf die Leistung auswirkt. Künftig empfehlen wir die Verwendung von Token als einzige Autorisierungsform für GraphQL-Anfragen. Es wird nicht empfohlen, Sitzungs-Cookies allein oder in Verbindung mit Autorisierungs-Token zu verwenden. Siehe GraphQL-

  • Sitzungscookies werden jetzt in GraphQL-Vorgängen nur noch dann mit Klassenproxies gestartet, wenn sie benötigt werden.

  • Die Sitzungsnutzung wurde aus http Kopfzeilenprozessoren in GraphQL entfernt, z. B. Geschäft, Kunde oder Währung.

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

Inventar

Die Sicherheit der Inventarvorlage wurde verbessert.

Page Builder

Page Builder v.1.7.2 ist mit Magento Open Source 2.4.5 kompatibel.

Das Spalten-Layout von Page Builder enthält die folgenden Verbesserungen:

  • Spalten werden jetzt verfügbar gemacht, sodass Benutzende Spalteneinstellungen in der Storefront steuern können.

  • Die Spaltenanpassung unterstützt jetzt den durch Benutzeraktionen ausgelösten Wrapper.

Zahlungen

Apple Pay ist jetzt für alle Händler verfügbar, die Bereitstellungen mit aktivierten Zahlungs-Services ausführen. Bei dieser Zahlungsmethode müssen Käufer keine Kredit- oder Debitkartendetails eingeben. Apple Pay ist auf der Seite mit den Produktdetails, im Mini-Warenkorb, im Warenkorb und im Checkout-Workflow verfügbar. Händler können diese Funktion einschalten.

PayPal

  • Händler in Spanien und Italien können jetzt Kunden PayPal Pay Later anbieten.

  • Die Vorschauen der Schaltflächen PayPal, Credit und Pay Later sind jetzt in der Admin für die Checkout-, Minicart-, Warenkorb- und Produktseiten verfügbar. Die Vorschau zeigt, wie diese Schaltflächen aussehen werden, wenn sie in der Storefront aktiviert und gerendert werden.

Braintree

  • Braintree hat die Integration von KOUNT zum Schutz vor Betrug eingestellt. Er wurde aus der Magento Open Source-Codebasis entfernt.

  • Die Immer anfragen Option 3DS wurde der Administratorin bzw. dem Administrator hinzugefügt.

PWA Studio

PWA Studio v.12.5.x ist kompatibel mit Magento Open Source 2.4.5.

Zu den neuen Funktionen dieser Version gehören:

  • Daten zum Kundenverhalten werden in der PWA Studio-Storefront für Web-Analyse-Services erfasst. Händler können diese Veranstaltungen jetzt nach Bedarf abonnieren und erweitern.

  • Händler können jetzt über den Admin (Google Tag Manager) einen Service auswählen, der bereitgestellt werden soll.

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 kompatiblen Magento Open Source-Kernversionen.

Behobene Probleme

Wir haben Hunderte von Problemen im Kern-Code von Magento Open Source 2.4.5 behoben.

Installation, Upgrade, Bereitstellung

  • Sie können jetzt einen Daten-Patch umbenennen und den alten Klassennamen als Alias in der patch_list Datenbanktabelle hinzufügen. Magento Open Source überprüft jetzt, ob bereits Datenpatch-Aliase in der Datenbank vorhanden sind, bevor der Patch angewendet wird. Zuvor hatte ApplicationOpen Source einen Fehler unter diesen Bedingungen ausgelöst.
  • Magento Open Source löst keine Ausnahme mehr aus, wenn Sie versuchen, die Admin-URL von der Admin-Instanz in eine benutzerdefinierte URL zu ändern. Nachdem Sie die Admin-URL geändert haben, konnten Sie sich bisher nicht anmelden. GitHub-35416
  • Händler können jetzt erfolgreich von einer Magento Open Source 2.4.2-Bereitstellung mit Klarna auf Magento Open Source 2.4.3 aktualisieren. GitHub-33760
  • Der Pfad zu Magento Open Source Analytics ist nicht mehr hartcodiert. Zuvor führte dieser hart codierte Pfad zu Konflikten, wenn mehrere Magento Open Source-Instanzen auf einem Server installiert waren. GitHub-29373

Barrierefreiheit

  • Die Einkaufstasche bietet nun eine programmatische oder textliche Anzeige des Zustands. Benutzende von Bildschirmlesehilfen werden darüber informiert, dass durch Klicken auf diese Schaltfläche andere Inhalte erweitert oder die zugehörigen Inhalte erweitert bzw. reduziert werden. Zuvor bot diese Schaltfläche keine programmgesteuerte oder textuelle Anzeige des Zustands.
  • Die Textelemente oder Textbilder der Kreditkartenoption „Payment Information“ erfüllen jetzt das von WCAG 2.0 geforderte Mindestfarbkontrastverhältnis von 4,5:1 für Standardtext von 18 pt (24 px) oder 14 pt (19 px), wenn fett gedruckt. Zuvor entsprachen sie nicht dem erwarteten Kontrastverhältnis.
  • Adressbuch > Kommunikation > Kontoinformationen Benutzerdefinierte Fokusindikatoren bieten jetzt ein Kontrastverhältnis von mindestens 3:1 zur Hintergrundfarbe.
  • Filter und Sort-Schaltflächentext erfüllen jetzt das von WCAG 2.0 geforderte Mindestfarbkontrastverhältnis von 4,5:1 für Standardtext von 18 pt (24 Pixel) oder 14 pt (19 Pixel), wenn er fett gedruckt ist. Zuvor entsprachen Navigationsschaltflächen für Karussells nicht diesen minimalen Kontrastanforderungen.
  • Die Sprachausgabe gibt das Wort „Venia“ nur einmal aus, wenn zu den Kopf- und Fußzeilen von Venia navigiert wird. Zuvor wurde dasselbe Wort zweimal hintereinander angekündigt.
  • Schaltflächen in Trigger-Dropdown-Menüs bieten Sprachausgaben Informationen, die ihren erweiterten oder reduzierten Status und ihre barrierefreien Namen angeben.
  • Benutzende von Bildschirmlesehilfen werden informiert, wenn eine neue Seitenansicht gerendert wird. Zuvor wurde, wenn ein Seitentitel geändert wurde, die Titeländerung nicht angekündigt.

Adobe Stock

  • Benutzer können sich jetzt erfolgreich von Adobe Stock abmelden.

Produkte im Paket

  • Sie können jetzt den PUT /V1/products-Endpunkt verwenden, um Produktpreisattribute für eine bestimmte Website zu aktualisieren. Wenn zuvor einige Produktattribute für eine bestimmte Shop-Ansicht überschrieben wurden, konnten Sie ein Preisattribut für dieses Produkt nicht in derselben Shop-Ansicht aktualisieren.
  • Magento Open Source berechnet jetzt die Gesamtsumme des Warenkorbs für ein Produkt-Bundle korrekt, wenn die Regel „Produkt-Unterauswahl“ angewendet wird.

Cache

  • Der vollständige Seitencache wird in Admin nicht mehr als deaktiviert angezeigt, wenn der Magento Open Sourcen-Cache geleert und use_stale_cache aktiviert wird.
  • New Relic-Bereitstellungsmarkierungen funktionieren jetzt wie erwartet, wenn der Cache geleert wird. GitHub-32649

Warenkorb und Checkout

  • Das Popup-Fenster für die Adresssuche im Abrechnungsschritt des Checkout-Workflows verursacht keine DOM-Fehler mehr.
  • Die addProductsToCart-Mutation funktioniert jetzt mit mehreren Produkten korrekt. Zuvor gab diese Abfrage das erste Produkt mit einer genauen Zwischensumme zurück, aber eine Zwischensumme von 0 für andere Produkte.
  • Berechtigungsausnahmen werden jetzt für eingeschränkte Produkte gehandhabt, die per SKU hinzugefügt werden. Käufer erhalten jetzt eine entsprechende Nachricht in der Storefront, und das Feld „Menge“ in der Fehlertabelle ist deaktiviert. Zuvor gab ApplicationOpen Source eine Ausnahme wie die folgende aus: There has been an error processing your request.
  • Die SQL-Abfrage, die die betroffenen Angebotssätze aktualisiert, nachdem eine Warenkorbpreisregel deaktiviert wurde, wurde optimiert, um zu vermeiden, dass die gesamte Angebotstabelle gesperrt wird.
  • Käufer mit globaler Kontofreigabe müssen sich nicht mehr bei einer sekundären Website in einer Multi-Site-Bereitstellung erneut anmelden, wenn der Gast-Checkout deaktiviert ist. Kundendaten werden jetzt geladen, wenn der Käufer zur Subdomain navigiert. Der Käufer wird nicht mehr aufgefordert, sich erneut anzumelden, und der vorherige Warenkorbinhalt wird angezeigt.
  • Die Dropdown-Werte für Adressen im Checkout-Workflow ändern sich für die verbleibenden Elemente in einem Angebot nicht mehr, wenn ein Adresselement für eine einzelne Menge bei einem Multi-Adressen-Checkout entfernt wird. Zuvor, als ein Produkt während des Checkouts mit mehreren Adressen aus einem Angebot entfernt wurde, wurde der Dropdown-Wert für die Adresse in den Standardwert für alle Produkte geändert.
  • Die cart-Abfrage gibt keine Null-Antworten mehr zurück, wenn ein Produkt nicht vorrätig ist. Ein neues errors-Element mit der Fehlermeldung wurde in die Antwort eingeführt. Wenn Sie zuvor eine Abfrage mit einem nicht vorrätigen Produkt ausgeführt haben, hat das Programm Open Source einen null Wert unter dem Abschnitt items in der Antwort angezeigt. Siehe Warenkorbabfrage.
  • Versandmethoden sind jetzt wie erwartet verfügbar, wenn ein Gast-Käufer ein Konto erstellt, nachdem er ein Produkt zum Warenkorb hinzugefügt hat, bevor er zur Kasse wechselt. Zuvor waren beim Hinzufügen eines Produkts zum Warenkorb durch einen Gast vor der Erstellung eines Kontos keine Versandmethoden während des Checkouts verfügbar. Nachdem Sie weitere Produkte zum Warenkorb hinzugefügt haben, wurden Versandmethoden verfügbar.
  • Käufer können jetzt Produkte zu ihrem Warenkorb hinzufügen, wenn keine Optionen im Feld Länder zulassen ausgewählt wurden.
  • Warenkorbinhalte und Anmeldestatus werden jetzt erwartungsgemäß neu geladen, nachdem eine Sitzung abgelaufen ist, wenn Persistenz aktivieren auf "". GitHub-35182
  • Die Zwischensummen des Mini-Warenkorbs werden jetzt korrekt aktualisiert, wenn ein Käufer im Checkout-Workflow für eine Bestellung mit mehreren Versandadressen von der Versandseite zur Warenkorbseite navigiert. Zuvor wurde die Zwischensumme verdoppelt.
  • Der Mini-Warenkorb zeigt jetzt zuvor hinzugefügte Produkte nach einer Sitzungs-Zeitüberschreitung an, wenn Persistenz aktivieren aktiviert ist. GitHub-35183
  • Händler können jetzt eine Gutschrift erstellen, in der Rückerstattung Versand (inkl. Steuer) auf -0,01 gesetzt ist und diesen Betrag nun auf 0 setzen kann. Zuvor konnte die Gutschrift unter diesen Bedingungen nicht erstellt werden.

Warenkorb-Preisregel

  • Der Parent Only Attributbereich wird jetzt in der Warenkorbregelbedingung ordnungsgemäß verwendet.

Katalog

  • Die Produkt-URL-Schlüssel bleiben jetzt unverändert, wenn der Produktname über PUT /V1/products/ für eine Store-Ansicht aktualisiert wird. Zuvor wurde ein neuer URL-Schlüssel basierend auf dem neuen Produktnamen generiert und dem Produkt zugewiesen, wodurch der URL-Schlüssel in dieser Store-Ansicht überschrieben wurde.
  • Beim Hinzufügen eines Produkts zu einer Kategorie über das Produkt-Widget von Page Builder, das auf den Karussellmodus eingestellt ist, wird kein erneutes Laden der Seite mehr Trigger.
  • Produkte, die auf Nicht einzeln sichtbar eingestellt sind, werden nicht mehr in den erweiterten Suchergebnissen des Katalogs angezeigt.
  • Dynamische Bundle-Attribute werden nun auf der Seite „Globale Attributaktualisierung“ korrekt aktualisiert. Zuvor war das Attribut Dynamische SKU auf „Ja festgelegt obwohl sie auf der Seite „Massenaktualisierung“ deaktiviert waren.
  • Katalogregeln werden jetzt korrekt mit inkrementellen Indexern angewendet und nicht mit einer vollständigen Neuindizierung.
  • Sie können jetzt erfolgreich zwischen Listen- und Rasteransichten von mehrseitigen Produktlisten wechseln. Wenn Sie zuvor zur letzten Seite einer mehrseitigen Produktlistenansicht navigiert sind, bevor Sie zur Rasteransicht gewechselt haben, hat die Anwendung Source öffnen folgenden Fehler angezeigt: Unfortunately there are no products in this category on our website currently.
  • Admin-Aktionsprotokollberichte zeigen jetzt aktualisierte Produkt-IDs und aktualisierte Statusinformationen wie erwartet an.
  • Trigger werden nun nach einer vollständigen Neuindizierung erwartungsgemäß in der catalogrule_product_price wiederhergestellt. Zuvor wurden Trigger nach einer catalogrule_rule oder catalogrule_product vollständigen Neuindizierung aus der catalogrule_product_price entfernt.
  • Kategorieregeln, die zum Zuweisen von Produkten zu Kategorien verwendet werden, ändern sich nicht mehr zufällig.
  • Kategorien können nicht mehr global von einem Administrator mit eingeschränktem Zugriff aktualisiert werden. Wenn mehrere Websites dieselbe Kategorie, aber verschiedene Produkte verwendeten und ein Administrator mit einer auf einen Store beschränkten Berechtigung Produkte in der Kategorie änderte, änderte sich die Produktauswahl auch für andere Stores.
  • Die Seite mit den Produktdetails zeigt jetzt den richtigen Preis an, wenn eine nicht standardmäßige Währung für ein bestimmtes Gebietsschema verwendet wird. Zuvor wurden Zahlen nicht wie erwartet in der Storefront lokalisiert.
  • Dieselbe Fehlermeldung wird jetzt von der API und in der Storefront angezeigt, wenn versucht wird, die Stufenpreise eines Produkts mit doppelten Datensätzen abzurufen. Zuvor hat PUT /V1/products/tier-prices eine falsche Fehlermeldung zurückgegeben.
  • Magento Open Source bietet jetzt Validierungsfehlermeldungen, wenn Sie versuchen, einen Produkt-URL-Schlüssel mit einem Bindestrich hinzuzufügen. Es ist auch ein informativer QuickInfo-Text verfügbar.
  • Das neue Feld ConfigurableWishlistItem.configured_variant hat das Feld ConfigurableWishlistItem.child_sku ersetzt. Letzteres Feld löste einen internen Fehler aus, wenn eine Kundenwunschliste ein nicht konfigurierbares Produkt enthielt.
  • URL-Neuschreibungen werden jetzt während der Massenattribut-Aktualisierung nur für die ausgewählten Stores generiert, um die Sichtbarkeit des Produkts zu ändern. Zuvor wurde durch die Aktualisierung des Massenattributs eine URL-Umschreibung für den falschen Store erstellt.
  • Wenn die Synchronize widget products with backend storage aktiviert ist, fügt die Anwendung Open Source kürzlich angezeigte Produktdaten in die catalog_product_frontend_action Datenbanktabelle ein. Sie enthält die Kunden- oder Besucher-ID beim Hinzufügen von Datensätzen. Der recently_viewed_product Abschnitt in der Antwort ist jetzt leer, wenn die Kunden-ID und die Besucher-ID null sind. Wenn die customer/section/load Ajax-Anfrage gesendet wird, kann das Programm „Open Source" daher kürzlich angesehene Produkte korrekt nach Kunden- oder Besucher-ID filtern. Zuvor umfasste die Antwort alle in der catalog_product_frontend_action Datenbanktabelle verfügbaren Daten, da keine Prüfung auf eine leere Kunden- oder Besucher-ID stattfand.
  • Administratoren können jetzt konfigurierbare Produktoptionen im Warenkorb eines Käufers über das Admin-Folienbedienfeld ändern. Zuvor funktionierte das Folienbedienfeld nicht ordnungsgemäß.
  • Der Seiten-Cache wird jetzt erwartungsgemäß für das konfigurierbare übergeordnete Produkt gelöscht, wenn Änderungen an einem untergeordneten Produkt gespeichert werden. Da der Cache nicht gelöscht wurde, wurden Änderungen zuvor nicht auf der Produktseite für die Storefront-Konfiguration ausgewählt. GitHub-34508
  • Produktlisten werden jetzt in der Admin korrekt gerendert. Zuvor wurde die Produktliste nicht gerendert, und in Magento Open Source wurde dieser Fehler angezeigt: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists. GitHub-33145
  • Die Produktpreise sind jetzt auf der Produktdetailseite und in der Storefront-Suche in Multi-Store-Bereitstellungen gleich, nachdem sich der Katalogpreisbereich von Website in global geändert hat. Zuvor wurden auf der Seite mit den Katalogsuchergebnissen der global-Preis und auf der Seite mit den Produktdetails der Website-Preis angezeigt. GitHub-34074
  • Die mehrschichtige Navigation zeigt jetzt Produkte mit den höchsten Preisen an, wie erwartet, wenn Preisnavigation - auf "".
  • Sie können jetzt das Produktlimit pro Seite ändern, das innerhalb einer Kategorie angezeigt wird, wenn Kategorienpaginierung speichern aktiviert ist. Zuvor form_key die Cookie-form_key und die Benutzeroberfläche unterschiedlich, und in Magento Open Source wurde dieser Fehler angezeigt: Invalid Form Key. Please refresh the page.
  • Der EAV-Indexer verarbeitet jetzt Produkt-IDs als Typ int, um mögliche Leistungsprobleme zu vermeiden.
  • Ein neuer Produkt-Cache wird jetzt erfolgreich generiert, nachdem Sie ein neues Bild mit einem Namen hinzugefügt haben, der "" enthält. zu einem Produkt hinzufügen, dann das Produkt speichern und den Bild-Cache bereinigen. GitHub-32699
  • Magento Open Source zeigt jetzt eine Fehlermeldung wie erwartet an, wenn Sie versuchen, ein Attribut von der Produktseite aus zu erstellen, ohne das Feld Admin auszufüllen. GitHub-33099

  • Produktbewertungen sind jetzt in allen Katalogproduktlisten korrekt, wenn die Startseite mehrere Kataloglisten enthält. GitHub-33867

Konfigurierbare Produkte

  • Magento Open Source zeigt jetzt den richtigen Produktpreis für ein konfigurierbares Produkt mit einer ausgewählten Option an, nachdem die Menge auf der Produktdetailseite geändert wurde. Zuvor wurde der Preis nach der Mengenänderung auf den Ausgangswert zurückgesetzt.
  • Die products Abfrage ruft jetzt Preise für konfigurierbare Produkte ab, die die Konfigurationseinstellung Display Out of Stock korrekt widerspiegeln. Zuvor gab die Abfrage keine genauen Preise zurück.
  • Konfigurierbare Optionen sind jetzt mit konfigurierbaren Produkten verknüpft, die in der Admin mithilfe von POST /V1/configurable-products/configurable1/child erstellt werden.
  • Attribute mit Mehrfachauswahl werden jetzt bei der Produktbearbeitung korrekt gespeichert. Zuvor hat ApplicationOpen Source beim Speichern eines Produkts die Standardoption für nicht ausgewählte Attribute sowie ausgewählte Attribute gespeichert.
  • Magento Open Source zeigt jetzt konfigurierbare Attribute wie bei der Erstellung globaler select über ein Patch-Skript erwartet an. Zuvor wurden zulässige globale Attribute ausgeblendet.
  • Die addConfigurableProductsToCart kann jetzt verwendet werden, um konfigurierbare Produkte mit benutzerdefinierten Optionen hinzuzufügen. Zuvor hatte ApplicationOpen Source den folgenden Fehler ausgegeben: Magento 2.3.4 graphql Notice: Undefined index: option_value in /var/www/html/mg234/vendor/magento/module-configurable-product-graph-ql/Model/Resolver/ConfigurableCartItemOptions.php on line 62. GitHub-28860

  • Sie können jetzt konfigurierbare Produkte mit optionalen benutzerdefinierten Optionen neu bestellen. Zuvor schlugen die Neuanordnungsversuche fehl und bedeuteten, dass der folgende Fehler angezeigt wurde: Some of the selected options are not currently available. GitHub-35409

  • Die addConfigurableProductsToCart-Mutation funktioniert jetzt bei mehreren Produkten wie erwartet. Zuvor wurden falsche Produktinformationen oder eine ungültige Fehlermeldung zurückgegeben. GitHub-30948

KUNDE

  • Magento Open Source zeigt jetzt vordefinierte EAV-Systemattribute entsprechend der Website-Einstellung in der Storefront korrekt an. Zuvor wurden Kundenattribute auf Website-Ebene, die für eine Website aktiviert und für eine andere deaktiviert waren, für beide Websites als aktiviert angezeigt.

herunterladbar

  • Sie können jetzt Beispiellinks und -dateien aus einem herunterladbaren Produkt entfernen. GitHub-31887

E-Mail

  • Vom System ausgestellte E-Mails werden jetzt mit erfolgreich an Empfänger gesendet.-" in ihrer E-Mail-Adresse.
  • Kunden erhalten jetzt E-Mail-Erinnerungen über ihre Transaktionsabbrüche nach dem richtigen Zeitplan. Die neue TIMESTAMPDIFF(DAY, ,) SQL-Funktion hat die TO_DAYS() Funktion ersetzt und berechnet die Differenz der Zeitstempel auf der Basis von Datum und Uhrzeit. Zuvor wurden E-Mail-Erinnerungen nicht pro Zeitplan gesendet, da zwei Datums-/Uhrzeitwerte für Warenkorbabbrüche (beliebige Zeitzone) und Server-Zeit (UTC) falsch berechnet wurden.
  • Magento Open Source zeigt jetzt eine Fehlermeldung auf der Versandseite an, wenn ein Käufer ein ungültiges E-Mail-Format eingibt, nachdem er auf „Bestellung " geklickt. Zuvor wurde die Fehlermeldung auf der Zahlungsseite angezeigt. [GitHub-33590] (https://github.com/magento/magento2/issues/33590

Frameworks

  • Der Befehl bin/magento setup:config:set überschreibt nicht mehr die bereits festgelegten Cache-ID-Präfixe in app/etc/env.php.
  • Der Befehl bin/magento setup:static-content:deploy -s compact enthält jetzt Stile aus untergeordneten Designs, wie erwartet. Zuvor waren Design-CSS-Dateien nach der Bereitstellung nicht in der Storefront vorhanden.
  • Es wurde ein neuer Schnüffeleffekt hinzugefügt, um zu überprüfen, ob schließende Schrägstriche in void Elementen verwendet werden.
  • Die Magento Open Source gibt keinen SQL-Fehler mehr aus, nachdem eine neue Herkunft einem Produkt zugewiesen wurde und dessen Quantität geändert wurde. GitHub-35262
  • Die Sortierreihenfolge der Attribute funktioniert jetzt nach der Aktualisierung wie in der di.xml angegeben.
  • Die Funktion updateCartCurrency legt jetzt die Zeichenfolge statt eines -Objekts innerhalb des Warenkorbobjekts fest. Zuvor hat ApplicationOpen Source kein Anführungszeichen mit getQuote geladen, da die updateCartCurrency ein -Objekt anstelle einer Zeichenfolge innerhalb des Warenkorbobjekts festlegt. GitHub-34199
  • In Modultests werden aus folgenden Gründen keine Hinweise mehr zu \DateTimeFormatter::formatObject() angezeigt. Diese Methode funktioniert jetzt wie erwartet mit numerischen Werten für $format.
  • Magento Open Source zeigt keinen preg_replace() mehr auf Admin an. Das dritte Argument ($subject) ist jetzt vom Typ array|string anstelle von bool.
  • Die isFreeShipping-Methode gibt jetzt eine Ganzzahl anstelle eines booleschen Werts zurück.GitHub-35164
  • Magento Open Source gibt beim Erstellen eines Plug-ins für eine Methode der Klasse vendor/magento/module-backend/Model/Menu.php den folgenden Fehler nicht mehr aus: Error: Call to undefined method ReflectionUnionType::getName(). GitHub-35292
  • Magento Open Source gibt jetzt beim Navigieren zu /checkout/sidebar/updateItemQty/?item_qty=error in der Storefront einen 404- statt eines 500-Fehlers zurück. Zuvor wurde dieser Fehler ausgelöst: Warning: A non-numeric value encountered in /vendor/magento/module-checkout/Controller/Sidebar/UpdateItemQty.php on line 69. GitHub-34380
  • Magento Open Source Trigger keinen trim(): Passing null to parameter #1 ($string) of type string is deprecated mehr, wenn die AMPQ-Verbindung ohne SSL-Konfiguration konfiguriert ist.
  • longblog Datenbankdefinition auf long blob korrigiert. GitHub-35108
  • Knock-out-Text mit einfachen Anführungszeichen ist jetzt übersetzbar. GitHub-34319
  • Ein TypeError in magento2/app/code/Magento/Security/Model/AdminSessionsManager.php wurde von int auf string korrigiert. GitHub-34415
  • .htpasswd wurde in der nginx-Konfigurationsdatei zu gesperrten Speicherorten hinzugefügt. GitHub-35150
  • Die Ladezeit von Produktlistenseiten der Kategorie wurde verbessert, indem Magento_Ui/js/core/app als deps zu app/code/Magento/Ui/view/frontend/requirejs-config.js hinzugefügt wurden. GitHub-34847
  • Die ProductRepository.php:get-Methode gibt jetzt einmal Cache-Schlüssel zurück. Zuvor wurden sie zweimal zurückgegeben. GitHub-34958
  • Es wurde eine Fehlermeldung zu einer neuen Ausnahme hinzugefügt, die im Ausnahme-Handler für Cron-Aufträge erstellt wurde. GitHub-34941
  • Die ReadMe-Dateien für die GraphQl-GroupedProductGraphQl wurden aktualisiert. GitHub-34951
  • Auf den Seiten für Druckaufträge/Rechnungen/Gutschriften der Storefront wird nicht mehr das standardmäßige Luma-Logo anstelle des Logos angezeigt, das für die Anzeige auf der Website festgelegt wurde. GitHub-34942

Allgemeine Fehlerbehebungen

  • Wenn Sie die maximale Sitzungsgröße auf 0 setzen (Admin Store > Einstellungen > Konfiguration - Erweitert), wird der Administrator nicht mehr abgemeldet. GitHub-35312
  • Die Konfigurationseinstellungen für Kundenadressattribute werden jetzt korrekt auf der Grundlage der Website geladen, der der Kunde zugewiesen ist, wenn Sie vom Administrator eine neue Kundenadresse hinzufügen, die einer nicht standardmäßigen Website zugewiesen ist.
  • Magento Open Source löst keine Ausnahme mehr aus, wenn Sie ein Produktpaket über Page Builder hinzufügen.
  • Sie können jetzt auf einem iOS-Gerät ein Kundenkonto mit dem schrägen Apostroph (') im Vor-, Mittel- oder Nachnamen erstellen. Zuvor war nur das gerade Apostroph zulässig, und die Verwendung von standardmäßigen geneigten iOS 11±Apostrophen führte zu einem Name is not valid!.
  • Die products-Abfrage gibt jetzt Produktinformationen zurück, die die Konfiguration „Verwandte Produkte anzeigen“ korrekt widerspiegeln. Die Felder related_products, upsell_products und crosssell_products in der GraphQL-Produktoberfläche werden jetzt entsprechend der Konfiguration Verwandte Produkte anzeigen, Upsell-Produkte anzeigen und Crossselling-Produkte anzeigen aufgelöst.
  • Das Attribut Produkt als neues Startdatum festlegen zeigt jetzt das richtige Datum an, wenn das Attribut Produkt als neu festlegen durch eine Massenaktualisierung des Produkts festgelegt wird. Zuvor wurde Produkt als neues Startdatum festlegen als 1. Januar 1970 angezeigt.
  • Benutzenden mit eingeschränkten Rollen wird der Zugriff auf neue Module nicht mehr automatisch gewährt.
  • Bedingungen für verwandte Produktregeln funktionieren jetzt wie erwartet mit Produkten, die multiselect enthalten.
  • Händler können jetzt Produktvergleichen ein Preisattribut (tier_price) hinzufügen. Zuvor stürzte die Seite mit den Produktvergleichen ab, wenn die Einstellung Vergleichbar in der Storefront für dieses Attribut aktiviert war. GitHub-35244
  • Magento Open Source zeigt jetzt eine Fehlermeldung an, wenn Sie eine ungültige Cookie-Domain festlegen (Store > Configurations > Web > Default Cookie Settings Cookie Domain). Zuvor stürzte die Website ab. GitHub-35048
  • Magento Open Source gibt keinen Fehler mehr aus, wenn ein Administrator mit Rollen, die für eine einzelne Website gelten, mithilfe von PageBuilder Produkte zu Inhaltselementen hinzufügt. Zuvor gab ApplicationOpen Source einen SQL-Fehler aus.
  • Die Validierung wurde in die zweite Zeile der Straßenadresse auf den Seiten Bearbeiten und Adresse hinzufügen eingefügt. Die auf der zweiten angegebenen minimalen und maximalen Textlängen werden jetzt erzwungen.
  • Magento Open Source gibt während der Erstellung einer Katalogregel in Admin nach dem Upgrade nicht mehr den folgenden Fehler aus: A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later.
  • Magento Open Source gibt keinen Fehler mehr aus, wenn Sie das Kontrollkästchen Hier überprüfen, um einen RSS-Feed mit Ihrer Wunschliste zu verknüpfen aktivieren, bevor Sie auf Wunschliste freigeben klicken. GitHub-34998
  • Der Titel des Kontrollkästchens Kennwort anzeigen (Formulare „Kundenanmeldung“, „Kundenregistrierung“, „Kundenbearbeitung“ (Abschnitt „Kennwort ändern„) und „Neues Kennwort festlegen„) ist jetzt übersetzbar. GitHub-34857
  • Die Beschriftungen und Kommentarbeschreibungen in app/code/Magento/NewRelicReporting/etc/adminhtml/system.xml wurden aktualisiert. GitHub-31947
  • Nicht benötigte csp_whitelist.xml wurden entfernt. GitHub-30607

GraphQL

  • Dem GraphQL-BundleItemOption wurde ein fehlendes price_range hinzugefügt. GitHub-35010
  • Die products Abfrage gibt Attribute nicht mehr als Aggregation zurück, wenn die Einstellung In Suchergebnissen verwenden Geschichtete Navigation deaktiviert ist. GitHub-33318
  • CartItemPrices wurde ein price_including_tax Feld hinzugefügt. GitHub-29057
  • Die new_from_data und new_to_datefields in ProductInterface werden nicht mehr unterstützt. GitHub-34783
  • Die categories Abfrage löst beim Abrufen einer Liste von Kategorien, von denen eine ein Bild enthält, das im Dateisystem nicht gefunden werden kann, keine Ausnahme mehr aus. Zuvor gab es in ApplicationOpen Source diese Ausnahme: Category image not found. GitHub-34266
  • Die products-Abfrage gibt jetzt erwartungsgemäß category_uid als Aggregation zurück. GitHub-32557
  • Die updateCartItems entfernt nun Produkte wie erwartet, wenn der Produktvorrat die maximale Lagermenge erreicht hat. GitHub-30220
  • Die urlResolver Abfrage löst das Pfadtrennzeichen (/) jetzt korrekt auf, wenn mehrere Homepage dieselbe Kennung haben. Zuvor konnte die Abfrage das Trennzeichen nicht auflösen und gab null zurück. GitHub-33615
  • customer-Abfragen rufen jetzt beim Abfragen von Bestellungen die erwarteten Mehrfachauswahl-Optionen für das Bundle ab. GitHub-34717
  • Magento Open Source-Sitzungen enden nicht mehr, nachdem eine GraphQL-Anfrage gestellt wurde. Zuvor hat sich das ClearCustomerSessionAfterRequest-Plug-in beim Erstkäufer abgemeldet. GitHub-34550
  • Konfigurierbare Produktpreisbereiche in products Abfrageantworten werden jetzt korrekt berechnet, wenn die Konfigurationseinstellung Nicht vorrätige Produkte anzeigen aktiviert ist. Zuvor wurden deaktivierte Optionen bei der Mindest- und Höchstpreisberechnung berücksichtigt.
  • Die products-Abfrage gibt jetzt beim Sortieren nach Position mehrere Kategorien korrekt gefiltert zurück.
  • setShippingAddressesOnCart-Anfragen validieren jetzt erfolgreich Regions-IDs. Zuvor gab ApplicationOpen Source einen Fehler aus, wenn Sie die Regions-ID anstelle des Regions-Codes verwendet haben.
  • products Abfragen geben jetzt nur die Kategorien zurück, die mit dem in der Anfrage übergebenen Store verknüpft sind.
  • Die categoryList Abfrage gibt jetzt Ergebnisse zurück, die die Stammkategorie des abgefragten Speichers widerspiegeln, wenn der Speicher in der Kopfzeile angegeben wird. Zuvor wurden Kategorien aus der Standard-Stammkategorie in die Ergebnisse aufgenommen, obwohl in der Kopfzeile ein anderer Store angegeben war.
  • Die products Abfrage gibt Attribute nicht mehr als Aggregation zurück, wenn die Einstellung In Suchergebnissen verwenden „Mehrschichtige Navigation“ deaktiviert ist. GitHub-33318
  • Die cart Abfrage gibt jetzt nur noch eine Zahlungsmethode für kostenlose Bestellungen zurück. Zuvor wurden alle aktiven Zahlungsmethoden in der Abfrageantwort zurückgegeben. GitHub-34036
  • products Abfragen geben keine price_range mehr für konfigurierbare Produkte zurück, die von deaktivierten Varianten betroffen sind. GitHub-33629
  • Vor dem collectQuoteTotals-Aufruf wurde ein Plug-in hinzugefügt, um sicherzustellen, dass Speichergutschriften nicht mehrmals angewendet werden.
  • Die generateCustomerTokenAsAdmin-Mutation ruft jetzt erwartungsgemäß Kunden-Token ab. Zuvor wurden keine Token zurückgegeben, und dieser Fehler wurde zurückgegeben: Customer email provided does not exist.
  • Das GraphQL-Schema ist jetzt gültig, wenn ein benutzerdefiniertes type-Produktattribut definiert wird. Zuvor war das Schema ungültig, da das type Attribut für Produkttypen durch das benutzerdefinierte type Attribut überschrieben wurde. GitHub-34929
  • Kunden, die mit der createCustomer-, createCustomerV2-, updateCustomer- oder updateCustomerV2-Mutation hinzugefügt oder aktualisiert wurden, haben jetzt aktive Newsletter-Abonnements. Zuvor wurden Kunden von Newslettern abgemeldet, selbst wenn die Anfrage korrekte Eingabeparameter enthielt. GitHub-33599
  • Die products Abfrage für eine bestimmte Store-Ansicht gibt jetzt nur noch Kategorien zurück, die sich in der Stammkategorie der jeweiligen Website in der Bereitstellung für mehrere Sites befinden. Zuvor gab die Abfrage Kategorien aus den Stammkategorien anderer Websites zurück. GitHub-34570
  • Die products Abfrage gibt jetzt nur noch die Unterkategorie der angegebenen Kategorie-ID zurück. Zuvor wurden alle Kategorien zurückgegeben. GitHub-35220
  • Die customerOrders-Abfrage antwortet jetzt erwartungsgemäß, wenn das gift_message Objekt in der Antwort angegeben wird, aber keine Geschenknachricht vorhanden ist. Zuvor hat die Abfrage diese Nachricht zurückgegeben: Can't load gift message for order is returned. GitHub-28957
  • Es wurde ein Fehler im catalog_category_product-Indexer behoben, der dazu führte, dass die products Abfrage Kategorien aus einem anderen Store zurückgab. GitHub-31253
  • Die generateCustomerToken-Mutation erstellt jetzt wie erwartet einen Eintrag im customer_log, nachdem ein Kunden-Token generiert wurde. GitHub-33378

Google Analytics

  • Das Google Tag-Modul wurde zur Code-Basis hinzugefügt, das die Umstellung auf Google Analytics 4 im Juli 2023 unterstützt. Sie können derzeit neue Daten in Ihren Google Universal Analytics-Eigenschaften verwenden und erfassen, aber Google Universal wird im Juli 2023 das Ende der Nutzungsdauer erreichen. GitHub-35204, GitHub-35376

Bild

  • Bilder auf den Seiten mit Produktdetails flackern nicht mehr, und Bilder bleiben erwartungsgemäß zentriert. Nachdem eine Produktdetailseite das Laden eines Bildes abgeschlossen hat, wurde das Bild zuvor sichtbar nach unten verschoben.

Import/Export

  • Die Position verwandter, Upsell- und Crosssell-Produkte in der CSV-Datei für den Export ist jetzt korrekt, nachdem ein Crosssell-Produkt vom Administrator gelöscht wurde, bevor die CSV-Datei neu generiert wird. Zuvor wurden Crosssell-Produktpositionen nicht neu berechnet, nachdem ein Crosssell-Produkt entfernt wurde, und die Bestellung der Produktposition war falsch.
  • Magento Open Source sucht jetzt beim Exportieren von Berichten nach einer benutzerdefinierten Ansicht, bevor die Spalten gefiltert werden. Zuvor berücksichtigten exportierte Berichte keine benutzerdefinierten Ansichten, und die exportierten Spalten waren falsch.
  • Magento Open Source importiert jetzt erfolgreich Bilder mit langen Dateinamen. Zuvor importierte ApplicationOpen Source das Bild nicht und gab folgenden Fehler aus: Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s):.
  • Kategorie-ID-Attribute sind jetzt in Filtern für geplante Exporte verfügbar.
  • Produkte, die ein Fragezeichen (?) enthalten, im Paket speichern in der Option kann der Titel jetzt aufgrund von Verbesserungen am Query Builder innerhalb populateExistingOptions -Methode erfolgreich importiert werden. Der Optionstitel wird ebenfalls korrekt angezeigt. Zuvor, nach dem ersten Import, führten aufeinander folgende Importe zu fehlerhaftem Verhalten und doppelten Optionen. Käufer konnten das Produkt auch nicht zum Warenkorb hinzufügen.
  • Es wurde eine Validierung für Kategorienamen beim Import hinzugefügt. Zuvor wurden Kategorienamen von ApplicationOpen Source nicht validiert, was zu Fehlern führte, wenn Kategorienamen 255 Zeichen überschreiten.
  • Vorhandene Datensätze in der catalog_url_rewrite_product_category werden jetzt gelöscht, bevor neue eingefügt werden. Zuvor trat beim Import von Produkten aus mehreren Shops der folgende Fehler auf: SQLSTATE[23000]: Integrity constraint violation. GitHub-34210

Infrastruktur

  • Ein veraltetes Plug-in im Kontextmenü wurde aus der Liste der Plug-ins entfernt.
  • Die Symbolleistenlogik für den TinyMCE-Editor im Page Builder-Modul wurde aktualisiert, nachdem in TinyMCE eine delayedRender Logik für die Symbolleiste eingeführt wurde.
  • Race-Bedingungen unterbrechen nicht mehr die Erstellung des contentUpdated-Ereignis-Listeners. GitHub-32068
  • Die getTypeID-Funktion gibt jetzt die Produkttyp-ID und nicht die Produkt-ID zurück. GitHub-35458
  • Der jQuery UI-Schieberegler und die SelectMenu wurden in vendor/magento/module-theme/view/base/requirejs-config.js korrigiert.

  • Auf sales_order_state_change_before platzierte Beobachter unterstützen jetzt das Abrufen von Daten aus dem Bestellobjekt. Das sales_order_state_change_before event-Argument wurde aktualisiert. GitHub-26789

  • indexer:reset wurde überarbeitet, um $indexer->invalidate() aufzurufen. GitHub-34988
  • Sie können jetzt den Doppelpunkt in einem htmlClass Attributwert verwenden, was die Verwendung zusätzlicher Komponenten wie der Rückenwind-Benutzeroberfläche unterstützt. GitHub-34430

Protokollierung

  • Kunden-, Kundenadressen- und Bestellaktionen werden nun im Admin-Aktionsbericht korrekt protokolliert. Zuvor protokollierte ApplicationOpen Source keine Aktionen, wenn der postDispatch-Handler nicht in den Konfigurationseinstellungen angegeben wurde.

MFTF

Aktionsgruppen

Wiederholte Aktionen wurden in diesen Tests durch Aktionsgruppen ersetzt:

AdminConfigurableProductChildrenOutOfStockTest GitHub-32378
AdminCreateStoreViewTest GitHub-34631

Neue Tests

AdminUnlockAdminUserEntityTest GitHub-34836

StorefrontNewsletterSubscriptionWithEnabledNeedToConfirmConfigTest GitHub-33344

Überarbeitete Tests

AdminCancelTheCreatedOrderWithCashOnDeliveryPaymentMethodTest GitHub-33692

Newsletter

  • Angemeldete Kunden werden nicht mehr als Gäste in Admin > Marketing > Newsletter-Abonnenten markiert.
  • Die E-Mail zur Bestätigung des Newsletter-Abonnements enthält jetzt die richtige, speicherspezifische E-Mail-Adresse im Feld Von , wenn der Kunde einem nicht standardmäßigen Store zugewiesen ist und sich beim Administrator angemeldet oder abgemeldet hat. Zuvor hat der Kunde eine E-Mail mit einer Standard-E-Mail in der Kopfzeile Von erhalten. GitHub-34963
  • Die Abmelde-URL in der Newsletter-E-Mail-Vorlage funktioniert jetzt erwartungsgemäß. GitHub-33310

Reihenfolge

  • Gastkundendetails werden jetzt erfolgreich gespeichert, nachdem eine Bestellung bearbeitet wurde. Zuvor gingen einige Kundendaten verloren, darunter customer_firstname und customer_lastname, x_forwarded_for.
  • Händler können keine Gutschrift mit einer Dezimalgesamtmenge mehr erstellen, wenn Dezimalmenge auf einer Produkt- oder globalen Einstellungsebene deaktiviert ist. Zuvor konnten Händler eine Gutschrift für die Dezimalgesamtmenge erstellen, wenn diese nicht anwendbar war.
  • Die Filterung nach Datum funktioniert jetzt ordnungsgemäß für Rechnungen, Sendungen, Gutschriften, CMS-Seiten und CMS-Blockraster, wenn die in den Voreinstellungen festgelegte Zeitzone von der auf einem lokalen Computer festgelegten Zeitzone abweicht. Zuvor wurde das Datum falsch geparst und die gefilterten Ergebnisse enthielten Daten außerhalb des festgelegten Datumsbereichs.
  • Magento Open Source ändert keine benutzerdefinierten E-Mail-Adressen mehr, die Bestellungen zugewiesen sind, wenn Sie die Haupt-E-Mail-Adresse ändern, die dem Kunden auf der Seite Bearbeiten des Admin-Kontos zugewiesen wurde. Wenn Sie zuvor die Haupt-E-Mail-Adresse für einen Kunden bearbeitet haben, wurde die neue E-Mail-Adresse jeder für diesen Kunden erstellten Bestellung zugewiesen. GitHub-34397
  • Magento Open Source zeigt jetzt Datensätze aus dem angeforderten Speicher auf der Rasterseite für Gutschriften in PHP 7.4-Bereitstellungen an. Zuvor gab ApplicationOpen Source den folgenden Fehler aus, nachdem Sie eine Gutschrift erstellt und versucht haben, sie anzuzeigen: The store that was requested wasn't found. Verify the store and try again.
  • Magento Open Source zeigt jetzt Gutschriften auf der Rasterseite für Gutschriften an, die in Ansichten des Geschäfts erstellt wurden, deren Name mit vorangestellten Zahlen versehen ist. Zuvor hat ApplicationOpen Source den Fehler angezeigt: The store that was requested wasn't found. Verify the store and try again. Exception in /var/www/html/vendor/magento/module-store/Model/StoreRepository.php:75. GitHub-35122
  • Magento Open Source zeigt jetzt die kostenlosen Versandkosten (0) auf der Rechnungssumme für Admin- und Storefront an. Zuvor, als der Versand für eine Bestellung null war, zeigte das Programm „Offene Source" den Versandbetrag nicht insgesamt auf der Rechnungsseite „Versandsumme“ an.
  • Die Spalte increment_id in der sales_order wurde erhöht. Zuvor wurden bei Drittanbietermodulen, bei denen davon ausgegangen wurde, dass sales_order.increment_id eine Länge von 50 Zeichen hatte, nur die ersten 32 Zeichen eines increment_id gespeichert. GitHub-34521

Zahlungsmethoden

  • Administratoren können jetzt über die Zahlungsmethode PayPal PayflowPro eine Bestellung beim Administrator aufgeben. Zuvor hat ApplicationOpen Source diesen Fehler angezeigt: No such entity with cartId = 0.
  • Die Seite zur Zahlungsüberprüfung im Checkout-Workflow zeigt jetzt den richtigen Namen der Zahlungsmethode an, wenn die Zahlung mit Venmo, PayPal Later oder PayPal erfolgt.
  • Die cart Abfrage gibt nicht mehr alle aktiven Zahlungsmethoden für kostenlose Bestellungen zurück. GitHub-34036

Braintree

  • Händler können jetzt eine Teilrückerstattung für Bestellungen einreichen, die mit Apple Pay über Braintree bezahlt wurden. Dies war ein bekanntes Problem in Magento Open Source 2.4.4.

PayPal

  • Magento Open Source zeigt jetzt den richtigen Kundennamen in einer mit PayPal bezahlten Gästebeschreibung an. Zuvor wurde der Kundenname als „Gast“ angezeigt.
  • Der Resolver für die createPaypalExpressToken-Mutation wurde aktualisiert, um den im Eingabefeld use_paypal_credit angegebenen Wert korrekt zu verwenden. Zuvor wurde versucht, ein ungültiges paypal_credit zu verwenden. GitHub-35180

Leistung

  • Die Redis-Cache-Verwaltung wurde durch das Hinzufügen von TTL (Ablaufdatum) für die Caches für die zugehörigen Produktdaten konfigurierbarer Produkte verbessert. Zuvor wurden diese Caches aufgrund fehlender TTL-Werte nicht entfernt, wenn die Redis-Schlüssel-Räumungsrichtlinie als flüchtige Räumungsrichtlinie konfiguriert war.
  • Das neue Grid Filter Condition Type Kunden-/Kundenadressenattribut steuert, wie ein Attributfilter mit den Attributwerten in der Datenbank abgeglichen wird. Zu den Optionen gehören Partial Match, Prefix Match und Full Match.
  • Der Volltext-Indexer für die Katalogsuche wurde außerhalb der Store-Schleife verschoben, was die Neuindizierung optimiert. GitHub-33984
  • Es wurde ein Problem mit array_merge in Schleifen behoben. GitHub-33929

Preisgestaltung

  • Preisattribute, die im Standardbereich keinen Wert haben (aber auf Store-Ansichtsebene definiert sind), werden jetzt ordnungsgemäß indiziert. Zuvor haben die SQL-Ausdrücke, die Preisattributwerte aus der EAV-Tabelle abrufen, das Szenario, in dem der Wert nicht im Standardbereich definiert war, nicht berücksichtigt.
  • Der auf der Produktdetailseite aufgelistete Preis ist jetzt derselbe wie der im Checkout-Workflow aufgelistete Preis für Stufenpreise, die sich je nach ausgewählter Menge unterscheiden (z. B. ein Produkt, das unterschiedlich auf dem Kauf von 2 Artikeln versus 5 Artikeln basiert). Zuvor spiegelte der Checkout-Preis den Preis für die niedrigste Produktmenge wider.

reCAPTCHA

  • Die Schaltfläche Senden auf den Seiten Anmelden und Konto erstellen ist jetzt inaktiv, bis ReCaptcha vollständig geladen ist.

Rollen

  • Auf der Seite Store > Configuration > Services werden jetzt die Magento Open Source-Web-API-Informationen wie erwartet angezeigt, wenn der Ressourcenzugriff auf der Registerkarte Rollenressourcen auf Benutzerdefiniert festgelegt ist. GitHub-35506

Suche

  • Beim Filtern von Produkten nach Farbmustern in der mehrschichtigen Navigation wird nach der Fehlerbehebung das richtige Bild für die Produkte angezeigt.
  • Elasticsearch-Abfragen funktionieren jetzt erwartungsgemäß, wenn int als durchsuchbares Backend-type konfiguriert ist. Zuvor gab ApplicationOpen Source eine Elasticsearch\Common\Exceptions\BadRequest400Exception Ausnahme aus.
  • Sie können jetzt Suchsynonyme zusammen mit dem Parameter Mindestbegriffe für Übereinstimmung in Elasticsearch-Abfragen verwenden. Wenn dieser Parameter bisher in den Einstellungen angegeben war und Suchbegriffe für bestimmte Keywords hinzugefügt wurden, gab die Suche keine Ergebnisse zurück.
  • Magento Open Source zeigt jetzt eine präzise Anzahl von Suchergebnisvorschlägen in der Storefront in Bereitstellungen an, in denen Suchvorschläge und die Einstellung Ergebnisanzahl für jeden Vorschlag anzeigen aktiviert sind. Zuvor war die neben den Keywords angezeigte Anzahl null.
  • Produkte, die auf der Katalogseite nach benutzerdefinierten Attributen sortiert sind, werden jetzt in der erwarteten Reihenfolge angezeigt. Zuvor wurden Produkte nach ihrem Attributoptionenwert ID sortiert, der die Reihenfolge widerspiegelt, in der sie dem Attribut hinzugefügt wurden. GitHub-33810
  • Beim Filtern von Produkten nach Farbmustern in der mehrschichtigen Navigation werden jetzt die richtigen Produktbilder angezeigt. Zuvor enthielt der PageCache für die mehrschichtige Navigation keine Filterparameter für konfigurierbare Produkte.
  • Behobene PHP-Fehler auf den catalogsearch/advanced/result und Seiten catalogsearch/advanced/index. Zuvor wurde dieser Fehler in Magento Open Source angezeigt, wenn ein Array in einer erweiterten Suchzeichenfolge übergeben wurde: Warning: trim() expects parameter 1 to be string, array given | magento/module-catalog-search. GitHub-33586

Lieferung

  • Magento Open Source gibt beim Laden der UPS Versandraten keinen Fehler mehr aus, wenn keine zulässigen Versandmethoden ausgewählt sind. Wenn ein Käufer zuvor eine Versandadresse im Checkout-Workflow unter diesen Bedingungen eingegeben hat, wurden keine anderen Versandmethoden angezeigt und Magento Open Source hat einen Fehler in der Storefront angezeigt. GitHub-34411
  • Virtuelle Produktpreise sind jetzt in der Berechnungstabelle des Versandsatzes ausgeschlossen. Zuvor wurden die Versandkosten für diese Produkte nicht korrekt berechnet.GitHub-35185
  • Die Versandraten des Tabellensatzes Null werden jetzt korrekt im Block Bestellübersicht des Checkout-Workflows für Bestellungen angezeigt, denen ein Rabattcoupon zugewiesen wurde. Zuvor wurde die Versandmethode nicht angezeigt.

Steuer

  • Die feste Produktsteuer (FPT) wird nun für Produkte im Warenkorb korrekt angezeigt. Wenn zuvor mehrere Produkte im Warenkorb die Optionen Feste Produktsteuer (FPT) und Steuer auf FPT anwenden aktiviert waren, wurden alle FPTs dem letzten Produkt im Warenkorb zugewiesen und für andere Produkte zurückgesetzt.
  • Die Summe der festen Produktsteuer (FPT) für den Abschnitt „Bestellübersicht“ des Checkout-Workflows wird jetzt korrekt berechnet.
  • Magento Open Source aktualisiert jetzt den Preis ohne Steuerstufe für ein einfaches Produkt auf der Produktseite wie erwartet, nachdem die Menge des einfachen Produkts geändert wurde.
  • Die Seite für die Store-Konfiguration wurde um eine Validierung erweitert, mit der überprüft werden kann, ob das in der Dropdown-Liste ausgewählte Land auf der EU-Länderliste aufgeführt ist. Die Validieren der MwSt Nummer“ ist jetzt nur noch für EU-Länder sichtbar. Zuvor war die Schaltfläche für alle Länder sichtbar, einschließlich Großbritannien.
  • Die Stufenpreise werden jetzt korrekt berechnet, wenn Produktpreise im Katalog anzeigen entweder auf "ohne Steuern“ "und ohne Steuern“. Zuvor wurden auf der Seite mit den Produktdetails trotz der Einstellung Stufenpreise mit Steuern angezeigt.
  • Bei Bestellungen an einer beliebigen gültigen Adresse in Storefronts, die das portugiesische Gebietsschema verwendet, werden jetzt Steuern korrekt erhoben. GitHub-34271
  • Die cart Abfrage enthält bei der Rückgabe von subtotal_with_discount_excluding_tax keine Steuer mehr. GitHub-33905
  • Web-API-Anfragen für Bestelldaten (GET /V1/orders/) geben keine negativen Werte mehr für Zeilensummen zurück.

Test

  • Fehlerkorrektur - Bei der Ausführung mit der AWS-Elasticsearch-Konfiguration treten jetzt keine Fehler mehr auf mit Magento.GraphQl.CatalogGraphQl.ProductSearchTest.testSearchSuggestions.
  • Der testCreateProductOnStoreLevel-Integrationstest führt nicht mehr zu einer verschachtelten Transaktion in der Datenbank.

  • Die folgende Ausnahme tritt nicht mehr auf, wenn WebAPI-Tests für die Send Friend-Funktion ausgeführt werden, wenn das Produktbild in PHP 8.1 nicht festgelegt ist: exception main.ERROR: /var/www/html/lib/internal/Magento/Framework/DataObject.php:131 strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated. GitHub-34864

Übersetzungen und Gebietsschemata

  • Sie können jetzt das Inline-Übersetzungs-Tool verwenden, um dasselbe Element mehrmals zu bearbeiten. Zuvor war nur die erste Änderung enthalten, die mit diesem Tool vorgenommen wurde.
  • Die Store-Ansichtsauswahl blockiert das Übersetzungsfenster nicht mehr, wenn Sie Admin-Text oder -Kennzeichnungen bearbeiten. Sie können diese Funktionen jetzt über den Übersetzungsbereich bearbeiten, und die Benutzeroberfläche zeigt diese Änderungen an, wenn Sie auf "".
  • Das Datums-/Uhrzeitformat Admin für brasilianisches Portugiesisch und Französisch ist jetzt gültig.
  • Dem Namensvalidator wurde ein Grave Accent [`] hinzugefügt, sodass ein Kundenkonto für Vor- oder Nachnamen mit diesem Akzent erstellt werden kann.
  • Der Text auf der Zum Warenkorb hinzufügen auf der Seite mit den Produktdetails bleibt jetzt in die Sprache übersetzt, die im zugehörigen Gebietsschema angegeben ist. Übersetzungsdateien werden jetzt in entsprechende JavaScript-Dateien konvertiert, basierend auf den Bereichen, Designs und Gebietsschemata bei der translate_strategy=embedded. Zuvor wurde der Text auf Englisch zurückgesetzt, nachdem das Produkt zum Warenkorb hinzugefügt wurde.
  • Suchsynonyme berücksichtigen jetzt ihren zugewiesenen Store-Umfang. Zuvor war ein einem bestimmten Store zugewiesenes Synonym in jedem anderen Store durchsuchbar.
  • Probleme mit dem Gebietsschema der Philippinen wurden behoben. GitHub-33996

Benutzeroberfläche

  • Lange Produktnamen im Raster Katalog > Produkte werden jetzt in einem Zeilenumbruch angezeigt.
  • Der minimale und maximale Geburtsdatumsbereich wird jetzt als korrekter Zeitstempel gespeichert und dann von einem gültigen Zeitstempel in ein gültiges Datumsformat konvertiert.
  • Die Nichtverfügbarkeit von magento.com verursacht keine Leistungsprobleme mehr während der Admin-Anmeldung. Es wurde eine Zeitüberschreitung für die Anfrage zum Abrufen der Versionsbenachrichtigung hinzugefügt.
  • Die Ergebnisse der Filter für Admin-Bestellungen, Kunden und Produktraster bleiben jetzt wie erwartet erhalten, wenn sie im Chrome-Browser angezeigt werden.
  • Sie können jetzt aus der Admin-Liste einen Kunden erstellen, wenn Magento_LoginAsCustomerAdminUi aktiviert ist und Store-Ansicht für die Anmeldung bei auf manuelle Auswahl eingestellt ist. Zuvor hatte ApplicationOpen Source den folgenden Fehler ausgegeben: (Magento\Framework\Exception\LocalizedException): Unable to get Customer ID. GitHub-33096
  • Der Pfeil Weiter ist nun wie erwartet deaktiviert, wenn ein Käufer das letzte Miniaturbild in der Produktbildgalerie erreicht.
  • Das Nach Keyword suchen-Eingabefeld enthält jetzt auf der Seite Katalog > Produkt ein aria-label statt eines Platzhalters.
  • Der Link Datenschutzrichtlinie in der Admin-Fußzeile ist jetzt mit der neuen Adobe-Datenschutzrichtlinie verknüpft.
  • Administratoren können jetzt auf die Menüoptionen „Admin“ zugreifen, wenn die JavaScript-Bündelung im Produktionsmodus aktiviert ist. GitHub-35325
  • Admins können jetzt das Ablaufdatum des aktuellen Benutzers auf einen höheren Wert als 2038 setzen und den Benutzer erfolgreich speichern. Zuvor konnte sich der Benutzer, dessen Ablaufdatum geändert wurde, nach dem Abmelden nicht wieder anmelden.
  • Magento Open Source zeigt jetzt eine informative Fehlermeldung an, wenn ein Administrator versucht, eine Adresse mit übermäßigen Straßenzeilen in Admin Store > Attribute > Kundenadresse zu speichern. Der Administrator kann jetzt die zusätzlichen Adressinformationen löschen und die Adresse erfolgreich speichern. Zuvor hat ApplicationOpen Source die zusätzlichen Zeilen übergeben, aber die Daten nicht gespeichert.
  • Die Konfiguration der Produktlistenansicht in der Datenbank und im lokalen Speicher wurde aktualisiert. Benutzerdefinierte Rasteransichten werden jetzt beim Neuladen und Ändern der Ansicht der Seite gespeichert.
  • Sie können jetzt zwischen Store-Ansichten wechseln, wenn Website-Einschränkungen aktiviert sind. Zuvor verhinderten Probleme mit dem Umschalter für Store-Ansichten das Wechseln von Store-Ansichten.
  • Das Upload-Formular für das Favicon-Symbol unterstützt jetzt .ico Dateitypen. Wenn Sie zuvor versucht haben, eine Favicon-Datei mit diesem Erweiterungstyp in Admin hochzuladen, hat die Anwendung Open Source folgenden Fehler angezeigt: Warning: imagecreatefromstring(): one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully in /var/www/html/vendor/magento/module-media-storage/Model/File/Validator/Image.php on line 64. GitHub-34858
  • Es wurden Anzeigeprobleme mit dem Dropdown-Menü „Auswählen“ im Admin-Raster behoben. GitHub-35386

URL-Neuschreibungen

  • URLs für ein Produkt in einer bestimmten Store-Ansicht werden jetzt nur noch aus der url_rewrite und dem Admin entfernt, nachdem der Status der Sichtbarkeit des Attributcode für die bestimmte Store-Ansicht in "einzeln sichtbar“ wurde. Zuvor wurden alle URLs für das Produkt in der url_rewrite entfernt. GitHub-34937

Video

  • Sie können jetzt YouTube-URL-Parameter verwenden, um Page Builder zum Hinzufügen eines neuen Videos zu verwenden. Zuvor wurden diese Parameter automatisch aus der URL entfernt.
  • Sie können jetzt ein Vimeo-Video so einstellen, dass es im Hintergrund in einem banner ausgeführt wird, wenn CSP auf restrict mode gesetzt ist. Zuvor gab ApplicationOpen Source einen JavaScript-Fehler aus.

Web-API-Framework

  • Für Befehle wurde Mutex implementiert, um Wettlaufsituationen während der Aktualisierung durch gleichzeitige Anfragen zu verhindern. Zuvor führten Wettbewerbsbedingungen während gleichzeitiger REST-API-Aufrufe zu einer Überschreibung der Versandstatusinformationen in der Tabelle „Bestellte Admin-Artikel“.
  • Die Vererbung der Produktbildrolle wird jetzt beibehalten, sofern sie nicht explizit in der Payload beim Aktualisieren eines Produkts in einer bestimmten Store-Ansicht über die REST-API definiert wird.
  • Das Swagger-Schema (/rest/schema) verwendet jetzt eindeutige Vorgangs-IDs.
  • Die Regeln für den Warenkorbpreis, die über den POST /V1/salesRules/-Endpunkt erstellt wurden, behalten jetzt vorhandene Couponcodewerte bei, nachdem der Status von „Deaktiviert“ in „Aktiviert“ geändert wurde. GitHub-35298
  • Die über den POST /V1/salesRules/-Endpunkt erstellten Warenkorbpreisregeln enthalten jetzt gültige from_date- und to_date. GitHub-35265
  • CartItemInterface umfasst jetzt customizable_options. GitHub-31180
  • Massen-PUT- und DELETE-Anfragen der REST-API funktionieren jetzt wie erwartet, wenn das Magento_ReCaptchaWebapiRest aktiviert ist. GitHub-35348
  • Die Bulk-REST-API funktioniert jetzt mit der Option bySku für konfigurierbare Produkte. Zuvor wurde ein 500-Fehler zurückgegeben.
  • Das Erstellen eines neuen Sonderpreisschemas mit dem POST /V1/products/special-price Endpunkt funktioniert jetzt erwartungsgemäß. Zuvor hat der Endpunkt folgenden Fehler zurückgegeben: Future Update already exists in this time range. Set a different range and try again.
  • Der /V1/products/base-prices-Endpunkt funktioniert jetzt wie erwartet mit Katalogpreismodus - Website. GitHub-30132

Wunschliste

  • Beim Aktualisieren einer Artikelmenge auf der Wunschlistenseite wird nun die Menge auf der Produktdetailseite erwartungsgemäß aktualisiert. Die Anwendung Source öffnen nimmt nun den aktualisierten Wert aus der Produkt-URL auf und füllt das qty Feld der Produktdetailseite aus der Wunschliste selbst.

Bekanntes Problem

Problem: Admin-Benutzer können keine Bestellung erstellen oder für Kunden über die Admin neu bestellen, wenn die Braintree aktiviert ist. Wenn der Administrator auf "" "", sendet Adobe Commerce die Bestellung nicht und der system.log zeigt den folgenden Fehler an: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174. Problemumgehung: BUNDLE-3137-composer.patch ist jetzt verfügbar. Im KnowledgebaseArtikel „Admin can't create order/reorder when Braintree payment enabled finden Sie weitere Informationen zu diesem Problem und zum Zugriff auf den Patch. Eine Fehlerbehebung wird auch in Adobe Commerce 2.4.5-p1 enthalten sein.

Gemeinschaftsbeiträge

Wir danken der weiteren Magento Open Source-Community und möchten ihre Beiträge zu dieser Version würdigen.

Das Community-Engineering-Team Magento-Mitwirkende führt eine Liste der wichtigsten Mitwirkenden und Partner nach Monat, Quartal und Jahr. Auf dieser Seite Mitwirkende können Sie Links zu ihren zusammengeführten PRs auf GitHub folgen.