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.
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
durchlaminas/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
odersettlement 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, nachdemcomposer 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 dasitems.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
undCmsUrlResolverIdentity
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
- undbase_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
undNo 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 Tabellesales_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.
- 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ürjquery/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 Dateisystem.log
protokolliert, doch wurden Fehler nicht invar/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 KategorieurlKey
für Kategorien mit untergeordneten Kategorien gespeichert wird. Zuvor wurde beim Speichern der KategorieURLKey
der falschecategoryId
ü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, wennevent
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. KlasseMagento\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 Feldernlogdate
undlognum
der Tabelleadmin_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 alsregion
. 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 bestimmtenfrom
- undto
-Bereich. GitHub-31537
- Die
product
-Abfrage gibt jetzt korrekte Kategoriedaten in der Aggregation zurück. Zuvor gabattribute_code.category_uid
den Wert voncategory_id
anstelle voncategory_uid
zurück.
- Die
customerOrders
-Abfrage gibt keinen\"model\" value should be specified
Fehler 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 Attributis_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-Attributeattribute_code
undlabel
. GitHub-28878
- Die
products
-Abfrage gibt Kategorieinformationen wie erwartet zurück, wenn das Datenbankpräfix einen Wert ungleich null hat. Zuvor wurde einInternal 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 zumOrderItemInterface
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:import
importiert jetzt erfolgreich den Inhalt einerconfig.php
-Datei, wenn er bestimmtecron
-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 alsint
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
oderThe order has already been placed and is currently processing
. Dieser Sperrwert kann über Di für den ParameterMagento\Quote\Model\PlaceOrderMutex
classlockWaitTimeout
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 aufcron
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
odersettlement 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 inBraintree/Ui/Component/Report/Listing/Column/PaymentType.php
hatGOOGLE_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
undprice_excl_tax
wurden zur Ausgabe dersetShippingMethodsOnCart
-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
undlibxml
behoben.
- Entwickler können das System jetzt anweisen, eine Datenbearbeitung in einer bestimmten Store-Ansicht auszuführen. Der neue optionale Parameter
scope
akzeptiert einestring
, 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 inn
umgewandelt.
- Die Ausgabe der laufenden
bin/magento i18n:collect-phrases
enthält jetzt wie erwartet E-Mail-Vorlagenübersetzungen independ
-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 AttributeValue
undvalueUpdate
ersetzt.
- Die
getOptions
-Methode ruft nun dieprice
-Attributbeschriftungswerte basierend auf der Store-Ansicht korrekt ab. Zuvor wurde das Attributprice
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
desSearch 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 "productselect
"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).
Individuelle beitragende Faktoren
In der folgenden Tabelle sind die Beiträge unserer Community-Mitglieder aufgeführt. In dieser Tabelle sind das Community-Mitglied, das die Pull-Anforderung beigetragen hat, die Nummer der externen Pull-Anforderung und die damit verbundene GitHub-Problemnummer aufgeführt (sofern verfügbar).
Systemanforderungen
Unser Technologiestapel basiert auf PHP und MySQL. Weitere Informationen finden Sie unter Systemanforderungen.
Installations- und Upgrade-Anweisungen
Sie können Magento Open Source 2.4.6 mit Composer installieren.