Versionshinweise zu Magento Open Source 2.4.6

Magento Open Source 2.4.6 führt Unterstützung für PHP 8.2 ein. PHP 8.1 wird weiterhin vollständig unterstützt, aber die Unterstützung für PHP 7.4 wurde entfernt. Sie umfasst erhebliche Verbesserungen der Leistung und Skalierbarkeit. GraphQL-Vorgänge für Massenkorb-Vorgänge und die Antwort auf das Rendern von Kategoriestrukturen wurden optimiert.

Diese Version umfasst Fehlerbehebungen und Verbesserungen in Bezug auf die Qualität. Core Composer-Abhängigkeiten und Drittanbieter-Bibliotheken wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.2 kompatibel sind.

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

Weitere Versionsinformationen

Obwohl der Code für diese Funktionen mit Versionen des Magento Open Source-Core-Codes gebündelt ist, werden mehrere dieser Projekte auch unabhängig voneinander veröffentlicht. Fehlerbehebungen für diese Projekte werden in den separaten, projektspezifischen Versionsinformationen dokumentiert, die in der Dokumentation für jedes Projekt verfügbar sind.

Highlights in Magento Open Source 2.4.6

Beachten Sie die folgenden Highlights in dieser Version.

Sicherheitsverbesserungen

Diese Version enthält acht Verbesserungen hinsichtlich der Sicherheit und der Plattform-Sicherheit.

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:

  • Lücken in den Admin-Aktionsprotokollen wurden durch eine spezifischere Prüfung von Aktionen in Rasteransichten, Massenaktionen und Exporten behoben.

  • Die reCAPTCHA-Validierung schlägt beim Checkout nicht mehr fehl, wenn während der Zahlungsverarbeitung unerwartete Fehler auftreten. GitHub-35093

  • Neue Systemkonfiguration zum Anfordern einer E-Mail-Bestätigung, wenn ein Admin-Benutzer seine E-Mail ändert. Um die Sicherheitslücke der Site zu verringern, wurde eine neue Systemkonfigurationseinstellung (standardmäßig deaktiviert) hinzugefügt, die eine E-Mail-Bestätigung erfordert, wenn ein Admin-Benutzer seine E-Mail ändert: Stores > Settings:Configuration > Customers > Customer Configuration > Account Information Options > Require email confirmation if an email has been changed. Wenn diese Option aktiviert ist, fordert das Programm jedes Mal, wenn der Administrator seine E-Mail-Adresse ändert, eine E-Mail-Bestätigung an. Diese Änderung wirkt sich auf das folgende Modul aus: Magento_Customer.

Plattformverbesserungen

Magento Open Source 2.4.6 führt Unterstützung für PHP 8.2 ein. PHP 8.1 wird weiterhin vollständig unterstützt.

Die Unterstützung für PHP 7.4 wurde aus dieser Version entfernt. Sie können Magento Open Source 2.4.6 nicht auf PHP 7.4 ausführen.

Magento Open Source unterstützt jetzt:

  • Composer 2.2.x Composer 1.x wurde entfernt.

  • Redis 7.0.x Obwohl die Kompatibilität mit Redis 6.2 weiterhin besteht, empfehlen wir die Bereitstellung dieser Version mit Redis 7.0.x, da Redis 6.2 voraussichtlich 2024 das Ende des Lebenszyklus erreichen wird.

  • OpenSearch wird jetzt als standardmäßige Suchmaschine für die Magento Open Source von lokalen und Cloud-Bereitstellungen unterstützt. Es wird als unabhängige Suchmaschine für Magento Open Source unterstützt. Diese Version unterstützt OpenSearch v2.x und wurde mit OpenSearch 2.5 getestet. Obwohl die Kompatibilität mit OpenSearch 1.x erhalten bleibt, empfehlen wir die Verwendung dieser Version mit OpenSearch 2.x. Sie können Magento Open Source und Magento Open Source 2.4.6 mit OpenSearch 2.x sowohl in Cloud als auch auf lokalen Voraussetzungen für Suchmaschinen installieren und ausführen.

  • Elasticsearch 8.x. Siehe Elasticsearch aktualisieren.

  • MariaDB 10.6 (LTS-Version). Diese Version ist weiterhin mit MariaDB 10.4 kompatibel, wir empfehlen jedoch ein Upgrade auf MariaDB 10.6.

Weitere Upgrades und Ersetzungen

  • Das DHL-Schema wurde von v6.2 auf v10.0 migriert.

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

  • Die PHP 7.4-Kompatibilität wurde aus den Codegrundlagen von Commerce und Magento Open Source entfernt.

  • Symfony-Abhängigkeiten wurden auf die neue LTS-Version aktualisiert. Abhängigkeiten umfassen:

    • friendsofphp/php-cs-fixer
    • symfony/console
    • symfony/event-dispatcher
    • symfony/finder
    • symfony/process
    • web-token/jwt-framework
  • jquery-migrate wurde aus der Codebasis von Commerce und Magento Open Source entfernt. GitHub-21406

  • jQuery/fileUpload Bibliothek auf Version 10.32 aktualisiert.

  • Komponenten des Zend-Frameworks (ZF1), die das Ende des Lebenszyklus erreicht haben, wurden aus der Codebasis entfernt. Siehe Abwärtsinkompatible Änderungen - Highlights.

  • Laminas-Abhängigkeiten wurden aktualisiert, um PHP 8.2 zu unterstützen.

  • Das Plug-in laminas/laminas-dependency-plugin Composer wurde entfernt. GitHub-36515

  • Zend_Filter durch laminas/laminas-filter ersetzt.

  • web-token/jwt-framework wurde auf Version 3.0.5 aktualisiert. (aktuelle Version)

  • allure-framework/allure-phpunit auf v2.x aktualisiert.

  • Aktualisierung der Chart-js -Bibliothek auf Version 3.9.1

Aktualisierungen der Barrierefreiheit

Der Schwerpunkt dieser Version lag auf der Schaffung einer Storefront-Erfahrung auf Venia (PWA), die wahrnehmbarer, bedienbarer, verständlicher und robuster ist. Zu diesen Verbesserungen gehören:

  • Die visuelle Textbeschriftung für die Schaltfläche "Sign in" entspricht nun dem verfügbaren Namen. (Best Practice empfiehlt, dass der barrierefreie Name eines UI-Elements mit dem sichtbaren Beschriftungstext beginnt.)
  • Schaltflächen in der Storefront wurden beschreibende barrierefreie Namen hinzugefügt.
  • Den Kontrollkästchen Has Video in Suchfiltern wurden mündliche beschreibende Beschriftungen hinzugefügt.
  • Nur-Tastatur-Benutzer können jetzt auf alle Seitenfunktionen im Storefront zugreifen. Bisher konnten Käufer nicht nur über Tastenanschläge auf Unternavigations-Links zugreifen.

Adobe Commerce-Integration mit Adobe IMS

Die folgenden Adobe IMS-Module wurden vom Adobe Commerce- und Magento Open Source-Kerncode entkoppelt und sind jetzt als separates Metapaket gepackt:

  • adobe-ims
  • adobe-ims-api
  • admin-adobe-ims

Das neue adobe-ims-metapackage v2.2.0 ist mit Adobe Commerce 2.4.6 und Magento Open Source 2.4.6 gebündelt. In dieser Version wurde keine Funktionalität geändert.

Braintree

  • Die Schaltfläche Pay Later und Banner (Nachrichten) für Italien und Spanien wurden für die Braintree aktiviert.
  • PayLater Messaging mit PayPal Vault wurde aktiviert.
  • Es wurden Betrug Protection und ACH-Webhooks hinzugefügt. Der Webhook Fraud Protection wird ausgelöst, wenn eine Risikoentscheidung im Braintree getroffen wurde. Der Web-Erweiterungspunkt ACH wird ausgelöst, wenn der Status einer ACH-Zahlung auf settled oder settlement decline aktualisiert wird.
  • Der Webhook "LPM"(Local Payment Methods) wurde hinzugefügt.

GraphQL

Zu den Leistungsverbesserungen von GraphQL gehören:

Verbesserte Antwortzeit bei Abfragen von Kategorien mit aktivierten Kategorieberechtigungen. Die Antwortzeiten bei der Abfrage von Produkten in Kategorien, für die Kategorieberechtigungen aktiviert sind und die viele Kundengruppen oder freigegebene Kataloge enthalten, wurden verbessert. Zu den Codeänderungen, die diese Leistungsverbesserung unterstützen, gehören:

  • Der GraphQL-Resolver-Vorgang wurde optimiert.
  • Der Datenanbieter setzt nicht mehr für jedes neue verarbeitete Produkt Daten im Laufzeitspeicher neu ein, was die Leistung verbessert hat.
  • Die Verarbeitung von Produktberechtigungen wurde im GraphQL-Resolver optimiert. Produktberechtigungen werden jetzt stattdessen auf Produktsammlungen pro Produkt angewendet.
  • Optimierte Berechtigungen, die in freigegebenen Katalogen in der addProductsToCart -Mutation gelesen werden.
  • Produktberechtigungen wurden mit Inline-Produktfragmenten optimiert.

Optimierte Leistung beim Rendern des Kategoriebaums. Die categoryList -Abfrage wurde optimiert, um Kunden mit einer großen Anzahl von Kategorien zu unterstützen. Bei Merchants, die diese Abfrage verwenden, um mehr als 1500 Kategorien mit bis zu fünf Ebenen verschachtelter Unterkategorien zu durchsuchen, wird eine Leistungsverbesserung festgestellt. Das Laden von untergeordneten Kategoriedokumenten durch Umgestaltungscode wurde verbessert, indem unnötige Methodenaufrufe entfernt, das Zwischenspeichern der Kategorienstruktur verbessert und Kategoriedaten rekursiv geladen wurden. Zu den Codeänderungen, die diese Leistungsverbesserung unterstützen, gehören:

  • Das Abrufen von Metadaten für benutzerdefinierte Attribute für Kategoriemodelle wurde verbessert.
  • Der Abruf der Kategorie-ID wurde verbessert und die Aufrufe von getChildren wurden reduziert.
  • Das Laden der untergeordneten Kategorie wurde verbessert.

Reduzierte Abfrageantwortzeiten für Massenkorb-Vorgänge. Die hinzugefügten Produktmutationen wurden optimiert, um die Abfrageleistung bei der Hinzufügung von bis zu 500 einfachen und konfigurierbaren Produkten zu verbessern. Paketprodukte sind nicht betroffen. Zu den optimierten Mutationen gehören addProductsToCart, addConfigurableProductsToCart, addDownloadableProductsToCart, addSimpleProductsToCart, addVirtualProductsToCart, addWishlistItemsToCart und updateCartItems.

Die Kundenabfrage unterstützt jetzt die Sortierung von Bestellungen. Das Ausgabeobjekt orders der customer -Abfrage enthält jetzt ein Sortierfeld. Sie können Bestellungen nun nach Bestellnummer oder Erstellungsdatum und in auf- oder absteigender Reihenfolge sortieren.

Neue Mutationen:

deleteCustomer

Page Builder

Page Builder Version 1.7.3 ist mit Magento Open Source 2.4.6 kompatibel.

PWA Studio

PWA Studio v.13.0.x ist mit Magento Open Source 2.4.6 kompatibel. Es enthält mehrere Verbesserungen zur Verbesserung der Barrierefreiheit. Informationen zu Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Versionskompatibilität finden Sie eine Liste der PWA Studio-Versionen und der zugehörigen Adobe Commerce-Kernversionen.

Bekanntes Problem

Problem: New Relic ist derzeit nicht mit PHP 8.2 kompatibel. Bereitstellungen, die New Relic ausführen, können Adobe Commerce 2.4.6 auf PHP 8.1 ausführen, aber nicht auf PHP 8.2. Workaround: Führen Sie Adobe Commerce 2.4.6 auf PHP 8.1 aus, bis eine neue Version von New Relic veröffentlicht wird, die PHP 8.2 unterstützt. Diese Version wird für Sommer 2023 erwartet.

Behobene Probleme

Hunderte von Problemen wurden im Kerncode der Magento Open Source 2.4.6 behoben.

Installation, Aktualisierung, Bereitstellung

  • Bei der Bereitstellung statischer Inhalte wird keine Zeitüberschreitung mehr festgestellt oder es treten bei standardmäßigen oder kompakten Implementierungen mit mehreren Gebietsschemas und Websites Fehler auf.
  • Die Kompaktstrategie verursacht keinen ungültigen Verweis auf eine externe Domäne mehr, wenn statische Inhalte bereitgestellt werden (bin/magento set:static-content:deploy -f --strategy compact).
  • Beim Ausführen von bin/magento setup:di:compile -vvv (oder mit den Optionen -v oder -vv) wird jetzt eine informative Meldung zum Fehler zurückgegeben. GitHub-35391
  • Die folgende Ausnahme wird nicht mehr von Magento Open Source ausgegeben, wenn Sie den Befehl bin/magento setup:upgrade in einer Bereitstellung ausführen, in der bereits das Datenmigrationstool ausgeführt wird: PHP Fatal error: Declaration of Migration\Logger\Logger::addRecord(int $level, string $message, array $context = []): bool must be compatible with Monolog\Logger::addRecord(int $level, string $message, array $context = [], ?Monolog\DateTimeImmutable $datetime = null): bool in /var/www/html/vendor/magento/data-migration-tool/src/Migration/Logger/Logger.php on line 34. GitHub-35604
  • Der Befehl bin/magento setup:db:status schlägt in Umgebungen mit MySQL 8.0.29 nicht mehr fehl. Zuvor wurde in der Befehlsausgabe fälschlicherweise angegeben, dass das deklarative Schema veraltet war. GitHub-35671
  • Der Befehl composer install überschreibt nicht mehr .gitignore -Dateien. GitHub-32888
  • Die Ausführung von bin/magento sampledata:remove zum Entfernen von Beispieldaten nach der Aktualisierung auf Alpine Linux schlägt mit diesem Fehler nicht mehr fehl: Undefined constant "MagentoHackathon\Composer\Magento\Deploystrategy\GLOB_BRACE. GitHub-36062
  • bin/magento setup:upgrade wird nun erfolgreich ausgeführt, nachdem composer install --no-dev zum ersten Mal ausgeführt wurde. GitHub-36351
  • Ausnahmen und Stack Trace-Einträge für Ausnahmen sind jetzt in var/log/exception.log enthalten. GitHub-36054

Magento Open Source gibt jetzt einen Fehler bei der Parametervalidierung aus, wenn Sie mit der Befehlszeile eine Redis-Verbindung ohne Kennwort einrichten.

Zugänglichkeit

  • Die Schaltflächen Proceed to Checkout, Review Order und Place Order im Checkout-Workflow funktionieren jetzt wie erwartet mit Tastatureingaben.
  • Die visuelle Anzeige des Fokus auf Schaltflächen bei Verwendung von TAB oder SHIFT + TAB zur Navigation durch Seitensteuerelemente funktioniert jetzt erwartungsgemäß.

Sprachausgaben

  • Die Bildschirmlesehilfe für die Auftragsverlaufsseite liest jetzt die richtige Bildbeschreibung.

Bildschirmlesehilfen kündigen jetzt an:

  • Gesamtzahl der in den Suchergebnissen gefundenen Elemente wie erwartet
  • Name des angemeldeten Benutzers, wenn sich ein Benutzer erfolgreich mit Tastaturbefehlen anmeldet
  • Der Seitenkopf der Produktsuchergebnisse liest jetzt den richtigen Wert für das Element <title> Element
  • Ob Eingabefelder erforderlich sind
  • Korrigieren des aktuellen Status von Akkordeonelementen (reduziert und erweitert)
  • Wenn der Seiteninhalt aktualisiert wurde, nachdem der Benutzer auf die Schaltfläche Create an account geklickt hat

Paketprodukte

  • Beim Aktualisieren des Bundle-Produkts über die API für eine bestimmte Store-Ansicht werden jetzt andere Store-Ansichtsdaten für dasselbe Bundle-Produkt nicht überschrieben. Zuvor wurden die Titel der Bundle-Produktoptionen mit dem ersten Optionstitel für andere Store-Ansichten überschrieben.
  • Gebündelte Produkte können jetzt bei Verwendung eines niederländischen Gebietsschemas erfolgreich unter Admin Catalog > Products gefiltert werden. Zuvor wurde in Magento Open Source dieser Fehler angezeigt, als Sie versuchten, nach Type: Bundle Product: Something went wrong with processing the default view and we have restored the filter to its original state zu filtern. GitHub-35704
  • Das Produktnetz löst keine Ausnahme mehr aus, wenn Bundle-Produkte einen Sonderpreis von mehr als 1000 haben. Bisher wurde folgender Fehler ausgegeben, wenn Sie entweder nach dem Produkt durch SKU oder zu Catalog > Products navigiert waren: Magento Open Source: Non Numeric value encountered. GitHub-36284)
  • Spalten in der Kreditdatei und in den PDF für die Rechnungsstellung für Bestellungen, die eine Mischung aus Bundle und einfachen Produkten enthalten, werden jetzt korrekt dargestellt. Zuvor waren Spalten verzerrt oder falsch ausgerichtet.
  • In GraphQL-Abfragen, die ein BundleProduct -Fragment enthalten, enthält das items.options.product -Objekt die erwarteten Daten. Zuvor konnte das Objekt unter bestimmten Umständen null sein.
  • Dezimalmengen für Bundle-Optionen werden jetzt korrekt wiedergegeben, wenn Quantity uses decimals aktiviert ist. Zuvor wurde nur der ganzzahlige Teil der Menge gerendert, nicht die fraktionale Komponente. Beispielsweise wurde eine Menge von 1,5 als 1,0 dargestellt. GitHub-35964
  • GraphQL-Produktabfragen geben jetzt nur noch Bundle-Produktoptionen innerhalb des abgefragten Stores zurück.
  • Produkte, die nicht Kategorien zugewiesen sind, aber Produktoptionen für Bundle oder gruppierte Produkte sind, werden jetzt in Antworten zurückgegeben, wenn die Konfigurationseinstellung Allow Category Browsing für den Kunden aktiviert ist, der die Abfrage sendet.

Cache

  • Der vollständige Seiten-Cache wird nach der Auftragserfüllung nicht mehr geleert, es sei denn, das bestellte Produkt ist nicht mehr vorrätig. Zuvor wurde der Cache für die Kategorie gelöscht, sobald eine Sendung erstellt wurde.
  • Daten werden jetzt erfolgreich zwischengespeichert, wenn der L2-Cache konfiguriert und Remote-Daten teilweise entfernt werden. Zuvor wurde nach dem Leeren nur des Daten-Caches ohne Hashes dieser Daten der neue Cache nicht gespeichert, während die Daten-Hashes vorhanden waren.
  • Es wurden Fehler in CatalogUrlResolverIdentity und CmsUrlResolverIdentity korrigiert, die das Zwischenspeichern verhinderten. Dies hatte Auswirkungen auf die Zwischenspeicherung von Routenabfragen bei mehreren Anfragen.

Warenkorb und Checkout

  • Käufer können ihrem Warenkorb jetzt einen zusätzlichen Artikel hinzufügen, wenn ihr Warenkorb die Mindestmenge des einfachen Produkts enthält.
  • REST-API-Aufrufe zum Abrufen von Warenkorbdaten geben jetzt dieselben grand_total - und base_grand_total -Werte zurück, wenn die Store-Währung und die Basiswährung identisch sind. GitHub-34649
  • Der exportierte Wert Maximum Qty Allowed in Shopping Cart entspricht nun dem Standardwert, der in der Admin-Konfigurationseinstellung festgelegt wurde.
  • Magento Open Source berechnet nun korrekt die Gesamtsumme für Rückerstattungen von Bestellungen mit einem Rabatt für den Versand.
  • Google reCAPTCHA funktioniert jetzt bei Storefront-Bestellungen wie erwartet. Bisher wurden diese Fehler von Magento Open Source angezeigt, wenn Google ReCAPTCHA nicht zuerst ausgewählt wurde, bevor ein Käufer zum ersten Mal versuchte, eine Bestellung aufzugeben: ReCaptcha validation failed, please try again und No such cart with id = ID.
  • Die CAPTCHA-Bildaktualisierung berücksichtigt jetzt die Admin-Konfigurationseinstellung und wird nicht ausgelöst, wenn die Einstellung deaktiviert ist. Zuvor wurde die Aktualisierung immer dann ausgelöst, wenn die Zahlungsmethode geändert wurde, unabhängig davon, ob die Einstellung aktiviert oder deaktiviert war. GitHub-34855
  • Magento Open Source zeigt jetzt ein Bestätigungs-Popup an, wie erwartet, bevor ein Käufer zur nächsten Seite weitergeleitet wird, wenn der Käufer die Produktmenge auf der Warenkorbseite ändert, ohne den Warenkorb zu aktualisieren, und dann versucht, zur nächsten Seite zu navigieren.
  • Käufer können nun die Menge eines Produkts aus ihrem Warenkorb verringern, nachdem es in der Admin-Konsole reduziert wurde. Zuvor gab Magento Open Source den folgenden Fehler aus, als ein Käufer versuchte, die Produktmenge zu verringern: The requested qty is not available. GitHub-35780
  • Magento Open Source gibt in der JavaScript-Konsole keinen Fehler mehr aus, wenn die Produktmenge beim Checkout mit mehreren Sendungen die konfigurierte Höchstmenge überschreitet. Stattdessen zeigt Magento Open Source jetzt eine informative Fehlermeldung an. GitHub-36184
  • Die Artikelmenge auf der Warenkorbseite wird nicht mehr als negative Zahl angezeigt, wenn ein Käufer die Abwärtspfeiltaste auf der Tastatur verwendet, um die Produktmenge zu ändern. GitHub-36299
  • Käufer können dem Warenkorb kein Produkt aus einer Kategorie mehr hinzufügen, das nun nach dem Ändern der Kundengruppe, zu der der Käufer gehört, nicht mehr zulässig ist. Magento Open Source überprüft jetzt den Zugriff auf die Kundengruppenberechtigungen für bestimmte Kategorien, wenn die Einstellungen für die Berechtigungskonfiguration geändert wurden.
  • Kunden-Warenkörbe werden nicht mehr vor der Erstellung einer Admin-Bestellung geleert und der Inhalt des Warenkorbs wird jetzt wiederhergestellt, wenn die Bestellung storniert oder abgebrochen wird. Artikel werden jetzt erst nach der Bestellerstellung aus dem Warenkorb entfernt. Bisher wurde der Warenkorb geleert, sobald ein Admin-Benutzer versucht hat, eine Bestellung auf der Seite "Warenkorb verwalten"zu erstellen.
  • Der Mini-Warenkorb zeigt nun die richtigen Produktbilder an, nachdem Sie bin/magento catalog:image:resize ausgeführt haben. Zuvor wurden alle Bilder durch das standardmäßige Produkt-Platzhalterbild ersetzt. GitHub-35535
  • Der Checkout kann jetzt erfolgreich abgeschlossen werden, wenn die Lieferadresse ein Erweiterungsattribut enthält. Zuvor gab Magento Open Source den folgenden Fehler aus: Object of class Magento\Quote\Api\Data\AddressExtension could not be converted to string. GitHub-34202
  • Die Mutation addBundleProductsToCart fügt einem Anführungszeichen keine Produkte mehr hinzu, wenn eine erforderliche Produktoption keinen Wert aufweist. GitHub-25676
  • Magento Open Source gibt jetzt eine informative Meldung zurück, wenn eine addProductsToCart -Mutation fehlschlägt, wenn ein Produkt mit unzureichenden Berechtigungen zum Warenkorb hinzugefügt wird.
  • Magento Open Source gibt keinen Fehler mehr auf der Warenkorbseite aus, wenn die Schnellbestellung verwendet wird, um ein Produkt in einer Menge hinzuzufügen, die den verfügbaren Bestand überschreitet.

Preisregel für Warenkorb

  • Die bei der Regelerstellung festgelegten kostenlosen Versandoptionen für Warenkorbpreise werden nun erwartungsgemäß auf Bestellungen angewendet. Zuvor wurden während der Regelerstellung angewendete Optionen für den kostenlosen Versand beim Checkout ignoriert und der kostenlose Versand war bei Anwendung der Regel nicht erlaubt. GitHub-35013
  • Die Spalte discount_percent der Tabelle sales_order_item für ein Produkt wird jetzt erwartungsgemäß mit dem Rabattprozentsatz gefüllt, wenn die Rabattmenge des Artikels nicht festgelegt ist oder größer oder gleich der Menge des Bestellartikels ist. Zuvor wurde diese Spalte nicht ausgefüllt, als eine Warenkorbpreisregel auf dieses Produkt angewendet wurde.

Katalog

  • Das Widget "Produktliste"zeigt keine falschen oder zwischengespeicherten Preise für einen angemeldeten Käufer mehr an. Der im Widget zur Homepage angezeigte Preis entspricht jetzt der Adresse des Käufers und wird aktualisiert, wenn der Käufer die Adresse aktualisiert. Bisher wurden die Produktpreise auf der Startseite durch den Browser-Cache nicht auf der Grundlage der Steuerregeln für Kundengruppen aktualisiert.
  • Die Funktion Produktliste vergleichen funktioniert jetzt in einer Bereitstellung auf mehreren Websites ordnungsgemäß und ist von der Website abhängig.
  • In Magento Open Source werden beim Neuladen einer Produktdetailseite keine Daten mehr von der vorherigen Seite angezeigt. Bisher wurden beim Neuladen der Produktdetailseite Daten aus der ersten Registerkarte für eine Aufspaltung mit den neu geladenen Daten zusammengeführt.
  • Kategorien mit Unterkategorien können jetzt wie erwartet im Hauptmenü auf Mobilgeräten erweitert werden. Bisher konnten Käufer keine Kategorien mit Unterkategorien in mobilen Bereitstellungen öffnen oder erweitern. GitHub-35329
  • Kategorielisten werden jetzt erwartungsgemäß aktualisiert, wenn ein Produkt einer neuen Website oder einem neuen Store zugewiesen wird. Zuvor wurde der Produktpreisindizierer nicht als ungültig markiert und anschließend bei einer Ausführung mit cron wie erwartet erneut ausgelöst. Infolgedessen fehlte der Preiseintrag des Produkts in der Preisindex-Tabelle und wurde nicht im neuen Laden oder auf der neuen Website angezeigt.
  • Die Lagerbestandsanzahl der Storefront ist jetzt genau, wenn die Konfigurationseinstellung Display Out of Stock Products aktiviert ist. GitHub-35899
  • Die Kategorieseite ist nicht mehr leer, wenn die Einstellung Allow All Products Per Page aktiviert ist. GitHub-35900
  • Die Konfigurationsoption Display Out of Stock Products funktioniert jetzt wie erwartet, wenn sie aktiviert ist. Zuvor wurden alle Produkte als nicht vorrätig im Storefront angezeigt, wenn diese Option in der Admin-Konsole aktiviert war. GitHub-35898
  • Die Produktsortierung nach booleschen Attributen funktioniert jetzt erwartungsgemäß. GitHub-36390
  • Rabatte für die Katalogpreisregel werden nicht mehr auf individuelle Produktoptionen zu Festpreisen angewendet, sondern nur auf den Originalpreis des Produkts.
  • Die Regeln für den Katalogpreis berücksichtigen jetzt den ausgewählten Umfang und werden nur auf Produkte auf Websites angewendet, für die das Attribut einen Optionswert hat, der mit der Regel übereinstimmt. Zuvor berücksichtigte die Regel nicht den ausgewählten Bereich in Multi-Site-Implementierungen. GitHub-36049
  • Die Farb- und Größenattribute der Musteroptionen werden jetzt auf der Produktdetailseite vorausgewählt, wenn ein Käufer das konfigurierbare Produkt von der Seite "Mein Warenkorb"aus ändert. (jQuery 3.x unterstützt jetzt den Widget-Namen swatchRenderer, der jetzt Binnenmajuskel-Schreibweise entspricht.) Zuvor war die Option "Muster"nicht vorausgewählt.
  • Kunden werden jetzt über Produktpreisrückgänge informiert, wenn der Kunde den Preisrückgang abonniert hat. Zuvor wurden aufgrund der Zwischenspeicherung auf Anwendungsebene nicht immer Benachrichtigungen zu Preissenkungen gesendet.
  • Katalogregeln, die auf SKUs mit der Bedingung is not one of basieren, funktionieren jetzt erwartungsgemäß.
  • Magento Open Source geht nicht mehr fälschlicherweise davon aus, dass eine Kategorie die übergeordnete Kategorie einer anderen ist, die auf dem Kategoriepfad basiert. Zuvor ging Adobe Commerce davon aus, dass die Kategorien dieselbe übergeordnete Kategorie aufweisen, wenn zwei Kategorien nebeneinander lagen und eine Kategorie-ID mit der Kategorie-ID einer anderen Kategorie beginnt. GitHub-32464

Konfigurierbare Produkte

  • Magento Open Source gibt keinen Fehler mehr aus, wenn ein Admin-Benutzer einem konfigurierbaren Produkt, dem bereits viele einfache Produkte zugewiesen sind, manuell Produkte hinzufügt. Zuvor wurde in Magento Open Source der folgende Fehler angezeigt: Something went wrong with processing the default view and we have restored the filter to its original state.
  • Käufer können in Bereitstellungen mit deaktivierten Rückbestellungen nicht mehr konfigurierbare Produkte mit einer Verkaufsmenge von 0 zum Warenkorb hinzufügen. Magento Open Source zeigt nun an, dass das Produkt nicht vorrätig ist. GitHub-35319
  • Das Erstellen eines neuen Produkts durch Importieren eines konfigurierbaren Produkts mit vielen Optionen aus einer anderen Store-Ansicht führt nun zu einer exakten Kopie des ersten Produkts wie erwartet. Zuvor war die Sortierreihenfolge der konfigurierbaren Optionen des neuen Produkts nicht korrekt, und Titel wurden in Implementierungen mit mehreren Store-Ansichten und Gebietsschemas nicht in das Gebietsschema der neuen Store-Ansicht übersetzt. GitHub-35200
  • Konfigurierbare Produkte mit allen nicht vorrätigen untergeordneten Produkten werden jetzt auf der Storefront als nicht vorrätig angezeigt.
  • Konfigurierbare Produkt-SKUs und Produktnamen werden jetzt korrekt angezeigt. Zuvor wurden Name und SKUs als nicht definiert angezeigt, nachdem Sie eine Attributgruppe über die Produktdetailgruppe auf Stores > Attribute set verschoben haben. GitHub-36309

Coupons

  • Dem Workflow "Coupon-Codes verwalten"wurde eine Validierungslogik hinzugefügt, um die Einstellungen des Coupon-Codes beim Generieren von Gutscheinen zu erzwingen. Zuvor wurde bei der Erstellung des Gutscheincodes die Einstellung Code Length ignoriert, wenn der Wert Coupon-Menge größer als 2500 war.
  • Die Prämienpunkte werden jetzt wie erwartet zum Konto eines Kunden hinzugefügt, wenn beim Checkout mit der Zahlungsmethode PayPal Express ein Prämiencoupon angewendet wird.
  • Sie können jetzt bei der Erstellung von Admin-Bestellungen einen Gutscheincode anwenden, wenn die Preisregel des Warenkorbs die Gewichtung als Bedingung hat. Zuvor wurden keine Coupon-Codes festgelegt, wenn keine anderen Felder für das Produkt ausgewählt wurden. GitHub-36271
  • Sie können jetzt Gutscheinberichte nach mehreren Warenkorbpreisregeln filtern. GitHub-36272
  • Benutzerdefinierte Optionen werden jetzt angewendet und gespeichert, wenn ein Administrator beim Konfigurieren eines Produkts mit benutzerdefinierten Optionen auf "Enter"klickt. Zuvor war es Ihnen möglich, Optionen auszuwählen und das Produkt einer Bestellung hinzuzufügen, die Optionen wurden jedoch nicht gespeichert und der Administrator wurde aufgefordert, die Produktoptionen erneut auszuwählen. GitHub-35284
  • Gutscheincodes können jetzt erfolgreich in Excel XML exportiert werden. Zuvor enthielt die generierte Datei nicht alle ausgewählten Coupon-Codes, sondern nur so viele Elemente wie in den Elementen pro Seitenauswahl ausgewählt waren.GitHub-36073

cron

  • Der Cron-Auftrag catalog_index_refresh_price wird jetzt erfolgreich ausgeführt. Zuvor hat Magento Open Source diesen Fehler während der Ausführung des Crons protokolliert: report.ERROR: Cron Job catalog_index_refresh_price has an error: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens.

Währung

  • Sowohl den Storefront- als auch den Admin-Produktpreisen wurde ein fehlender Platz zwischen den Währungssymbolen und den Preisen für benutzerdefinierte Währungen hinzugefügt. Der entsprechende Bedingungs- und Regex-Ausdruck wurde hinzugefügt, um ein benutzerdefiniertes NBSP in Währungssymbolen zu ermöglichen. Beispielsweise wurde IDRx 105.00 zuvor als IDRx105.00 angezeigt.

E-Mail

  • Magento Open Source sendet Kunden keine doppelten E-Mails mehr, nachdem eine Bestellung vom Administrator erstellt wurde.
  • E-Mails in der Reihenfolge der Administratoren werden nicht mehr gesendet, wenn die Einstellung Email order confirmation deaktiviert ist. GitHub-36256
  • Bildoptionen werden nicht mehr als HTML-Markup im Credit Memo, in der Bestellbestätigung und in der Rechnungskunden-E-Mails (Standardvorlage) für Produkte mit benutzerdefinierten Optionen angezeigt.

Frameworks

  • Admin-Benutzer können jetzt die Seite Admin Store > Configuration erfolgreich öffnen, wenn kein Land in der Einstellung Länder der Europäischen Union (Stores > Configuration > General > Country options > European Union Countries) enthalten ist. Wenn ein Administrator zuvor versucht hat, diese Seite zu öffnen, hat Magento Open Source den folgenden Fehler ausgegeben: TypeError: explode(): Argument #2 ($string) must be of type string, null given in /var/www/php/folder/vendor/magento/module-config/ViewModel/CountryFilter.php:46. GitHub-35901
  • jquery.cookie -Abhängigkeiten funktionieren jetzt wie erwartet mit JavaScript-Abhängigkeiten. Zuvor war es nicht möglich, Alias für jquery/jquery.cookie zu verwenden. GitHub-35913
  • Der Befehl bin/magento i18n:collect-phrases enthält jetzt <title> Text in der exportierten CSV-Datei. GitHub-35462
  • Magento\Framework\Code\Reader\ArgumentsReader::getParentCall() unterstützt jetzt benannte Konstruktorargumente. Sie können jetzt eine Funktion aufrufen, indem Sie die Parameter anhand ihres Namens festlegen.
  • Fehler werden nun wie erwartet in der Datei exception.log protokolliert. Bisher wurden Fehler zwar in der Datei system.log protokolliert, doch wurden Fehler nicht in var/log/exception.log protokolliert.
  • Merchants können jetzt einen benutzerdefinierten externen SMTP-Provider angeben. GitHub-26104
  • OAuth-Integrationen können jetzt bei Bereitstellungen mit Magento Open Source 2.4.3-p2 wie erwartet erneut autorisiert werden. Zuvor schlug die Neuautorisierung mit diesem Fehler fehl: The attempt to post data to consumer failed due to an unexpected error. Please try again later. Magento Open Source versuchte auch, unverschlüsselte Werte zu entschlüsseln. GitHub-35313
  • Der richtige Parameter rowId wird jetzt übergeben, wenn die Kategorie urlKey für Kategorien mit untergeordneten Kategorien gespeichert wird. Zuvor wurde beim Speichern der Kategorie URLKey der falsche categoryId übergeben.
  • Der Produktattribut-Code event wurde zur Liste der reservierten Produktattribut-Codes hinzugefügt, wodurch Fehler im Zusammenhang mit der Verwendung eines Attributs mit diesem Namen auf der Storefront beseitigt werden. Zuvor hat die Anwendung diesen Fehler auf den Seiten mit Produktdetails und Such-/Produktliste ausgegeben, wenn event verwendet wurde: report.CRITICAL: Error: Call to a member function getStatus() on string in /home/mer33515/public_html/ee24develop/magento2ee/app/code/Magento/CatalogEvent/Observer/ApplyIsSalableToProduct.php:23.
  • Fehlermeldungen bei der Storefront-Validierung, die während der Bestellplatzierung auftreten, werden jetzt konsistent angezeigt. Zuvor wurden Nachrichten angezeigt, reduziert und dann erneut angezeigt. GitHub-35651
  • AMQP-Konsumenten schlagen nicht mehr fehl, da eine veraltete trim() -Funktion für Bereitstellungen mit PHP 8.1 verwendet wird. Bisher hat Magento Open Source beim Start des AMQP-Verbrauchers nach der Installation den folgenden Fehler ausgegeben: Deprecated Functionality: trim(): Passing null to parameter #1 ($string) of type string is deprecated in .../vendor/magento/framework-amqp/Config.php on line 143. GitHub-35380
  • Die getFilteredTimerIds -Methode funktioniert jetzt wie erwartet. Klasse Magento\Framework\Profiler\Driver\Standard\Stat ist jetzt mit PHP 8.1 kompatibel. Zuvor gab Magento Open Source eine Ausnahme aus, als diese Methode aufgerufen wurde. GitHub-35307
  • Die Abhängigkeit von der imagemin-svgo -Bibliothek wurde entfernt.
  • Der Minimierungsvorlagenprozess verarbeitet jetzt erfolgreich aufeinander folgende Kommentare, wenn der erste Kommentar mit // beginnt. GitHub-34880
  • Fehlerkorrektur - Datenbankabfragen, die vom BundleGraphQl-Modul ausgegeben wurden und diesen Fehler zurückgaben: "debugMessage": "Notice: Undefined offset: 16 in vendor/magento/module-bundle-graph-ql/Model/Resolver/Options/Collection.php on line 130", wurden korrigiert.GitHub-34991

Allgemeine Fehlerbehebungen

  • In Magento Open Source wird jetzt ein genauer Zeitraum angezeigt, wenn ein Admin-Benutzer im Dashboard "Admin-Statistiken"die Option Last 24 Hours auswählt. Zuvor wurde in Magento Open Source ein falscher Zeitraum angezeigt. Dies trat auf, weil die Zeitzone der Datenbank unverändert blieb.
  • Kreditkarten können jetzt sowohl für ganze Zahlen als auch für Dezimalmengen erstellt werden. Zuvor wurden nur ganzzahlige Mengen unterstützt.
  • Die Eingabevalidierungsregel für die Postleitzahl des Kunden für den Typ Nur numerisch funktioniert jetzt wie erwartet im Feld Edit Customer Address (Store > Attribute > Customer Address). Zuvor wurden Kundenadresseinformationen ohne Postleitzahlenvalidierung gespeichert.
  • Global freigegebene Kundenkonten verfügen jetzt über Adressen, die anhand der Liste der zulässigen Länder für die aktuelle Website validiert und erfolgreich gespeichert werden. Bisher wurden diese Konten fälschlicherweise für die zulässigen Länder der Website validiert, auf der der Kunde registriert wurde.
  • Breadcrumbs aus der CMS-Seitenhierarchie werden nicht mehr angezeigt, wenn Enable Hierarchy Functionality deaktiviert ist. Zuvor wurden Breadcrumbs angezeigt, und als Käufer darauf klickten, wurde eine 404-Seite angezeigt. GitHub-35513
  • Wenn Sie ein Produkt über den Admin von allen Websites entfernen, wird der folgende Fehler nicht mehr ausgegeben: SQLSTATE[42000]: Syntax error or access violation. GitHub-35133
  • Kunden, die die maximale Anzahl fehlgeschlagener Anmeldeversuche überschreiten, können sich jetzt nach dem Zurücksetzen des Kennworts anmelden. GitHub-34981
  • Die Komponente "Dynamische Zeilen"verhält sich nun erwartungsgemäß, wenn ein Administrator ein neues Element hinzufügt. Zuvor verhielt sich die Zeilenkomponente falsch, wenn einem gruppierten Produkt ein neues einfaches Produkt hinzugefügt wurde. GitHub-34850
  • Tippfehler und falsche Grammatik in der Datei app/code/Magento/Backend/etc/menu.xsd korrigiert.
  • Die Datei app/code/Magento/Authorization/README.md wurde aktualisiert, um die Erstellung von Tabellen genau zu beschreiben.
  • Die recordLogin -Methode wurde aktualisiert, um Anmeldewerte für das Benutzermodell festzulegen und die korrekten Werte in den Feldern logdate und lognum der Tabelle admin_user beizubehalten. Bisher wurden keine Anmeldeversuche für aktualisierte Admin-Benutzer aufgezeichnet.
  • GitHub-Problemvorlagen wurden in Problemformulare für Entwicklererlebnisse und Funktionsanforderungen konvertiert.
  • Das Kundenattribut "Is required" ist nun entsprechend dem Website-Umfang für das Bearbeitungsformular für den Admin-Kunden ordnungsgemäß implementiert.
  • Das Feld Grid Filter Condition Type der Kunden- und Kundenadressattribute wird nicht mehr auf der Attributbearbeitungsseite angezeigt, wenn die Einstellung Use in Filter Options deaktiviert ist.
  • Magento Open Source zeigt jetzt eine informative Fehlermeldung an, wenn ein Händler beim Erstellen eines Produkts keinen optionalen SKU-Attributwert eingeben kann. Zuvor hatte die Anwendung diese Ausnahme ausgelöst, wenn das Attribut optional war: Deprecated Functionality: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/html/mg244/project-community-edition/vendor/magento/module-eav/Model/Entity/AbstractEntity.php on line 932. GitHub-35810
  • Der Filter Show my quotes auf der Seite My Quotes funktioniert jetzt erwartungsgemäß. Zuvor enthielten die Filterergebnisse die Anführungszeichen anderer Admin-Benutzer.

GraphQL

  • Types, die mehrere Schnittstellen im GraphQL-Code implementieren, können jetzt gemäß der GraphQL @doc-Spezifikation durch ein &-Zeichen sowie durch , getrennt werden.
  • Die setShippingAddressesOnCart -Mutation unterstützt jetzt das Festlegen von numerischen Regionscodes als region. Zuvor funktionierte diese Mutation für numerische Regionscodewerte falsch.
  • Die products -Abfrage gibt jetzt nur Überprüfungen zurück, die mit dem angegebenen Bereich verknüpft sind. Zuvor wurden bei Abfragen Bewertungen aus allen Stores zurückgegeben.
  • Kategorieberechtigungen werden jetzt bei GraphQL-Anfragen berücksichtigt.
  • Die customer -Abfrage filtert jetzt korrekt nach Bestellungen mit einem bestimmten from - und to -Bereich. GitHub-31537
  • Die product -Abfrage gibt jetzt korrekte Kategoriedaten in der Aggregation zurück. Zuvor gab attribute_code.category_uid den Wert von category_id anstelle von category_uid zurück.
  • Die customerOrders -Abfrage gibt keinen \"model\" value should be specifiedFehler mehr aus. GitHub-35852
  • Die customer -Abfrage filtert jetzt Bestellungen basierend auf dem Umfang. Sie können jetzt angeben, ob die Abfrage Bestellungen nach Store, Website oder global filtern soll.
  • Die categoryList -Abfrage gibt jetzt eine genaue Produktanzahl für sowohl verankerte als auch nicht verankerte übergeordnete Kategorien zurück. Das neue Attribut is_anchor wurde der Liste der Spalten für die Kategoriensammlung hinzugefügt. Zuvor wurde bei Anfragen eine Produktanzahl von 0 zurückgegeben. GitHub-36300
  • Die generateCustomerTokenAsAdmin -Mutation funktioniert jetzt wie erwartet, wenn ein Token erstellt wird, um sich bei einem nicht standardmäßigen Store in einer Bereitstellung mit mehreren Stores anzumelden. GitHub-35084
  • Die Mutation createEmptyCart löst jetzt eine Ausnahme wie erwartet aus, wenn ein abgelaufenes Token verwendet wird. GitHub-26112
  • Fehlermeldungen zu Warenkorbanfragen wurden informativer gestaltet. GitHub-34546
  • Aggregationsdaten in der Antwort einer products -Abfrage enthalten jetzt korrekte Werte für die Preistyp-Attribute attribute_code und label. GitHub-28878
  • Die products -Abfrage gibt Kategorieinformationen wie erwartet zurück, wenn das Datenbankpräfix einen Wert ungleich null hat. Zuvor wurde ein Internal server error zurückgegeben. GitHub-36117
  • Der Rückgabetyp für die getCustomerIsGuest -Methode wurde korrigiert. GitHub-29529
  • Das Plug-in Magento\CatalogGraphQl\Plugin\DesignLoader wurde umgestaltet.
  • Eine Neuladung des Warenkorbs wird jetzt nur einmal wie erwartet ausgelöst, wenn der Warenkorb von GraphQL-Mutationen initialisiert wird. Zuvor führte das Laden des Warenkorbs zu einer unnötigen Überprüfung des Warenkorbs gegenüber dem Lagerbestand, der bei jedem Laden des Warenkorbs erhebliche Ressourcen verbrauchte.
  • Der gift_message-Typ wurde zum OrderItemInterface hinzugefügt. GitHub-29418
  • Die in GraphQL-Antworten zurückgegebenen Produktoptionen enthalten jetzt nur die Produkte, die sich im Katalog befinden, zu dem der Benutzer gehört. Wenn der Benutzer zu einem freigegebenen Katalog gehört, werden nur Produkte in freigegebenen Katalogen zurückgegeben. Wenn der Benutzer ein Gast ist oder nicht Teil eines benutzerdefinierten freigegebenen Katalogs ist, werden nur Produkte im öffentlichen Katalog zurückgegeben.

Google ReCAPTCHA

  • Ein reCAPTCHA-Fehler in der Datei var/log/exception.log für die Google V3-reCAPTCHA-Administratoranmeldung wurde behoben, und es werden keine Fehlermeldungen protokolliert. Zuvor wurde der folgende Fehler alle paar Sekunden ausgegeben, wenn ein Admin-Benutzer seine Einstellungen Configuration > Security > Google reCAPTCHA Admin Panel konfiguriert hat: main.ERROR: Can not resolve reCAPTCHA parameter. {"exception":"[object] (Magento\Framework\Exception\InputException(code: 0): Can not resolve reCAPTCHA parameter. at /home/xxxxxxx/public_html/vendor/magento/module-re-captcha-ui/Model/CaptchaResponseResolver.php:25)"} []. GitHub-34975

Bild

  • Die Empfehlungen zur Logogröße für PDF Invoice Slide wurden aktualisiert.

Import/Export

  • Der Import eines Produkts mit demselben numerischen URL-Schlüssel wie ein vorhandenes Produkt, jedoch ohne das terminale alphabetische Zeichen, führt nicht mehr zu einem Validierungsfehler, wenn der Wert Product URL Suffix im Admin auf "leer"gesetzt ist.
  • Der Befehl bin/magento app:config:importimportiert jetzt erfolgreich den Inhalt einer config.php -Datei, wenn er bestimmte cron -Ausdrücke enthält. Zuvor schlug der Import mit diesem Fehler fehl: Import failed: Notice: Trying to access array offset on value of type null in [..]/vendor/magento/module-config/Model/Config/Backend/Currency/Cron.php on line 66. GitHub-31428
  • Der vollständige Export funktioniert jetzt ordnungsgemäß, wenn AWS S3 als Remote-Speicher verwendet wird. Zuvor war der Export aufgrund der Größe der hochgeladenen Datei fehlgeschlagen.
  • Der Produktstatus wird jetzt korrekt importiert, wenn Lagerbestandsdatenspalten in der CSV-Datei fehlen. Zuvor wurde dem Produkt nach dem Produktimport automatisch eine Standardquelle zugewiesen, die Menge auf null gesetzt und der Status wurde als nicht vorrätig angezeigt, wenn Lagerbestandsdatenspalten in der CSV-Datei fehlten.
  • Durch den Import von Werten für die Vorauszahlung erhalten Sie jetzt die richtige Anzahl für neue und aktualisierte Datensätze, wenn der Import mehr als 100 Datensätze enthält. Zuvor wurde bei der Import-Erfolgsmeldung die falsche Anzahl angegeben.
  • Exportierte CSV-Dateien enthalten jetzt korrekte Pfade zu Kategorienamen, die in mehreren Sprachen gespeichert werden. Für die Kategoriensammlung wurde eine Store-ID hinzugefügt. Zuvor enthielten die exportierten Dateien gemischte Pfade mit verschiedenen Sprachen anstelle eines Kategoriepfads, der von der standardmäßigen Store-Ansicht abgeleitet wurde.
  • Die Aktualisierung benutzerdefinierter Optionen für ein Produkt in einer bestimmten Store-Ansicht über den Import ist jetzt erfolgreich abgeschlossen. Zuvor wurde ein interner Server-Fehler ausgegeben, wenn produktbezogene Zeilen in mehrere Batches aufgeteilt wurden.
  • Der Importdienst Fixer.io funktioniert jetzt erwartungsgemäß. Die Währungsraten werden jetzt erfolgreich importiert. GitHub-36010

Index

  • Die Neuindizierung des Preises wird jetzt erfolgreich ausgeführt, wenn der Katalog Bundle-Produkte enthält, keiner Website zugewiesen sind. Zuvor trat der folgende Fehler auf, wenn der Produktpreisindex ausgeführt wurde: Warning: Undefined array key <bundel product id > in vendor/magento/module-bundle/Model/ResourceModel/Indexer/Price/DisabledProductOptionPriceModifier.php on line 117. GitHub-35796

Infrastruktur

  • Probleme mit dem Drittanbieter-Modul colinmollenhour/php-redis-session-abstract und PHP 8.1 wurden behoben. GitHub-35634

Bestellung

  • Das im Installationsskript übergebene Bestellpräfix wird jetzt korrekt zur Bestell-ID hinzugefügt.
  • Die Bestelldetailseite wird jetzt erfolgreich geladen, wenn die Bestellung ein Produkt mit einem langen benutzerdefinierten Textwert enthält. Zuvor wurde die Seite mit den Bestelldetails nicht geladen und der Wert in der Spalte sales_order_item.product_options wurde nicht ordnungsgemäß gespeichert, wenn ein Produkt einen langen Wert für eine benutzerdefinierte Textoption enthielt.
  • Der Status der Storefront-Bestellungen ist nun für teilweise rückerstattete Bestellungen korrekt. Zuvor blieb die Bestellung nach dem Versand, als eine teilweise Erstattung vorgenommen wurde, im Verarbeitungsstatus. GitHub-35528
  • Die Kundengruppe wird nun für eine von einem Gastbenutzer erstellte Bestellung genau als Nicht angemeldet dargestellt. Zuvor war die Kundengruppe in Zusammenfassung von Gastbestellungen NULL, was sich auf Bestätigungs-E-Mails und den Bestellexport auswirkte. GitHub-35440
  • Der Status "Closed" wird virtuellen Bestellungen nun wie erwartet zugewiesen, nachdem ein Kreditmemo ausgestellt und der Kunde zurückerstattet wurde. Zuvor wurden virtuelle Produkte als Complete in der Dropdown-Liste Status angezeigt, während Closed in der Fußzeile der Bestellkommentare angezeigt wurde, wenn der Kommentar vom Administrator hinzugefügt wurde. GitHub-35283
  • Gäste können jetzt Bestellungen für Produkte mit einer Menge von weniger als 1 tätigen, und die Produktmenge ist jetzt streng in float eingetragen. Da die Produktmenge zuvor nur strikt als int eingegeben wurde, schlugen Bestellungen für eine Produktmenge von weniger als einer mit der folgenden Meldung fehl: Some of the products are disabled. GitHub-36060
  • Versanderstattungen werden jetzt korrekt berechnet, wenn die Konfigurationsoption Apply discount on prices auf including taxes gesetzt ist.
  • Rechnungen, Sendungen und Credit-Memo-Raster werden jetzt asynchron aktualisiert, nachdem Bestellungen archiviert wurden.
  • Doppelte Bestellungen resultieren nicht mehr aus gleichzeitigen, identischen GraphQL-Anforderungen. Anführungszeichen werden jetzt bis zu 10 Sekunden gesperrt, um die Erstellung doppelter Bestellungen zu verhindern. Die zweite Anforderung schlägt mit den folgenden Fehlern fehl: The cart isn't active oder The order has already been placed and is currently processing. Dieser Sperrwert kann über Di für den Parameter Magento\Quote\Model\PlaceOrderMutex class lockWaitTimeout konfiguriert werden. GitHub-36274
  • Die Firmenattributwerte werden jetzt wie erwartet in den Abschnitten Rechnungsstellung und Lieferadresse des Checkout-Workflows angezeigt. Zuvor wurden Unternehmensattribute nicht ordnungsgemäß auf der Detailseite für Bestellungen angezeigt, da Stores bei der Bestellerstellung nicht ordnungsgemäß festgelegt wurden. Attributwerte wurden nur dann korrekt gespeichert, wenn die Eigenschaft Unternehmen anzeigen in Bereitstellungen mit mehreren Stores auf optional für Hauptwebsite gesetzt wurde.
  • Der customer_address_id -Wert wird jetzt für eine neue Abrechnungsadresse wie erwartet festgelegt, wenn das Kontrollkästchen My billing and shipping address are the same aktiviert ist. Es wurde eine zusätzliche Bedingung eingeführt, um festzustellen, ob die Abrechnungsadresse mit der Versandadresse übereinstimmt, bevor die Kunden-Adressen-ID für die Lieferadresse festgelegt wurde.
  • Es wurden Probleme bei der Gleichzeitigkeit mit der Bestellplatzierung behoben. Wenn zuvor zwei Bestellungen von verschiedenen Browsern zur gleichen oder nahezu zur gleichen Zeit aufgegeben wurden, wurde beiden Bestellungen dieselbe Bestell-ID zugewiesen. GitHub-35833
  • Die Platzierung einer automatisch berechneten Bestellung für ein kostenloses Produkt, wenn die asynchrone Indizierung aktiviert ist, funktioniert jetzt erwartungsgemäß. Für diese Bestellungen werden der Tabelle sales_order_grid or sales_invoice_grid keine Einträge hinzugefügt. Zuvor gab Magento Open Source eine Ausnahme zurück, da die Anwendung versucht hat, die Raster während der Bestellplatzierung zu indizieren, anstatt sich auf cron zu verlassen. GitHub-36334

Zahlungsmethoden

  • Die CSB-Zahlungsmethode wird nicht mehr im Storefront-Checkout-Workflow gerendert, wenn CSB für das in den Versand- und Rechnungsadressen angegebene Land ausgenommen ist. Zuvor wurden die Konfigurationseinstellungen für Admin für diese Funktion nicht implementiert.
  • Vault-Zahlungsinformationen werden nicht mehr im Zahlungsabschnitt des Workflows zur Auftragserstellung für Administratoren angezeigt, wenn der Käufer kein Token gespeichert hat. GitHub-33954
  • Benutzerdefinierte Preise werden nicht mehr verdoppelt, nachdem ein Rabatt von der Warenkorbpreisregel angewendet wurde. GitHub-35154
  • Der neue Status "Bestellungen ausstehend"wird jetzt erwartungsgemäß berücksichtigt, wenn eine Bestellung mit der Zahlungsmethode "Null Subtotal Checkout"aufgegeben wird.
  • Die E-Mail-Einstellungen von Gastkunden werden jetzt bei der Auftragserstellung für einen Gastkäufer mit PayPal Express über GraphQL berücksichtigt. Zuvor wurde der E-Mail-Adresssatz durch die im PayPal-Konto festgelegte E-Mail-Adresse überschrieben.

Braintree

  • Auftrags-IDs werden jetzt zu den Abwicklungsanfragen für Zahlungsvorgänge hinzugefügt.
  • Die Magento Open Source löst nicht mehr den folgenden Fehler aus, wenn ein Händler auf Reports > Braintree Settlement: Error: Undefined constant Braintree\PaymentInstrumentType::ANDROID_PAY_CARD in /var/www/html/vendor/paypal/module-braintree-core/Ui/Component/Report/Listing/Column/PaymentType.php:49 klickt. GitHub-35434
  • Die customerPaymentTokens -Abfrage gibt keine Braintree-Token mehr zurück, wenn der Vault beim Administrator deaktiviert ist.
  • Die Schaltfläche Pay Later und die Banner wurden für Italien und Spanien aktiviert.
  • Admin-Benutzer können jetzt eine Bestellung erstellen oder neu anordnen, wenn die Braintree-Zahlungsmethode aktiviert ist. Zuvor gab Magento Open Source den folgenden Fehler aus: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174.
  • Checkout mit der Braintree-Zahlungsmethode wird jetzt erfolgreich abgeschlossen, wenn Braintree PayPal aktiviert und Enable Card Payments deaktiviert ist. Zuvor wurde die Fortschrittsleiste nie aufgelöst und in der Magento Open Source wurde der Konsolenfehler adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66) angezeigt. GitHub-35961
  • Betrug-Schutz, ACH-Zahlung und lokale Zahlungsmethode-Web-Hooks wurden implementiert. Der Webhook Betrugsschutz wird nur ausgelöst, wenn eine Risikoentscheidung in der Braintree getroffen wurde. Der ACH-Webhook wird erst ausgelöst, nachdem eine ACH-Zahlung auf settled oder settlement decline aktualisiert wurde.
  • Die Konfigurationsfelder Tagline und Layout wurden aus allen PayPal Schaltflächen im Abschnitt "Admin Styling"entfernt.
  • Die Option Braintree Vault-Zahlungsmethode bleibt im Checkout-Workflow ausgewählt, wenn ein Käufer seine Rechnungsadresse aktualisiert. Zuvor war die Zahlungsmethode deaktiviert, als der Käufer die Schaltfläche My billing and shipping address are the same deaktiviert hatte.
  • Zeilenelemente werden jetzt für PayPal-Transaktionen übergeben, wenn die Konfigurationseinstellung Send Line Items vom Admin aktiviert ist.
  • Die Validierungslogik für das Feld ACH-Zahlungsmethode Account Number unterstützt jetzt vierstelligen bis siebzehnstelligen Text.
  • Die customerPaymentTokens -Abfrage gibt keine Braintree-Token mehr zurück, wenn der Vault vom Administrator deaktiviert wurde.
  • Admin-Benutzer können jetzt eine Bestellung erstellen oder Kunden neu anordnen, wenn die Braintree-Zahlungsmethode aktiviert ist. Zuvor gab Magento Open Source diesen Fehler aus: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174
  • Käufer können jetzt die Braintree-Zahlungsmethode in Storefronten verwenden, in denen Enable Card Payments deaktiviert wurde. Zuvor hatte Magento Open Source diesen JavaScript-Fehler ausgegeben: _adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66).

Leistung

  • Der Preisindexer löscht jetzt veraltete Daten wie erwartet, nachdem er Datensätze bei der partiellen Neuindizierung großer Kataloge ersetzt hat. Zuvor wurden bei der Neuindizierung veraltete Datensätze entfernt, bevor sie ersetzt wurden, was dazu führte, dass Produkte gelegentlich vorübergehend aus dem Speicher verschwanden. GitHub-35616
  • Die Leistung des Befehls bin/magento/setup:upgrade wurde verbessert. Zuvor wurden mit diesem Befehl die Datenbankfehler neu erstellt, was während der Befehlsausführung zu erheblichen Ausfallzeiten führte. Außerdem kehrten die Indexer nicht zum geplanten Modus zurück und blieben im Speichermodus. GitHub-33386
  • Die Aktualisierung der Stufenpreise nach API wird jetzt schneller ausgeführt. Zuvor führte die Aktualisierung der Stufentarife zu unnötigen SELECT Abfragen, die die Ausführung verzögerten, wenn einem Produkt viele Kundengruppen zugewiesen wurden.
  • Das Laden von Seiten, die die Produktliste des Katalog-Widgets enthalten, wurde optimiert. Zuvor wurden nicht globale Attribute direkt aus der Datenbank geladen.

Berichte

  • Die Daten für den Bestellsummenbericht von und bis werden jetzt nach der Auswahl aus der Datumsauswahl korrekt angezeigt.
  • Die ANDROID_PAY_CARD -Konstante in Braintree/Ui/Component/Report/Listing/Column/PaymentType.php hat GOOGLE_PAY_CARD ersetzt. Dadurch werden Probleme mit dem Braintree-Bericht behoben.

Überprüfungen

  • Admin-Benutzer mit eingeschränktem Zugriff auf einen bestimmten Bereich können nun Produktüberprüfungen wie erwartet löschen.

Rollen

  • Es wurde eine fehlende ACL für Stores > Configuration > Services > OAuth hinzugefügt. Zuvor war es nicht möglich, den Zugriff auf diese OAuth-Konfigurationseinstellung beim Einrichten von Rollenberechtigungen zu definieren.

Suche

  • Die Suche nach Zeichenfolgen in Anführungszeichen funktioniert jetzt erwartungsgemäß, wenn die Konfigurationseinstellung Minimum Terms to Match aktiviert ist. Zuvor gab Magento Open Source den folgenden Fehler aus: {"error":{"root_cause":[{"type":"parsing_exception","reason":"[match_phrase] query does not support [minimum_should_match]' ....
  • Der Suchfilter Abonnierter Punkt für Kundendatensätze im Kundenraster für Verkaufsaufträge funktioniert jetzt bei der Auftragserstellung erwartungsgemäß.
  • Die Qualität der Suchvorschläge für Abfragen mit mehreren Wörtern wurde verbessert.
  • Die Suchergebnisse enthalten jetzt Ausgabe von nicht vorrätigen Optionen für alle verfügbaren Produkte, wenn Display Out Of Stock Products aktiviert ist GitHub-36055

Versand

  • Die Versandraten für FedEx, USPS und UPS werden korrekt berechnet, wenn die Regel "Kostenloser Warenkorb"so eingestellt ist, dass nur eine Teilmenge der Artikel im Warenkorb übereinstimmt.
  • Auf der Admin-Versandseite wird die Option für den kostenlosen Versand nicht mehr angezeigt, wenn die Bestellsumme unter dem angegebenen Mindestbestellbetrag liegt, der für den kostenlosen Versand infrage kommt. GitHub-33697
  • Magento Open Source berücksichtigt jetzt die Konfigurationseinstellung für den Admin-Kunden Show Company bei der Anzeige der Versand- oder Kundenadresse. Wenn diese Einstellung deaktiviert ist, ist die Versandunternehmen nicht mehr im Versand-, Kunden- oder Datenbankauftragsdatensatz enthalten. Zuvor wurden die Informationen trotz der Einstellung der Deaktivierung angezeigt. GitHub-33729
  • Es wurde ein überflüssiger Speichervorgang für Anführungszeichen bei der Schätzung des Versands entfernt.
  • Der Gültigkeitsbereich storeId wird jetzt direkt von $request->getStoreId() angewendet, um sicherzustellen, dass der Umfang nicht verloren geht, wenn ein Anführungszeichen von einem Administrator erstellt wird. Zuvor traten bei Versandmethoden gelegentlich Probleme auf, wenn vom Administrator mithilfe von Drittanbietermodulen ein Angebot erstellt wurde.
  • SEO-freundliche URLs werden jetzt für Produkte generiert, deren Einstellung url_key auf der Store-Ansichtsebene überschrieben wird. Zuvor wurden Kategorieprodukt-URLs nicht an SEO-freundliche URLs umgeleitet.
  • Magento Open Source gibt keinen Mindest-Bestellzahlfehler mehr aus, wenn ein Rabatt auf Versandkosten angewendet wird.
  • Versanderstattungen werden jetzt korrekt berechnet, wenn die Steuer nach Anwendung eines Rabatts auf den Versand erhoben wird.
  • Alle anwendbaren Promotions für einen angeforderten Warenkorb über die GraphQL cart -Abfrage werden zusammen zurückgegeben. Promotions beinhalten Zeilenumbruchrabatte, Warenkorbregeln/-Rabatte, Gutscheine, Geschenkkarten und Gutschriften. GitHub-35545
  • Die Typen price_excl_tax und price_excl_tax wurden zur Ausgabe der setShippingMethodsOnCart-Mutation hinzugefügt. GitHub-31206
  • In GraphQL-Antworten werden jetzt eindeutige Versandkennungen wie erwartet mit Versanddetails für Bestellungen übergeben, die für GraphQL-Abfragen an mehrere Adressen gesendet werden.

Steuern

  • Die Konfigurationseinstellung Display Zero Tax Subtotal wird jetzt wie erwartet auf Bestellungen in Bereitstellungen angewendet, die mehrere Versandmethoden bieten. Zuvor war das Nullsteuerfeld während des Checkout auf der Warenkorbseite sichtbar, bevor eine Versandmethode ausgewählt wurde, auch wenn diese Einstellung deaktiviert war. GitHub-35561
  • Magento Open Source kann nun in PHP 8.1-Bereitstellungen auf der Kategorieseite für Storefront gruppierte Produkte mit Steuern anzeigen. Zuvor zeigte Magento Open Source keine Produktliste an und gab folgende Ausnahme zurück: main.CRITICAL: Exception: Deprecated Functionality: ucfirst(): Passing null to parameter #1 ($string) of type string is deprecated in /var/www/m24/vendor/magento/module-tax/Pricing/Render/Adjustment.php on line 188 in /var/www/m24/vendor/magento/framework/App/ErrorHandler.php:61. GitHub-35500
  • Merchants können eine geplante Aktualisierung nicht mehr in eine andere Aktualisierung verschieben, die dieselbe Regel-ID enthält. Zuvor wurden bei der Planung von Aktualisierungen für Warenkorbpreisregeln doppelte Zeitpläne erstellt, wenn eine Aktualisierung in eine andere Aktualisierung verschoben wurde, die dieselbe Regel-ID enthielt.
  • Die automatische Kundengruppenzuweisung funktioniert jetzt, wenn der Kundenadresse keine Mehrwertsteuer-ID zugeordnet ist. Wenn die Anschrift keine MwSt.-ID enthält, wird sie als ein nicht mehrwertsteuerpflichtiger Kunde behandelt und die Magento Open Source ändert die Kundengruppe in eine Nicht-MwSt.-Gruppe. Zuvor wurde bei Aktivierung von Enable Automatic Assignment to Customer Group das Kundenkonto nicht automatisch der customerGroup zugewiesen, wenn die MwSt.-ID aus dem Kundenkonto gelöscht wurde.
  • Die richtigen dynamischen Blöcke werden nun für gestaffelte Katalogregeln im Staging-Vorschaumodus angezeigt. Zuvor wurden nicht verwandte dynamische Blöcke angezeigt.
  • Mehrere Steuern werden jetzt im Abschnitt "Steuerzusammenfassung"von Rechnungen und Kreditkarten korrekt dargestellt, wenn während des Checkouts mehrere Sendungen durchgeführt werden.
  • Rabatte werden nicht mehr angewendet, wenn eine Bestellteilsumme einschließlich Steuern und Festproduktsteuerbetrag die Bedingung der Warenkorbregel auf der Warenkorbseite überschreitet. Zuvor wurden Rabatte auch dann gewährt, wenn die Gesamtsumme die Bedingung der Warenkorbregel überschritt.
  • Sie können jetzt einen vat_id angeben, wenn Sie mit GraphQL die Adresse eines Gastkäufers hinzufügen oder aktualisieren.

Test

  • Fehler bei Komponententests für verschiedene Versionen der Bibliotheken ICU und libxml behoben.
  • Entwickler können das System jetzt anweisen, eine Datenbearbeitung in einer bestimmten Store-Ansicht auszuführen. Der neue optionale Parameter scope akzeptiert eine string, die dem Store-Fixierungs-Alias entspricht.
  • Es wurde die Möglichkeit hinzugefügt, mithilfe des optionalen Parameters count mehrere Instanzen eines Datenerfassungssystems zu generieren.
  • Die nicht native array_first -Funktion wurde aus dev-Abhängigkeiten im MFTF-Framework entfernt.

Übersetzungen und Gebietsschemata

  • Die Inline-Übersetzung funktioniert jetzt ordnungsgemäß mit Sonderzeichen, einschließlich erweiterter Unicode-Zeichen in Ausdrücken, die sich in SCRIPT-Tags befinden. Bisher wurden japanische Zeichen bei Verwendung von Inline-Übersetzungen im bearbeiteten Skript falsch gerendert.
  • Das Zeichen ñ in einem Produktnamen wird jetzt bei der Generierung des URL-Schlüssels in n umgewandelt.
  • Die Ausgabe der laufenden bin/magento i18n:collect-phrases enthält jetzt wie erwartet E-Mail-Vorlagenübersetzungen in depend -Konstrukten. GitHub-35449
  • Japanische Zeichen können jetzt direkt in den Attributsatz der Produktseite eingegeben werden (Kombinationsfeld). Zuvor führte die direkte Eingabe von japanischen Zeichen in dieses Kombinationsfeld zu geänderten oder gelöschten Zeichen bei der Ausführung des Firefox-Browsers in MacOS. Das Attribut textInput HTML, das die japanische Zeichenkonvertierung in allen Browsern besser handhaben kann, hat die Attribute Value und valueUpdate ersetzt.
  • Die getOptions -Methode ruft nun die price -Attributbeschriftungswerte basierend auf der Store-Ansicht korrekt ab. Zuvor wurde das Attribut price bei GraphQL-Vorgängen für die falsche Store-Ansicht übersetzt.

Benutzeroberfläche

  • Website-spezifische Währung wird nun wie erwartet für die Spalten "Sonderpreis", "Kosten"und "MSRP"im Admin-Produktraster verwendet. Zuvor wurde das richtige Währungssymbol nicht im Produktraster des Admin-Katalogs angezeigt, wenn nach der Store-Ansicht nach einem Sonderpreis gefiltert wurde.
  • Die Drag-and-Drop-Funktion für benutzerdefinierte Produktoptionen funktioniert jetzt erwartungsgemäß. Sie können jetzt eine anpassbare Option von einer Seite auf eine andere verschieben, wenn im anpassbaren Optionsraster mehrere Seiten verfügbar sind.
  • In Admin-Dashboard-Diagrammen werden jetzt YTD-Zeitintervalle vom Anfang des aktuellen Kalenderjahres bis zum aktuellen Datum wie erwartet angezeigt. Zuvor umfassten Datumsbereiche über 12 Monate.
  • Auf der Storefront-Startseite wurde ein fehlendes Standard-Favicon hinzugefügt. GitHub-35493
  • Der Administrator zeigt nun erfolgreich das aktuelle Anmeldedatum der einzelnen Admin-Benutzer an. Bisher wurde bei der erstmaligen Anmeldung eines Admin-Benutzers beim Administrator im Admin-Benutzerraster ein leerer Wert für das Anmeldedatum angezeigt.
  • Die Vorschaufunktion für E-Mail-Vorlagen (Marketing > Communications > Email Templates) zeigt Vorlagen jetzt korrekt an. Zuvor wurde das Vorschaubild abgeschnitten. GitHub-35697
  • Die new-shipping-address-modal -Klasse wurde hinzugefügt, um die Formatierung des neuen Versandadressen-Modals zu unterstützen.
  • Es wurde informativer Text unter dem Eingabefeld Storefront Properties des Search Weight-Attributs unter Admin Stores hinzugefügt. > Attributes > Product.
  • Die E-Mail-Vorschau wird jetzt in einem separaten Tab anstatt in einem Popup-Fenster geöffnet, das eine umfassendere Ansicht des E-Mail-Inhalts bietet. Zuvor war der E-Mail-Inhalt abgeschnitten.
  • Die Filterfunktion für das Benutzerrollenraster (Admin System > Permissions > User roles > Administrators) funktioniert nun erwartungsgemäß. Der Array-Wert wird jetzt separat verarbeitet. Bisher wurde bei der Eingabe einer Abfrage in dieses Raster dieser Konsolenfehler von Magento Open Source ausgegeben und die Seite wurde nicht geladen: Uncaught TypeError: Cannot read properties of null. GitHub-35993
  • Beim Erstellen eines Kunden mithilfe der REST-API wurde eine Validierung auf Attributwerte hinzugefügt. Der Erstellungsprozess schlägt jetzt fehl, wenn ungültige Attributwerte angegeben werden. Zuvor gab es keine Validierung für das Geschlecht, was kein erforderliches Feld ist. Bei der Kundenerstellung wurde der für das Geschlecht übergebene Wert in der Tabelle customer_entity gespeichert.
  • Adressen, die beim Checkout hinzugefügt werden, behalten jetzt ihr erwartetes Format bei. Zuvor wurden leere Zeilen ignoriert.
  • Durch das Ändern der Rasteransicht der Spalten des Produktrasters und das Auswählen neuer Spalten für eine benutzerdefinierte Ansicht wird die Aktion "Alle Rasterspalten auswählen"nicht mehr Trigger. Zuvor verschwand das Spaltenfeld und die Auswahl der Produkte im Raster wurde aufgehoben. GitHub-36302
  • Admin-Benutzer können nun das Protokoll abgeschlossener Admin-Aufgaben erfolgreich löschen. Zuvor hat der Administrator den folgenden Fehler angezeigt: Something went wrong. GitHub-36255
  • Die Einstellung Welcome Text der Kopfzeile des Designs kann jetzt ein einfaches Anführungszeichen enthalten. Zuvor hatte Magento Open Source diesen JavaScript-Fehler ausgegeben: Uncaught SyntaxError: Unable to process binding "ifnot: function(){return customer().fullname }".

URL-Neuschreibungen

  • Wenn die Produktsichtbarkeit im globalen Bereich "Alle Store-Ansichten"auf "Not Visible Individually"geändert wird, werden jetzt nur URL-Neuschreibungen für Store-Ansichten entfernt, die das Sichtbarkeitsattribut nicht überschrieben haben. Wenn Sie die Sichtbarkeit des Produkts auf diese Weise ändern, werden auch URL-Neuschreibungen für alle Store-Ansichten generiert, einschließlich derjenigen, die das URL-Schlüsselattribut außer Kraft gesetzt haben (jedoch nicht die Sichtbarkeitseinstellung). Zuvor wurden Regeln zum Umschreiben von URLs nicht angewendet, wenn Sichtbarkeitseinstellungen geändert wurden.

Web-API-Framework

  • Die REST-API DELETE /rest/V1/products/:sku/media/:entryId gibt jetzt eine Fehlermeldung zurück, wenn das Bild nicht aus dem Produkt entfernt wird, da es in anderen Store-Ansichten einer Rolle zugewiesen ist. Zuvor gab die API eine erfolgreiche Antwort zurück, selbst wenn das Bild nicht erfolgreich entfernt wurde.
  • Händler können jetzt die REST-API verwenden, um ein Kreditmemo für eine Bestellung mit einer Gesamtsumme von null zu erstellen. Zuvor wurde in Magento Open Source der folgende Fehler angezeigt: The order does not allow a credit memo to be created. The credit memo's total must be positive. We can't create a credit memo for the invoice/order.
  • Die Admin-Produktebearbeitungsseite spiegelt nun die Zuweisungen eines Produkts genau wider, nachdem die Website-Zuweisung des Produkts mithilfe der REST-API geändert wurde. GitHub-36281
  • Doppelte Optionen-IDs können nicht mehr für Attribute mit Mehrfachauswahl bei Massen-REST-API-Anfragen zur Aktualisierung von Produkten einbezogen werden. Zuvor konnten Sie beim Senden einer Massen-API-Anfrage zur Aktualisierung eines Produkts doppelte Optionen-IDs für Mehrfachauswahlattribute festlegen. Wenn dieses Attribut mit Mehrfachauswahl für die Einbindung in die mehrstufige Navigation konfiguriert wurde, schlug die EAV-Indizierung mit einem Duplicate entry -Fehler fehl.
  • Produktnamen in Warenkörben verwenden jetzt erwartungsgemäß die Werte der angegebenen Store-Ansicht. Zuvor wurde bei Produktnamen im Warenkorb immer der standardmäßige Store-Ansichtswert in den REST-API-Warenkorbantworten zurückgegeben.
  • Benutzerdefinierte Optionswerte für Warenkorbelemente können jetzt mit der REST-API aktualisiert werden. GitHub-35768
  • Massen-API-Anfragen für mehr als 20 sourceItems werden jetzt erfolgreich in Bereitstellungen abgeschlossen, bei denen "Bestand"aktiviert ist.
  • Der Fixer-Währungsdienst funktioniert jetzt wie erwartet mit Schlüsseln, die über ApiLayer generiert werden, und die Währungsraten werden korrekt exportiert. Zuvor wurde bei Magento Open Source ein Fehler ausgegeben, wenn ein Händler versuchte, Währungsraten über den Administrator zu importieren.
  • Sie können jetzt die REST API /rest/V1/bulk?searchCriteria[filter_groups]-Anfrage verwenden, um Massenvorgänge nach Suchkriterien abzufragen. Zuvor wurde der folgende Fehler zurückgegeben: report.CRITICAL: Report ID: webapi-624bbb1db96c4; Message: Item (Magento\AsynchronousOperations\Model\Operation) with the same ID "0" already exists.
  • Die Produktpreise werden jetzt mithilfe der API "Grundpreis verwalten"ordnungsgemäß auf den Admin- und Storefront-Katalogsuchseiten aktualisiert. GitHub-33767

Wunschliste

  • Käufer können nun nach der Anmeldung Produkte auf ihre Wunschliste setzen. Bisher wurde aufgrund von Problemen mit der Überprüfung des Formularschlüssels nach der Anmeldung der mit der Anfrage zum Hinzufügen zur Wunschliste gesendete Formularschlüssel ungültig gemacht.
  • Produkte werden nun erwartungsgemäß der Wunschliste aus der Produktliste hinzugefügt und Seiten angezeigt, nachdem ein Gastkunde sein Konto über eine Bestätigungs-E-Mail bestätigt hat. Zuvor wurden Produkte nach einer Kontobestätigung nicht zur Wunschliste hinzugefügt.
  • Die addProductsToWishlist -Abfrage gibt jetzt eine informative Fehlermeldung zurück, wenn ein Käufer versucht, ein Element zu einer Wunschliste mit einem ungültigen Wert für die benutzerdefinierte Option "product select"hinzuzufügen. Zuvor fehlte die Servervalidierung für den benutzerdefinierten Optionswert aus der Dropdown-Liste, was zu einem ungültigen Wert in der Datenbank führte. Daher gab der Endpunkt diesen internen Server-Fehler zurück: GraphQL endpoint returns Internal server error with "Call.

Bekanntes Problem

Problem: Sie können kein Kreditmemo erstellen, wenn die kostenlose Lieferung aktiviert ist (Stores > Configuration > Sales > Delivery Methods) und der angezeigte Versandpreis die Steuer enthält. Wenn Sie versuchen, ein Kreditmemo zu erstellen, löst Adobe Commerce die folgende Ausnahme aus: "Division by zero".vendor/magento/module-sales/Model/Order/Creditmemo/Total/Tax.phpLine 139. GitHub-36800

Problemumgehung: Ein Hotfix für dieses Problem ist jetzt verfügbar. Wechseln Sie zu "Quality Patches Tool: Suchen Sie nach Patches"und suchen Sie nach dem Patch ACSD-50814.

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).

Partner
Anforderungen abrufen
Verwandte GitHub-Probleme
Ampersand
magento/magento2#36529 magento/magento2#36224 magento/magento2#34117
magento/magento2#36726 magento/magento2#35546 magento/magento2#36334 magento/magento2#36628
Elgentos
magento/magento2#36414
magento/magento2#36831
Fisheye
magento/magento2#36329 magento/magento2#36304 magento/magento2#36239 🔗magento/magento2#36187🔗 ento/magento2#35738 magento/magento2#35631 magento/magento2#35540 🔗magento/magento2#35436 15} magento/magento2#35033 magento/magento2#34186
magento/magento2#36641 magento/magento2#36338 magento/magento2#36554 magento/magento2#36646 ento/magento2#36648 magento/magento2#35325 magento/magento2#35711 🔗magento/magento2#3548 15} magento/magento2#34321
Perspektive Studio
magento/magento2#36036 magento/magento2#36031 magento/magento2#36027
magento/magento2#36337
MRM COMMERCE
magento/magento2#35807 magento/magento2#32979
magento/magento2#35994
Interactiv4
magento/magento2#35564
magento/magento2#35568
Atwix
magento/magento2#33411 magento/magento2#33148 magento/magento2#33093 magento/magento2#32889 ento/magento2#32481 magento/magento2#31794 magento/magento2#29417 magento/magento2#2567{17 15}
magento/magento2#35858 magento/magento2#29418
Aligent Consulting
magento/magento2#31606
magento/magento2#31643 magento/magento2#31866
Blue Acorn iCi
magento/magento2#31360 magento/magento2#31355
magento/magento2#31443 magento/magento2#31373 magento/magento2#32625
creativestyle
magento/magento2#30647
magento/magento2#30672 magento/magento2#32985 magento/magento2#30613

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).

Community-Mitglied beitragen
Anforderungen abrufen
Verwandte GitHub-Probleme
amenk
magento/magento2#36663
magento/magento2#14495
bequem
magento/magento2#36529
magento/magento2#36726 magento/magento2#35546
Hostep
magento/magento2#36495
magento/magento2#36515
sinhaparul
magento/magento2#36458
magento/magento2#36639
barryvdh
magento/magento2#36452
magento/magento2#32004 magento/magento2#36891
peterjaap
magento/magento2#36414
magento/magento2#36831
engcom-Delta
magento/magento2#36411
magento/magento2#35971 magento/magento2#36841
freezy-sk
magento/magento2#36379
magento/magento2#36640
ilnytskyi
magento/magento2#36370
magento/magento2#36482 magento/magento2#36471
pykettk
magento/magento2#36329
magento/magento2#36641
frisch
magento/magento2#36304
magento/magento2#36338
asim-blueprintprep
magento/magento2#36253
magento/magento2#36252
texboy
magento/magento2#36241
magento/magento2#36349 magento/magento2#29448
bequem
magento/magento2#36224
magento/magento2#36334
frisch
magento/magento2#36187
magento/magento2#36554
Serbynskyi
magento/magento2#36036
magento/magento2#36337
dshevtsov
magento/magento2#35990
magento/magento2#36230 magento/magento2#36651
Bashev
magento/magento2#35986
magento/magento2#35899 magento/magento2#36055 magento/magento2#36312 Smile-SA/elasticsuite#2772 plumrop cket/module-layered-navigation-fix-magento-2.4.5#1
lbajsarowicz
magento/magento2#35948
magento/magento2#36539
tkotosz
magento/magento2#35940
magento/magento2#36642
MeCapron
magento/magento2#35885
magento/magento2#36042
amenk
magento/magento2#35848
magento/magento2#35939
Viper9x
magento/magento2#35846
magento/magento2#36643
lalittmohan
magento/magento2#35818
magento/magento2#36644
vo1
magento/magento2#35817
magento/magento2#36645
sheepfy
magento/magento2#35816
magento/magento2#36593
Bgorski
magento/magento2#35807
magento/magento2#35994
pykettk
magento/magento2#35738
magento/magento2#36646
mrtuvn
magento/magento2#35656
magento/magento2#36647
pykettk
magento/magento2#35631
magento/magento2#36648
pmzandbergen
magento/magento2#35572
magento/magento2#35579 Smile-SA/magento2-module-store-locator#134
osrecio
magento/magento2#35564
magento/magento2#35568
frisch
magento/magento2#35540
magento/magento2#35325 magento/magento2#35711
nicka101
magento/magento2#35524
magento/magento2#35719
nazarklovanych
magento/magento2#35441
magento/magento2#35558
pykettk
magento/magento2#35436
magento/magento2#35488
VladyslavSikailo
magento/magento2#35216
magento/magento2#35417
Vermietung
magento/magento2#35060
magento/magento2#32177
novakivskiy
magento/magento2#34992
magento/magento2#34991
erfanimani
magento/magento2#34232
magento/magento2#34246 magento/magento2#34247
frisch
magento/magento2#34186
magento/magento2#34321
bequem
magento/magento2#34117
magento/magento2#36628
khoimm92
magento/magento2#34061
magento/magento2#35481
dudzio12
magento/magento2#33892
magento/magento2#33820
kassner
magento/magento2#33859
magento/magento2#34439
duxabilii
magento/magento2#33841
magento/magento2#35187
sergeynezbritskiy
magento/magento2#33803
magento/magento2#33802
sean-breeden
magento/magento2#33742
magento/magento2#34524
SilinMykola
magento/magento2#32889
magento/magento2#35858
aligent-lturner
magento/magento2#31606
magento/magento2#31643 magento/magento2#31866
lbajsarowicz
magento/magento2#31360
magento/magento2#31443
lbajsarowicz
magento/magento2#31355
magento/magento2#31373 magento/magento2#32625
krzksz
magento/magento2#30647
magento/magento2#30672 magento/magento2#32985 magento/magento2#30613
Usik2203
magento/magento2#29417
magento/magento2#29418

Systemanforderungen

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

Installations- und Upgrade-Anweisungen

Sie können Magento Open Source 2.4.6 mit Composer installieren.

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