Highlights von Magento Open Source 2.4.6
Achten Sie auf die folgenden Highlights in dieser Version.
Sicherheitsverbesserungen
Diese Version umfasst acht Sicherheits-Fix- und Plattformsicherheitsverbesserungen.
Bisher sind keine bestätigten Angriffe im Zusammenhang mit diesen Problemen aufgetreten. Bestimmte Schwachstellen können jedoch ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Administrator erhält. Daher erinnern wir Sie daran, alle erforderlichen Schritte zum Schutz Ihres Administrators zu unternehmen, einschließlich, aber nicht beschränkt auf diese Schritte:
- IP-Zulassungsauflistung
- Zwei-Faktor-Authentifizierung
- VPN-Nutzung
- Verwendung eines eindeutigen Speicherorts anstelle von
/admin
- Gute Passworthygiene
Die neueste Diskussion über diese behobenen Probleme 🔗 Sie im Adobe-Sicherheitsbulletin.
Zusätzliche Sicherheitsverbesserungen
Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit, einschließlich:
-
Lücken in Admin-Aktionsprotokollen wurden durch spezifischere Prüfungen von Aktionen in Rasteransichten, Massenaktionen und Exporten geschlossen.
-
Die reCAPTCHA-Validierung schlägt beim Checkout nicht mehr fehl, wenn bei der Zahlungsverarbeitung unerwartete Fehler auftreten. GitHub-35093-
-
Neue Systemkonfiguration, bei der eine E-Mail-Bestätigung erforderlich ist, wenn ein Administrator bzw. eine Administratorin seine/ihre E-Mail ändert. Um Sicherheitslücken zu vermeiden, wurde eine neue Systemkonfigurationseinstellung (standardmäßig deaktiviert) hinzugefügt, die eine E-Mail-Bestätigung erfordert, wenn ein Administrator 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 die Anwendung jedes Mal eine E-Mail-Bestätigung an, wenn der Administrator bzw. die Administratorin seine/ihre E-Mail-Adresse ändert. Das folgende Modul ist von dieser Änderung betroffen:
Magento_Customer
.
Plattformverbesserungen
Magento Open Source 2.4.6 führt die Unterstützung für PHP 8.2 ein. PHP 8.1 wird weiterhin vollständig unterstützt.
Die PHP 7.4-Unterstützung 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, diese Version mit Redis 7.0.x bereitzustellen, da Redis 6.2 voraussichtlich 2024 das Ende seiner Lebensdauer erreichen wird.
-
OpenSearch wird jetzt als Standard-Suchmaschine für lokale Magento Open Source- 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 weiterhin besteht, empfehlen wir, diese Version mit OpenSearch 2.x zu verwenden. Sie können Magento Open Source und Magento Open Source 2.4.6 mit OpenSearch 2.x sowohl in der Cloud als auch lokal installieren und ausführen Voraussetzungen für Suchmaschinen.
-
Elasticsearch 8.x. Siehe Upgrade-Elasticsearch.
-
MariaDB 10.6 (LTS-Version). Diese Version ist weiterhin mit MariaDB 10.4 kompatibel, wir empfehlen jedoch eine Aktualisierung auf MariaDB 10.6.
Andere 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 Kompatibilität mit PHP 7.4 wurde aus der Commerce- und Magento Open Source-Code-Basis entfernt.
-
Die Symfony-Abhängigkeiten wurden auf die neue LTS-Version aktualisiert. Zu den Abhängigkeiten gehören:
friendsofphp/php-cs-fixer
symfony/console
symfony/event-dispatcher
symfony/finder
symfony/process
web-token/jwt-framework
-
jquery-migrate
wurde aus den Code-Basen von Commerce und Magento Open Source entfernt. GitHub-21406- -
jQuery/fileUpload
Bibliothek wurde auf Version 10.32 aktualisiert. -
Komponenten des Zend-Frameworks (ZF1), die das Ende des Lebenszyklus erreicht haben, wurden aus der Codebasis entfernt. Siehe Abwärtskompatible Änderungen werden hervorgehoben.
-
Laminas-Abhängigkeiten wurden aktualisiert, um PHP 8.2 zu unterstützen.
-
Das
laminas/laminas-dependency-plugin
Composer-Plug-in wurde entfernt. GitHub-36515- -
Zend_Filter
durchlaminas/laminas-filter
ersetzt. -
web-token/jwt-framework
wurde auf Version 3.0.5 aktualisiert. (neueste Version) -
allure-framework/allure-phpunit
wurde auf Version 2.x aktualisiert. -
Aktualisierung der
Chart-js
-Bibliothek auf Version 3.9.1
Updates zur Barrierefreiheit
Der Schwerpunkt dieser Version lag auf der Erstellung eines Storefront-Erlebnisses auf Venia (PWA), das besser wahrnehmbar, bedienbar, verständlich und stabil ist. Zu diesen Verbesserungen gehören:
- Die visuelle Textbeschriftung für die Sign in-Schaltfläche entspricht nun ihrem barrierefreien Namen. (Als Best Practice wird empfohlen, dass der barrierefreie Name eines Benutzeroberflächenelements mit dem sichtbaren Titeltext beginnt.)
- Den Schaltflächen in der Storefront wurden aussagekräftige Namen hinzugefügt.
- Verbale beschreibende Beschriftungen wurden den Has Video in Suchfiltern hinzugefügt.
- Benutzer, die nur über die Tastatur verfügen, können jetzt auf alle Seitenfunktionen der Storefront zugreifen. Zuvor konnten Käuferinnen und Käufer nur über Tastenanschläge auf Links zur Unternavigation zugreifen.
Integration von Adobe Commerce mit Adobe IMS
Die folgenden Adobe IMS-Module wurden vom Adobe Commerce- und Magento Open Source-Kerncode entkoppelt und sind jetzt als separates Metapaket verfügbar:
adobe-ims
adobe-ims-api
admin-adobe-ims
Die neue adobe-ims-metapackage
v2.2.0 ist im Bundle mit Adobe Commerce 2.4.6 und Magento Open Source 2.4.6 enthalten. In dieser Version hat sich keine Funktionalität geändert.
Braintree
- Die Pay Later Schaltfläche und Banner (Nachrichten) für Italien und Spanien wurden für das Braintree aktiviert.
- PayLater Messaging mit PayPal Vault wurde aktiviert.
- Der Schutz vor Betrug wurde hinzugefügt und es wurden ACH-Webhooks hinzugefügt. Der Webhook zum Schutz vor Betrug wird ausgelöst, wenn eine Risikoentscheidung in Braintree getroffen wurde. Der ACH-Webhook wird ausgelöst, wenn der Status einer ACH-Zahlung auf
settled
odersettlement decline
aktualisiert wird.
- Webhook für LPM (Local Payment Methods) hinzugefügt.
GraphQL
Zu den Leistungsverbesserungen von GraphQL gehören:
Verbesserte Reaktionszeit bei der Abfrage von Kategorien mit aktivierten Kategorienberechtigungen. Die Antwortzeiten wurden verbessert, wenn Produkte in Kategorien abgefragt werden, für die Kategorieberechtigungen aktiviert sind und die viele Kundengruppen oder freigegebene Kataloge enthalten. Code-Änderungen, die diese Leistungsverbesserung unterstützen, umfassen:
- Der GraphQL-Resolver-Vorgang wurde optimiert.
- Der Datenanbieter setzt nicht mehr für jedes neue verarbeitete Produkt die zur Laufzeit zwischengespeicherten Daten neu, was die Leistung verbessert hat.
- Die Verarbeitung von Produktberechtigungen wurde im GraphQL-Resolver optimiert. Produktberechtigungen werden jetzt auf Produktsammlungen angewendet, und zwar stattdessen jetzt pro Produkt.
- Optimierte Berechtigungen zum Lesen in freigegebenen Katalogen in der
addProductsToCart
. - Produktberechtigungen wurden mit Produkt-Inline-Fragmenten optimiert.
Optimierte Leistung der Kategoriestrukturdarstellung. Die categoryList
wurde optimiert, um Kunden mit einer großen Anzahl von Kategorien zu unterstützen. Händler, die diese Abfrage verwenden, um mehr als 1500 Kategorien mit bis zu fünf Ebenen verschachtelter Unterkategorien zu durchsuchen, werden eine Leistungsverbesserung bemerken. Das Laden von untergeordneten Kategoriedaten durch die Umgestaltung des Codes wurde verbessert, indem unnötige Methodenaufrufe entfernt, das Zwischenspeichern der Kategoriestruktur verbessert und Kategoriedaten rekursiv geladen wurden. Code-Änderungen, die diese Leistungsverbesserung unterstützen, umfassen:
- Das Abrufen benutzerdefinierter Attribute und Metadaten für Kategoriemodelle wurde verbessert.
- Der Abruf von Kategorie-IDs wurde verbessert und die Anzahl der
getChildren
-Aufrufe wurde reduziert. - Das Laden von untergeordneten Elementen in Kategorien wurde verbessert.
Reduzierte Antwortzeiten bei Massenvorgängen zum Warenkorb. Die Add-Produktmutationen wurden optimiert, um die Abfrageleistung beim Hinzufügen 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 nach. Das orders
Ausgabeobjekt der customer
-Abfrage enthält jetzt ein Sortierfeld. Sie können jetzt Bestellungen nach Bestellnummer oder Erstellungsdatum und in auf- oder absteigender Reihenfolge sortieren.
Neue Mutationen:
deleteCustomer
Page Builder
Page Builder v.1.7.3 ist mit Magento Open Source 2.4.6 kompatibel.
PWA Studio
PWA Studio v.13.0.x ist kompatibel mit Magento Open Source 2.4.6. 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 entsprechenden kompatiblen Adobe Commerce-Kernversionen.
Bekanntes Problem
Problem: New Relic ist derzeit nicht mit PHP 8.2 kompatibel. Bei Bereitstellungen mit New Relic kann Adobe Commerce 2.4.6 auf PHP 8.1, aber nicht auf PHP 8.2 ausgeführt werden. 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 voraussichtlich im Sommer 2023 veröffentlicht.
Behobene Probleme
Wir haben Hunderte von Problemen im Kern-Code von Magento Open Source 2.4.6 behoben.
Installation, Upgrade, Bereitstellung
- Bei der Bereitstellung statischer Inhalte tritt während standardmäßiger oder kompakter Bereitstellungen mit mehreren Gebietsschemata und Websites keine Zeitüberschreitung mehr auf oder es treten keine Fehler mehr auf.
- Eine kompakte Strategie führt nicht mehr zu einem ungültigen Verweis auf eine externe Domain, wenn eine statische Inhaltsbereitstellung (
bin/magento set:static-content:deploy -f --strategy compact
) ausgeführt wird.
- Die Ausführung von
bin/magento setup:di:compile -vvv
(oder mit den Optionen-v
oder-vv
) gibt jetzt bei einem Fehler eine informative Meldung zurück. GitHub-35391
- Magento Open Source löst nicht mehr die folgende Ausnahme aus, wenn Sie den
bin/magento setup:upgrade
-Befehl in einer Bereitstellung ausführen, auf der bereits das Datenmigrations-Tool 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
bin/magento setup:db:status
-Befehl schlägt in Umgebungen, in denen MySQL 8.0.29 ausgeführt wird, nicht mehr fehl. Zuvor wurde in der Befehlsausgabe fälschlicherweise angegeben, dass das deklarative Schema veraltet ist. GitHub-35671
- Der Befehl
composer install
überschreibt.gitignore
Dateien nicht mehr. GitHub-32888
- Das Ausführen von
bin/magento sampledata:remove
zum Entfernen von Beispieldaten nach dem Upgrade 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 jetzt nach der ersten Ausführung voncomposer install --no-dev
erfolgreich ausgeführt. GitHub-36351
- Ausnahmen und Ausnahmestapelablaufverfolgungseinträge sind jetzt in
var/log/exception.log
enthalten. GitHub-36054
Magento Open Source gibt jetzt einen Parametervalidierungsfehler aus, wenn Sie die Befehlszeile verwenden, um eine Redis-Verbindung ohne Kennwort festzulegen.
Barrierefreiheit
- Die Schaltflächen Proceed to Checkout, Review Order und Place Order im Checkout-Workflow funktionieren jetzt mit der Tastatureingabe wie erwartet.
- Die visuelle Anzeige des Fokus auf Schaltflächen bei Verwendung von TAB oder SHIFT + TAB zum Navigieren durch Seitensteuerelemente funktioniert jetzt erwartungsgemäß.
Sprachausgabe
- Die Bildschirmlesehilfe für die Seite mit dem Auftragsverlauf liest jetzt die richtige Bildbeschreibung.
Die Sprachausgabe gibt jetzt Folgendes aus:
- Gesamtzahl der in den Suchergebnissen gefundenen Elemente wie erwartet
- Name des angemeldeten Benutzers, wenn dieser sich mithilfe von Tastatursteuerelementen erfolgreich anmeldet
- Die Kopfzeile der Produktsuchergebnisseite liest jetzt den richtigen Wert für das
<title>
Element - Ob Eingabefelder erforderlich sind
- Korrigieren des aktuellen Status von Akkordeon-Elementen (reduziert und erweitert)
- Wenn der Seiteninhalt aktualisiert wurde, nachdem der Benutzer auf die Schaltfläche Create an account geklickt hat
Produkte im Paket
- 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 Bundle-Produktoptionstitel mit dem ersten Optionstitel für andere Store-Ansichten überschrieben.
- Gebündelte Produkte können jetzt erfolgreich über Admin Catalog > Products gefiltert werden, wenn ein niederländisches Gebietsschema verwendet wird. Zuvor hat Magento Open Source diesen Fehler angezeigt, als Sie versucht haben, nach
Type: Bundle Product
zu filtern:Something went wrong with processing the default view and we have restored the filter to its original state
. GitHub-35704
- Das Produktraster löst keine Ausnahme mehr aus, wenn Bundle-Produkte einen Sonderpreis von über 1.000 haben. Wenn Sie zuvor nach dem Produkt anhand der SKU gesucht oder zu Catalog > Products navigiert sind, hat Magento Open Source folgenden Fehler ausgegeben:
Non Numeric value encountered
. GitHub-36284)
- Spalten in Gutschriften- und Rechnungsspalten für Bestellungen, die einen Mix aus Bundle und PDF enthalten, werden jetzt korrekt dargestellt. Zuvor waren Spalten verzerrt oder falsch ausgerichtet.
- In GraphQL-Abfragen, die ein
BundleProduct
enthalten, enthält dasitems.options.product
-Objekt die erwarteten Daten. Zuvor konnte das Objekt unter bestimmten Umständen null sein.
- Dezimalgrößen für Bundle-Optionen werden jetzt korrekt gerendert, wenn Quantity uses decimals aktiviert ist. Zuvor wurde nur der ganzzahlige Teil der Menge gerendert, nicht die Bruchkomponente. Beispielsweise wurde eine Menge von 1.5 als 1.0 gerendert. GitHub-35964
- GraphQL-Produktabfragen geben jetzt nur noch Bundle-Produktoptionen im Umfang des abgefragten Stores zurück.
- Produkte, die keinen Kategorien zugewiesen sind, aber Produktoptionen für gebündelte oder gruppierte Produkte sind, werden jetzt in Antworten zurückgegeben, wenn die Allow Category Browsing Konfigurationseinstellung für den Kunden aktiviert ist, der die Abfrage sendet.
Cache
- Der Vollseiten-Cache wird nach der Bestellerfüllung nicht mehr geleert, es sei denn, das bestellte Produkt ist nicht vorrätig. Zuvor wurde der Cache für die Kategorie bei jeder Erstellung einer Sendung gelöscht.
- Daten werden jetzt erfolgreich zwischengespeichert, wenn der L2-Cache konfiguriert ist und Remote-Daten teilweise entfernt werden. Zuvor wurde der neue Cache, nachdem nur der Daten-Cache ohne Hashes dieser Daten geleert wurde, nicht gespeichert, solange die Daten-Hashes vorhanden waren.
- Es wurden Fehler in
CatalogUrlResolverIdentity
undCmsUrlResolverIdentity
behoben, die das Caching verhinderten. Dies wirkte sich auf die Zwischenspeicherung von Routenabfragen bei mehreren Anfragen aus.
Warenkorb und Checkout
- Käufer können jetzt einen zusätzlichen Artikel zu ihrem Warenkorb 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
zurück, wenn die Speicherwährung und die Basiswährung identisch sind. GitHub-34649
- Der exportierte Wert von Maximum Qty Allowed in Shopping Cart entspricht jetzt dem Standardwert, der in der Admin-Konfigurationseinstellung festgelegt ist.
- Magento Open Source berechnet jetzt korrekt den Gesamtwert für Rückerstattungen von Bestellungen mit einem Rabatt für den Versand.
- Google reCAPTCHA funktioniert jetzt für Storefront-Bestellungen wie erwartet. Zuvor wurden diese Fehler in Magento Open Source angezeigt, wenn Google ReCAPTCHA nicht zum ersten Mal ausgewählt wurde, bevor ein Erstkäufer versuchte, eine Bestellung aufzugeben:
ReCaptcha validation failed, please try again
undNo such cart with id = ID
.
- Die Aktualisierung des CAPTCHA-Bildes berücksichtigt jetzt die Admin-Konfigurationseinstellung und wird nicht ausgelöst, wenn die Einstellung deaktiviert ist. Zuvor wurde die Aktualisierung 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 wie erwartet ein Bestätigungs-Popup an, bevor ein Erstkäufer zur nächsten Seite weitergeleitet wird, wenn der Erstkä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 jetzt die Menge eines Produkts aus ihrem Warenkorb verringern, nachdem sie in der Admin verringert wurde. Zuvor gab Magento Open Source den folgenden Fehler aus, wenn ein Käufer versuchte, die Produktmenge zu reduzieren:
The requested qty is not available
. GitHub-35780
- Magento Open Source gibt in der JavaScript-Konsole keinen Fehler mehr aus, wenn die Produktmenge während des Checkouts mit mehreren Versandvorgängen das konfigurierte Maximum überschreitet. Stattdessen zeigt Magento Open Source jetzt eine informative Fehlermeldung an. GitHub-36184
- Die Artikelmenge auf der Warenkorbseite wird nicht mehr als negative Zahl dargestellt, wenn ein Käufer die Abwärtspfeiltaste auf seiner Tastatur verwendet, um die Produktmenge zu ändern. GitHub-36299
- Käufer können aus einer Kategorie, die jetzt nicht mehr zulässig ist, kein Produkt mehr in den Warenkorb legen, nachdem sie die Kundengruppe geändert haben, zu der der Käufer gehört. Magento Open Source überprüft jetzt den Zugriff der Kundengruppe auf bestimmte Kategorien, wenn die Einstellungen der Berechtigungskonfiguration geändert wurden.
- Die Warenkörbe der Kunden werden vor der Erstellung der Admin-Bestellung nicht mehr geleert. 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. Jedes Mal, wenn ein Administrator bzw. eine Administratorin versucht hat, eine Bestellung auf der Seite „Admin-Warenkorb verwalten“ zu erstellen, wurde der Warenkorb geleert.
- Der Mini-Warenkorb zeigt jetzt nach dem Ausführen von
bin/magento catalog:image:resize
die richtigen Produktbilder an. Zuvor wurden alle Bilder durch das standardmäßige Produkt-Platzhalterbild ersetzt. GitHub-35535
- Der Checkout kann jetzt erfolgreich abgeschlossen werden, wenn die Versandadresse ein Erweiterungsattribut enthält. Zuvor gab es in Magento Open Source diesen Fehler:
Object of class Magento\Quote\Api\Data\AddressExtension could not be converted to string
. GitHub-34202
- Die
addBundleProductsToCart
Mutation fügt einem Angebot keine Produkte mehr hinzu, wenn eine erforderliche Produktoption keinen Wert hat. GitHub-25676
- Magento Open Source gibt jetzt eine informative Nachricht zurück, wenn eine
addProductsToCart
Mutation fehlschlägt, wenn ein Produkt ohne ausreichende 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 übersteigt.
Warenkorb-Preisregel
- Warenkorbpreisregel Die kostenlosen Versandoptionen, die während der Regelerstellung festgelegt werden, werden jetzt wie erwartet auf Bestellungen angewendet. Zuvor wurden kostenlose Versandoptionen, die während der Erstellung der Regel angewendet wurden, beim Checkout ignoriert, und der kostenlose Versand war nicht zulässig, wenn die Regel angewendet wurde. GitHub-35013
- Die Spalte
discount_percent
dersales_order_item
für ein Produkt wird jetzt erwartungsgemäß mit dem Rabattprozentsatz ausgefüllt, wenn die Artikelrabattmenge nicht festgelegt ist oder größer oder gleich der Bestellartikelmenge ist. Zuvor wurde diese Spalte nicht ausgefüllt, wenn eine Warenkorb-Preisregel auf dieses Produkt angewendet wurde.
Katalog
- Das Produktlisten-Widget zeigt für einen angemeldeten Käufer keine falschen oder zwischengespeicherten Preise mehr an. Der im Widget Startseite angezeigte Preis stimmt nun mit der Adresse des Käufers überein und wird aktualisiert, wenn der Käufer die Adresse aktualisiert. Zuvor wurden die Produktpreise auf der Startseite vom Browser-Cache nicht auf der Grundlage von Steuerregeln für Kundengruppen aktualisiert.
- Die Funktion „Produktliste vergleichen“ funktioniert jetzt in einer Bereitstellung für mehrere Websites ordnungsgemäß und ist von einer Website abhängig.
- Magento Open Source zeigt beim Neuladen einer Produktdetailseite keine Daten aus der vorherigen Seite mehr an. Zuvor wurden beim Neuladen der Produktdetailseite die Daten aus der ersten Registerkarte mit den neu geladenen Daten für einen Bruchteil einer Sekunde zusammengeführt.
- Kategorien mit Unterkategorien können jetzt wie erwartet im Hauptmenü auf Mobilgeräten erweitert werden. Zuvor konnten Käufer in Mobile-Bereitstellungen keine Kategorien mit Unterkategorien ö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 Produktpreis-Indexer nicht als ungültig markiert und anschließend bei einem
cron
wie erwartet erneut ausgelöst. Infolgedessen fehlte der Preiseintrag des Produkts in der Preisindextabelle und wurde nicht im neuen Shop oder auf der neuen Website angezeigt.
- Die Inventaranzahl der Storefront ist jetzt korrekt, wenn die Display Out of Stock Products Konfigurationseinstellung aktiviert ist. GitHub-35899
- Die Kategorieseite ist nicht mehr leer, wenn die Allow All Products Per Page aktiviert ist. GitHub-35900
- Die Display Out of Stock Products-Konfigurationsoption funktioniert jetzt erwartungsgemäß, wenn sie aktiviert ist. Zuvor wurden alle Produkte als nicht vorrätig in der Storefront angezeigt, wenn diese Option in der Admin Console aktiviert war. GitHub-35898
- Die Sortierung von Produkten nach booleschen Attributen funktioniert jetzt erwartungsgemäß. GitHub-36390
- Katalogpreisregel-Rabatte werden nicht mehr auf benutzerdefinierte Festpreis-Produktoptionen angewendet, sondern nur auf den ursprünglichen Preis des Produkts.
- Katalogpreisregeln berücksichtigen jetzt den ausgewählten Umfang und werden nur auf Produkte für die Websites angewendet, für die das Attribut einen Optionswert hat, der der Regel entspricht. Zuvor berücksichtigte die Regel den ausgewählten Bereich in Bereitstellungen mit mehreren Sites nicht. GitHub-36049
- Die Farb- und Größenattribute der Farbfeldoptionen sind jetzt auf der Produktdetailseite vorausgewählt, wenn ein Käufer das konfigurierbare Produkt auf der Seite „Mein Warenkorb“ ändert. (Die jQuery 3.x-Version unterstützt jetzt den
swatchRenderer
Widget-Namen, der jetzt in Binnenmajuskel-Schreibweise vorliegt.) Zuvor war die Option für Farb-/Bildmuster nicht vorausgewählt.
- Kunden werden jetzt über sinkende Produktpreise benachrichtigt, wenn der Kunde den Warnhinweis für Preissenkungen abonniert hat. Bisher wurden aufgrund des Caching auf Anwendungsebene nicht immer Benachrichtigungen über Preisnachlässe gesendet.
- Katalogregeln, die auf SKUs mit der Bedingung is not one of basieren, funktionieren jetzt erwartungsgemäß.
- Bei der Magento Open Source wird nicht mehr fälschlicherweise davon ausgegangen, dass eine Kategorie basierend auf dem Kategoriepfad die übergeordnete Kategorie einer anderen ist. Wenn zuvor zwei Kategorien nebeneinander lagen und eine Kategorie-ID mit der Kategorie-ID einer anderen Kategorie beginnt, ging Adobe Commerce davon aus, dass die Kategorien dieselbe übergeordnete Kategorie hatten. GitHub-32464
Konfigurierbare Produkte
- Magento Open Source gibt keinen Fehler mehr aus, wenn ein Admin-Benutzer Produkte manuell zu einem konfigurierbaren Produkt hinzufügt, dem bereits viele einfache Produkte zugewiesen sind. Zuvor hat Magento Open Source diesen 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 Auftragsrückständen keine konfigurierbaren Produkte mit einer verkäuflichen Menge von 0 mehr in ihren Warenkorb legen. Die Magento Open Source zeigt jetzt an, dass das Produkt nicht vorrätig ist. GitHub-35319
- Wenn Sie ein neues Produkt erstellen, indem Sie ein konfigurierbares Produkt mit vielen Optionen aus einer anderen Store-Ansicht importieren, erhalten Sie jetzt wie erwartet eine exakte Kopie des ersten Produkts. Zuvor war die Sortierreihenfolge der konfigurierbaren Optionen des neuen Produkts falsch, und Titel wurden in Bereitstellungen mit mehreren Store-Ansichten und Gebietsschemata nicht in das Gebietsschema der neuen Store-Ansicht übersetzt. GitHub-35200
- Konfigurierbare Produkte mit allen nicht vorrätigen untergeordneten Produkten werden jetzt als nicht vorrätig in der Storefront angezeigt.
- Konfigurierbare Produkt-SKUs und Produktnamen werden jetzt korrekt angezeigt. Zuvor wurden Name und SKUs als undefiniert angezeigt, nachdem Sie eine Attributgruppe über die Produktdetailgruppe auf Stores > Attribute set verschoben haben. GitHub-36309
Coupons
- Dem Workflow Gutscheincodes verwalten wurde eine Validierungslogik hinzugefügt, um die Gutscheincode-Einstellungen beim Generieren von Gutscheinen zu erzwingen. Zuvor ignorierte die Coupon-Code-Generierung die Code Length, wenn der Wert Coupon-Menge größer als 2500 war.
- Bonuspunkte werden jetzt wie erwartet auf das Konto eines Kunden gutgeschrieben, wenn während des Checkouts mit der PayPal Express-Zahlungsmethode ein Bonusgutschein angewendet wird.
- Sie können jetzt bei der Erstellung von Admin-Aufträgen einen Couponcode anwenden, wenn die Warenkorbpreisregel die Gewichtung als Bedingung hat. Zuvor wurden Gutscheincodes nicht festgelegt, wenn keine anderen Felder für das Produkt ausgewählt waren. GitHub-36271
- Sie können jetzt Couponberichte nach mehreren Warenkorbpreisregeln filtern. GitHub-36272
- Benutzerdefinierte Optionen werden jetzt angewendet und gespeichert, wenn ein Administrator beim Konfigurieren eines Produkts mit benutzerdefinierten Optionen Enter drückt. Zuvor konnten Sie Optionen auswählen und das Produkt zu einer Bestellung hinzufügen, aber die Optionen wurden nicht gespeichert, und die Admin-Benutzerin bzw. der Admin-Benutzer wurde aufgefordert, die Produktoptionen erneut auszuwählen. GitHub-35284
- Couponcodes können jetzt erfolgreich in Excel XML exportiert werden. Zuvor enthielt die generierte Datei nicht alle ausgewählten Gutscheincodes, sondern nur so viele Elemente, wie in der Auswahl „Elemente pro Seite“ ausgewählt wurden.GitHub-36073
Cron
- Der
catalog_index_refresh_price
Cron-Vorgang wird jetzt erfolgreich ausgeführt. Zuvor hat Magento Open Source diesen Fehler während der Cron-Ausführung 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
- Es wurde ein fehlender Abstand zwischen benutzerdefinierten Währungssymbolen und Preisen sowohl zu den Storefront- als auch zu den Admin-Produktpreisen hinzugefügt. Die entsprechende Bedingung und der Regex-Ausdruck wurden hinzugefügt, um einen benutzerdefinierten NBSP in Währungssymbolen zu ermöglichen. Beispielsweise wurde IDRx 105.00 zuvor als IDRx105.00 angezeigt.
- Magento Open Source sendet keine doppelten E-Mails mehr an Kunden, nachdem eine Bestellung vom Administrator erstellt wurde.
- E-Mails zu Administratoraufträgen werden nicht mehr gesendet, wenn die Email order confirmation deaktiviert ist. GitHub-36256
- Bildoptionen werden nicht mehr als HTML-Markup in der Gutschrift, der Bestellbestätigung und den E-Mails von Rechnungskunden (Standardvorlage) für Produkte mit benutzerdefinierten Optionen angezeigt.
Frameworks
- Admin-Benutzer können jetzt erfolgreich die Seite Admin Store > Configuration öffnen, wenn in der Einstellung Länder der Europäischen Union kein Land vorhanden ist (Stores > Configuration > General > Country options > European Union Countries). Wenn ein Administrator bzw. eine Administratorin versucht hat, diese Seite zu öffnen, hat Magento Open Source folgende Fehlermeldung 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 erwartungsgemäß mit JavaScript-Abhängigkeiten. Zuvor konnten Sie keine Aliase fürjquery/jquery.cookie
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 erwartungsgemäß in der
exception.log
-Datei protokolliert. Zuvor wurden zwar Fehler in dersystem.log
-Datei protokolliert, aber Fehler nichtvar/log/exception.log
.
- Händler können jetzt einen benutzerdefinierten externen SMTP-Anbieter angeben. GitHub-26104
- OAuth-Integrationen können jetzt in Bereitstellungen mit Magento Open Source 2.4.3-p2 wie erwartet erneut autorisiert werden. Zuvor schlug die erneute Autorisierung mit diesem Fehler fehl:
The attempt to post data to consumer failed due to an unexpected error. Please try again later
. Magento Open Source hat auch versucht, unverschlüsselte Werte zu entschlüsseln. GitHub-35313
- Der richtige
rowId
-Parameter wird jetzt übergeben, wenn derurlKey
für Kategorien mit untergeordneten Kategorien gespeichert wird. Zuvor wurde beim Speichern derURLKey
der Kategorie ein falschercategoryId
ü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 in der Storefront vermieden werden. Zuvor gab die Anwendung diesen Fehler auf den Produktdetailseiten und den Such-/Produktlistenseiten aus, 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 zur Validierung der Storefront, die während der Bestellplatzierung auftreten, werden jetzt konsistent angezeigt. Zuvor wurden Nachrichten angezeigt, reduzierten sich und tauchten wieder auf. GitHub-35651
- AMQP-Verbraucher schlagen nicht mehr aufgrund einer veralteten
trim()
-Funktion auf Bereitstellungen mit PHP 8.1 fehl. Zuvor, als der AMQP-Verbraucher nach der Installation startete, gab Magento Open Source den folgenden Fehler aus: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 erwartungsgemäß. Die KlasseMagento\Framework\Profiler\Driver\Standard\Stat
ist jetzt mit PHP 8.1 kompatibel. Zuvor gab Magento Open Source eine Ausnahme aus, wenn diese Methode aufgerufen wurde. GitHub-35307
- Die Abhängigkeit von der
imagemin-svgo
-Bibliothek wurde entfernt.
- Der Vorlagenprozess zum Minimieren verarbeitet jetzt erfolgreich aufeinander folgende Kommentare, wenn der erste Kommentar mit
//
beginnt. GitHub-34880
- Eine Datenbankabfrage des
BundleGraphQl
-Moduls, das diesen Fehler zurückgegeben hat, wurde korrigiert:"debugMessage": "Notice: Undefined offset: 16 in vendor/magento/module-bundle-graph-ql/Model/Resolver/Options/Collection.php on line 130"
.GitHub-34991
Allgemeine Fehlerbehebungen
- Magento Open Source zeigt jetzt einen genauen Zeitbereich an, wenn ein Administrator bzw. eine Administratorin die Option "Last 24 Hours" im Dashboard „Administratorstatistiken“ auswählt. Zuvor wurde bei Magento Open Source ein falscher Zeitbereich angezeigt. Dies trat auf, weil die Zeitzone der Datenbank unverändert blieb.
- Gutschriften können jetzt sowohl für Ganzzahlen als auch für Dezimalzahlen generiert werden. Zuvor wurden nur ganzzahlige Mengen unterstützt.
- Die Validierungsregel für die Eingabe der Postleitzahl des Kunden nur numerisch funktioniert jetzt wie erwartet im Feld Edit Customer Address (Store > Attribute > Customer Address). Zuvor wurden Informationen zur Kundenadresse ohne Validierung der Postleitzahl gespeichert.
- Global freigegebene Kundenkonten verfügen jetzt über Adressen, die anhand der Liste der zulässigen Länder für die aktuelle Website überprüft und erfolgreich gespeichert werden. Zuvor wurden diese Konten fälschlicherweise mit den zulässigen Ländern der Website verglichen, in denen der Kunde registriert war.
- Breadcrumbs aus der CMS-Seitenhierarchie werden nicht mehr angezeigt, wenn Enable Hierarchy Functionality deaktiviert ist. Zuvor wurden Breadcrumbs angezeigt. Wenn Käufer darauf klickten, wurde eine 404-Seite angezeigt. GitHub-35513
- Das Entfernen eines Produkts von allen Websites über den Administrator verursacht nicht mehr den folgenden Fehler:
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 jetzt wie erwartet, wenn ein Administrator bzw. eine Administratorin ein neues Element hinzufügt. Zuvor verhielt sich die Zeilenkomponente falsch, wenn ein neues einfaches Produkt zu einem gruppierten Produkt hinzugefügt wurde. GitHub-34850
- Korrigierte Tippfehler und falsche Grammatik in der
app/code/Magento/Backend/etc/menu.xsd
.
- Die
app/code/Magento/Authorization/README.md
wurde aktualisiert, um die Tabellenerstellung genau zu beschreiben.
- Die
recordLogin
wurde aktualisiert, um Anmeldewerte für das Benutzermodell festzulegen und die richtigen Werte in denlogdate
- undlognum
-Feldern deradmin_user
-Tabelle beizubehalten. Zuvor wurden Anmeldeversuche für aktualisierte Admin-Benutzer nicht aufgezeichnet.
- GitHub-Problemvorlagen wurden in Problemformulare für Probleme mit Entwicklererlebnissen und Funktionsanfragen konvertiert.
- Das
Is required
Kundenattribut wird jetzt entsprechend dem Website-Umfang für das Admin-Kundenbearbeitungsformular implementiert.
- Das Grid Filter Condition Type Feld mit Kunden- und Kundenadressattributen ist auf der Seite zur Attributbearbeitung nicht mehr sichtbar, 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 eingibt. Zuvor löste die Anwendung diese Ausnahme aus, 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 Show my quotes auf der My Quotes funktioniert jetzt erwartungsgemäß. Zuvor wurden in den Filterergebnissen Zitate anderer Admin-Benutzer eingeschlossen.
GraphQL
Types
, die mehrere Schnittstellen im GraphQL-Code implementieren, können jetzt durch ein&
,
getrennt und gemäß der GraphQL-Spezifikation@doc
werden.
- Die
setShippingAddressesOnCart
-Mutation unterstützt jetzt das Festlegen von numerischen Regions-Codes alsregion
. Zuvor funktionierte diese Mutation für numerische Regionscodewerte falsch.
- Die
products
-Abfrage gibt jetzt nur noch Überprüfungen zurück, die mit dem angegebenen Umfang verknüpft sind. Zuvor gaben Abfragen Bewertungen aus allen Stores zurück.
- Kategorieberechtigungen werden jetzt bei GraphQL-Anfragen berücksichtigt.
- Die
customer
-Abfrage filtert jetzt Bestellungen mit einem angegebenenfrom
undto
Bereich korrekt. GitHub-31537
- Die
product
Abfrage gibt jetzt die richtigen Kategoriedaten in der Aggregation zurück. Zuvor hatattribute_code.category_uid
den Wert voncategory_id
anstelle voncategory_uid
zurückgegeben.
- Die
customerOrders
-Abfrage gibt keinen\"model\" value should be specified
mehr aus. GitHub-35852
- Die
customer
-Abfrage filtert jetzt Bestellungen nach Umfang. Sie können jetzt angeben, ob die Abfrage Bestellungen nach Store, Website oder global filtern soll.
- Die
categoryList
-Abfrage gibt jetzt eine genaue Produktzahl für verankerte und nicht verankerte übergeordnete Kategorien zurück. Das neue Attributis_anchor
wurde zur Liste der ausgewählten Spalten der Kategoriesammlung hinzugefügt. Zuvor wurde bei Anfragen eine Produktzahl 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 Speicher in einer Multi-Store-Bereitstellung anzumelden. GitHub-35084
- Die
createEmptyCart
-Mutation löst jetzt wie erwartet eine Ausnahme aus, wenn ein abgelaufenes Token verwendet wird. GitHub-26112
- Fehlermeldungen bei Warenkorbabfragen wurden informativer gestaltet. GitHub-34546
- Die Aggregationsdaten in der Antwort auf eine
products
Abfrage enthalten jetzt die richtigen Werte für die Preisart Attributattribute_code
undlabel
. GitHub-28878
- Die
products
Abfrage gibt Kategorieinformationen erwartungsgemäß zurück, wenn das Datenbankpräfix einen Wert ungleich null aufweist. Zuvor wurde einInternal server error
zurückgegeben. GitHub-36117
- Der Rückgabetyp für die
getCustomerIsGuest
wurde korrigiert. GitHub-29529
- Das
Magento\CatalogGraphQl\Plugin\DesignLoader
-Plug-in wurde überarbeitet.
- Das Neuladen des Warenkorbs wird jetzt nur noch einmal wie erwartet ausgelöst, wenn der Warenkorb durch GraphQL-Mutationen initialisiert wird. Zuvor löste das Laden des Warenkorbs eine unnötige erneute Überprüfung des Warenkorbs für den Lagerbestand aus, was bei jedem Laden des Warenkorbs erhebliche Ressourcen verbrauchte.
- Der
gift_message
wurde derOrderItemInterface
hinzugefügt. GitHub-29418
- In GraphQL-Antworten zurückgegebene Produktoptionen enthalten jetzt nur noch die Produkte, die sich in dem 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 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
var/log/exception.log
für die Google V3-reCAPTCHA-Admin-Anmeldung wurde behoben, und es werden keine Fehlermeldungen protokolliert. Zuvor wurde der folgende Fehler alle paar Sekunden ausgegeben, wenn ein Administrator bzw. eine Administratorin seine/ihre 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 das PDF des Rechnungsscheins wurden aktualisiert.
Import/Export
- Der Import eines Produkts mit demselben numerischen URL-Schlüssel wie ein vorhandenes Produkt, aber ohne das alphabetische Terminal-Zeichen führt nicht mehr zu einem Validierungsfehler, wenn die Product URL Suffix in der Admin-Liste auf leer festgelegt ist.
- Der
bin/magento app:config:import
Befehl importiert jetzt erfolgreich den Inhalt einerconfig.php
-Datei, wenn sie bestimmtecron
enthält. Zuvor ist der Import mit folgendem Fehler fehlgeschlagen: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 ist der Export aufgrund der Größe der hochgeladenen Datei fehlgeschlagen.
- Der Produktstatus wird jetzt korrekt importiert, wenn in der CSV-Datei Inventardaten-Spalten fehlen. Zuvor wurde nach dem Produktimport dem Produkt automatisch die Standardquelle zugewiesen, die Menge auf null gesetzt und der Status als Nicht vorrätig angegeben, wenn Lagerdatenspalten in der CSV-Datei fehlten.
- Durch den Import von erweiterten Preisfindungswerten erhalten Sie jetzt die richtige Anzahl für neue und aktualisierte Datensätze, wenn der Import mehr als 100 Datensätze umfasst. Zuvor wurde bei der Erfolgsmeldung zum Import die falsche Anzahl angegeben.
- Exportierte CSV-Dateien enthalten jetzt die richtigen Pfade zu Kategorienamen, die in mehreren Sprachen gespeichert werden. Für die Kategoriesammlung 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 wurde jetzt erfolgreich abgeschlossen. Zuvor wurde ein interner Server-Fehler ausgegeben, wenn eine produktbezogene Zeile in mehrere Batches aufgeteilt wurde.
- Der
Fixer.io
-Importdienst funktioniert jetzt erwartungsgemäß. Die Währungskurse wurden importiert. GitHub-36010
Index
- Die Neuindizierung des Preises wird jetzt erfolgreich ausgeführt, wenn der Katalog Bundle enthält, die keiner Website zugewiesen sind. Zuvor trat der folgende Fehler bei der Ausführung des Produktpreisindex auf:
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
colinmollenhour/php-redis-session-abstract
-Modul und PHP 8.1 wurden behoben. GitHub-35634
Reihenfolge
- Das im Installationsskript übergebene Bestellpräfix wird nun korrekt zur Bestell-ID hinzugefügt.
- Die Seite mit den Bestelldetails 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 Bestellstatus der Storefront ist jetzt für teilweise zurückerstattete Bestellungen korrekt. Zuvor blieb eine Bestellung nach dem Versand im Verarbeitungszustand, als eine Teilerstattung angewendet wurde. GitHub-35528
- Die Kundengruppe wird für eine Bestellung, von einem Gastbenutzer erstellt wurde jetzt korrekt als „Nicht angemeldet“ dargestellt. Zuvor war die Kundengruppe in der Zusammenfassung der Gastbestellungen NULL, was sich auf Bestätigungs-E-Mails und den Bestellexport auswirkte. GitHub-35440
- Virtuellen Bestellungen wird nun wie erwartet der Status Closed zugewiesen, nachdem eine Gutschrift ausgestellt und der Kunde erstattet wurde. Zuvor wurden virtuelle Produkte als Complete in der Dropdown-Liste Status angezeigt, aber in der Fußzeile der Bestellkommentare Closed, wenn der Kommentar von der Administratorin bzw. dem Administrator hinzugefügt wurde. GitHub-35283
- Die Gäste können jetzt Bestellungen für Produkte mit einer Menge von weniger als einem aufgeben, und die Produktmenge ist jetzt streng typisiert wie
float
. Da die Produktmenge bisher strikt alsint
typisiert wurde, schlugen Bestellungen für eine Produktmenge von weniger als 1 mit dieser Meldung fehl:Some of the products are disabled
. GitHub-36060
- Die Versanderstattungen werden jetzt korrekt berechnet, wenn die Apply discount on prices Konfigurationsoption auf including taxes gesetzt ist.
- Die Raster für Rechnungen, Sendungen und Gutschriften werden jetzt nach der Archivierung der Bestellungen asynchron aktualisiert.
- Doppelte Bestellungen resultieren nicht mehr aus gleichzeitigen, identischen GraphQL-Anfragen. Anführungszeichen sind jetzt für bis zu 10 Sekunden gesperrt, um die Erstellung doppelter Bestellungen zu verhindern, und die zweite Anfrage schlägt mit diesen Fehlern fehl:
The cart isn't active
oderThe order has already been placed and is currently processing
. Dieser Sperrwert kann über die ID für denlockWaitTimeout
derMagento\Quote\Model\PlaceOrderMutex
konfiguriert werden. GitHub-36274
- Die Werte der Unternehmensattribute werden nun wie erwartet in den Abschnitten Abrechnungs- und Versandadresse des Checkout-Workflows angezeigt. Zuvor wurden Unternehmensattribute auf der Seite „Auftragsdetails“ nicht ordnungsgemäß angezeigt, da Stores bei der Auftragserstellung nicht ordnungsgemäß festgelegt wurden. Attributwerte wurden nur dann korrekt gespeichert, wenn die Firma anzeigen-Eigenschaft in Bereitstellungen mit mehreren Stores für Hauptwebsite auf optional gesetzt wurde.
- Der
customer_address_id
ist nun für eine neue Rechnungsadresse erwartungsgemäß eingestellt, wenn My billing and shipping address are the same Kontrollkästchen aktiviert ist. Eine zusätzliche Bedingung wurde eingeführt, um zu ermitteln, ob die Rechnungsadresse mit der Lieferadresse übereinstimmt, bevor die Kundenadressen-ID für die Lieferadresse festgelegt wird.
- Parallelitätsprobleme bei der Bestellplatzierung wurden behoben. Wenn zuvor zwei Bestellungen von verschiedenen Browsern gleichzeitig oder nahezu gleichzeitig aufgegeben wurden, wurde beiden Bestellungen dieselbe Auftrags-ID zugewiesen. GitHub-35833
- Wenn die asynchrone Indizierung aktiviert ist, funktioniert jetzt die Erstellung einer automatisch fakturierten Bestellung für ein kostenloses Produkt wie erwartet. Der
sales_order_grid or sales_invoice_grid
Tabelle für diese Bestellungen werden keine Einträge hinzugefügt. Zuvor gab es bei Magento Open Source einen Ausnahmefehler, da die Anwendung versucht hat, die Raster während der Auftragserteilung zu indizieren, anstatt sich aufcron
zu verlassen. GitHub-36334
Zahlungsmethoden
- Die COD-Zahlungsmethode wird im Checkout-Workflow der Storefront nicht mehr gerendert, wenn COD für das in den Versand- und Rechnungsadressen angegebene Land befreit ist. Zuvor wurden keine Admin-Konfigurationseinstellungen für diese Funktion implementiert.
- Vault-Zahlungsinformationen werden nicht mehr im Abschnitt Zahlung des Workflows zur Erstellung von Admin-Bestellungen angezeigt, wenn der Einkäufer kein Token gespeichert hat. GitHub-33954
- Benutzerdefinierte Preise werden nicht mehr verdoppelt, nachdem eine Rabattregel durch die Warenkorbpreisregel angewendet wird. GitHub-35154
- Der Status „Neuer Auftrag ausstehend“ wird jetzt wie erwartet berücksichtigt, wenn eine Bestellung mit der Zahlungsmethode „Zwischensumme Null“ aufgegeben wird.
- Die Einstellungen für Gast-E-Mails werden jetzt bei der Bestellerstellung für einen Gast-Shopper mit PayPal Express über GraphQL berücksichtigt. Zuvor wurde die eingestellte E-Mail-Adresse durch die im PayPal-Konto festgelegte E-Mail-Adresse überschrieben.
Braintree
- Auftrags-IDs werden nun den Abwicklungsanfragen für Zahlungsvorgänge hinzugefügt.
- Magento Open Source gibt nicht mehr den folgenden Fehler aus, wenn ein Händler auf Reports > Braintree Settlement klickt:
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
. GitHub-35434
- Die
customerPaymentTokens
Abfrage gibt keine Braintree-Token mehr zurück, wenn der Tresor auf der Admin deaktiviert ist.
- Die Pay Later Schaltfläche und die Banner wurden für Italien und Spanien aktiviert.
- Admin-Benutzer können jetzt eine Bestellung erstellen oder neu bestellen, wenn die Braintree-Zahlungsmethode aktiviert ist. Zuvor gab es in Magento Open Source diesen Fehler:
report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174
.
- Der 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 Magento Open Source wurde dieser Konsolenfehler angezeigt:
adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66)
. GitHub-35961
- Betrugsschutz, ACH-Zahlung und Webhooks für lokale Zahlungsmethoden wurden implementiert. Der Webhook zum Schutz vor Betrug wird nur ausgelöst, wenn eine Risikoentscheidung im 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-Stile entfernt.
- Die Option "Braintree Vault-Zahlungsmethode“ bleibt im Checkout-Workflow aktiviert, wenn ein Käufer seine Rechnungsadresse aktualisiert. Zuvor wurde die Auswahl der Zahlungsmethode aufgehoben, wenn der Käufer die Schaltfläche "My billing and shipping address are the same" deaktiviert hatte.
- Zeileneinträge werden jetzt für PayPal-Transaktionen übergeben, wenn die Send Line Items Konfigurationseinstellung vom Administrator aktiviert wurde.
- Die Validierungslogik für das Account Number-Feld der ACH-Zahlungsmethode unterstützt jetzt einen vierstelligen bis 17-stelligen Text.
- Die
customerPaymentTokens
Abfrage gibt keine Braintree-Token mehr zurück, wenn der Tresor vom Administrator deaktiviert wird.
- Admin-Benutzer können jetzt eine Bestellung erstellen oder für Kunden neu bestellen, wenn die Braintree-Zahlungsmethode aktiviert ist. Zuvor gab es in Magento Open Source folgenden Fehler:
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 Storefronts verwenden, in denen Enable Card Payments deaktiviert wurde. Zuvor gab Magento Open Source diesen JavaScript-Fehler:
_adapter.js:66 Uncaught TypeError: Cannot read properties of undefined (reading 'clientToken')at Object.getClientToken (adapter.js:66:66).
Leistung
- Der Preisindizierer löscht jetzt veraltete Daten wie erwartet, nachdem Datensätze während der teilweisen Neuindizierung großer Kataloge ersetzt wurden. Zuvor wurden bei der Neuindizierung veraltete Datensätze entfernt, bevor sie ersetzt wurden. Dadurch verschwanden Produkte gelegentlich vorübergehend aus der Storefront. GitHub-35616
- Die Leistung des
bin/magento/setup:upgrade
-Befehls wurde verbessert. Zuvor wurden durch diesen Befehl die Datenbank-Trigger neu erstellt, was zu erheblichen Ausfallzeiten während der Befehlsausführung führte. Darüber hinaus kehrten die Indexer nicht in den geplanten Modus zurück und blieben im Speichermodus. GitHub-33386
- Die Aktualisierung der Stufenpreise durch die API wird jetzt schneller ausgeführt. Zuvor führte die Aktualisierung der Stufenpreise zu unnötigen
SELECT
-Abfragen, die die Ausführung verzögerten, wenn einem Produkt viele Kundengruppen zugewiesen waren.
- 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 Datumsangaben Bestellsumme () und bis werden nun nach der Auswahl aus der Datumsauswahl korrekt angezeigt.
- Die
ANDROID_PAY_CARD
inBraintree/Ui/Component/Report/Listing/Column/PaymentType.php
hatGOOGLE_PAY_CARD
ersetzt. Dadurch werden Probleme mit dem Braintree-Bericht behoben.
Reviews
- Admin-Benutzer mit eingeschränktem Zugriff auf einen bestimmten Bereich können jetzt Produktüberprüfungen wie erwartet löschen.
Rollen
- Es wurde eine fehlende ACL für Stores > Configuration > Services > OAuth hinzugefügt. Zuvor konnten Sie beim Einrichten von Rollenberechtigungen keinen Zugriff auf diese OAuth-Konfigurationseinstellung definieren.
Suche
- Die Suche nach Zeichenfolgen in Anführungszeichen funktioniert jetzt erwartungsgemäß, wenn die Minimum Terms to Match Konfigurationseinstellung aktiviert ist. Zuvor gab es in Magento Open Source diesen Fehler:
{"error":{"root_cause":[{"type":"parsing_exception","reason":"[match_phrase] query does not support [minimum_should_match]' ...
.
- Der Anmeldepunkt Suchfilter für Kundendatensätze in den Kundenrastern für Kundenaufträge funktioniert jetzt bei der Auftragserstellung wie erwartet.
- Die Qualität der Suchvorschläge für Mehrwortabfragen wurde verbessert.
- Suchergebnisse enthalten jetzt nicht mehr vorrätige Optionsausgaben für alle verfügbaren Produkte, wenn Display Out Of Stock Products aktiviert ist GitHub-36055
Lieferung
- Die Versandraten für FedEx, USPS und UPS werden korrekt berechnet, wenn die Regel für den freien Warenkorb so eingestellt ist, dass sie nur einer Teilmenge der Artikel im Warenkorb entspricht.
- Die Admin-Versandseite zeigt die Option Kostenloser Versand nicht mehr an, wenn die Bestellsumme kleiner als der angegebene Mindestbestellbetrag ist, der für den kostenlosen Versand infrage kommt. GitHub-33697
- Magento Open Source berücksichtigt jetzt beim Anzeigen von Versand oder Kundenadresse die Konfigurationseinstellung Admin Customer Show Company . Wenn diese Einstellung deaktiviert ist, ist die Versandfirma nicht mehr im Versand-, Kunden- oder Datenbankauftragsdatensatz enthalten. Zuvor wurden die Informationen trotz Deaktivierung der Einstellung angezeigt. GitHub-33729
- Ein überflüssiger Speichervorgang für Angebotssätze bei der Versandschätzung wurde entfernt.
storeId
Bereich wird jetzt direkt aus$request->getStoreId()
angewendet, um sicherzustellen, dass der Bereich nicht verloren geht, wenn ein Angebot von einem Admin-Benutzer erstellt wird. Zuvor traten gelegentlich Probleme mit Versandmethoden auf, wenn ein Angebot vom Administrator mithilfe von Drittanbietermodulen erstellt wurde.
- SEO-freundliche URLs werden jetzt für Produkte generiert, deren
url_key
auf Store-Ansichtsebene überschrieben wird. Zuvor wurden Kategorie-Produkt-URLs nicht an SEO-freundliche URLs umgeleitet.
- Bei der Magento Open Source wird kein Fehler mehr für den Mindestbestellbetrag ausgegeben, wenn ein Rabatt auf die Versandkosten angewendet wird.
- Rückerstattungen für Versandkosten werden jetzt korrekt berechnet, wenn Steuern angewendet werden, nachdem ein Rabatt auf den Versand angewendet wurde.
- Alle anwendbaren Promotions für einen angeforderten Warenkorb über die GraphQL
cart
-Abfrage werden zusammen zurückgegeben. Zu den Werbeaktionen gehören Preisnachlässe für Einzelposten, Warenkorbregeln/-rabatte, Coupons, Geschenkgutscheine und Warenkorbgutschriften. GitHub-35545
- Die
price_excl_tax
- undprice_excl_tax
wurden der Ausgabe dersetShippingMethodsOnCart
-Mutation hinzugefügt. GitHub-31206
- Eindeutige Versand-IDs werden jetzt in GraphQL-Antworten wie erwartet mit Versanddetails für Bestellungen an mehrere Adressen für GraphQL-Abfragen übergeben.
Steuer
- Die Display Zero Tax Subtotal Konfigurationseinstellung wird jetzt wie erwartet auf Bestellungen in Bereitstellungen mit mehreren Versandmethoden angewendet. Zuvor war das Feld Null-Steuer auf der Warenkorbseite während des Checkouts sichtbar, bevor eine Versandmethode ausgewählt wurde, selbst wenn diese Einstellung deaktiviert war. GitHub-35561
- Magento Open Source kann jetzt in PHP 8.1-Bereitstellungen gruppierte Produkte mit MwSt. auf der Kategorieseite der Storefront anzeigen. Zuvor zeigte Magento Open Source keine Liste von Produkten an und löste diese Ausnahme aus:
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
- Händler können eine geplante Aktualisierung nicht mehr in eine andere Aktualisierung verschieben, die dieselbe Regel-ID enthält. Zuvor wurden durch Planaktualisierungen für Warenkorbpreisregeln doppelte Zeitpläne erstellt, wenn eine Aktualisierung in eine andere Aktualisierung verschoben wurde, die dieselbe Regel-ID enthielt.
- Die automatische Zuordnung von Kundengruppen funktioniert jetzt, wenn mit der Adresse des Kunden keine MwSt.-Kennung verknüpft ist. Wenn die Adresse keine MwSt.-ID enthält, wird sie als zu einem nicht MwSt.-registrierten Kunden gehörend behandelt, und Magento Open Source ändert die Kundengruppe in eine nicht MwSt.-Gruppe. Zuvor wurde bei aktivierter Enable Automatic Assignment to Customer Group das Kundenkonto nicht automatisch dem
customerGroup
zugewiesen, wenn die MwSt.-ID aus dem Kundenkonto gelöscht wurde.
- Die richtigen dynamischen Blöcke werden jetzt für die Regeln des gestaffelten Katalogs im Staging-Vorschaumodus angezeigt. Zuvor wurden nicht verwandte dynamische Blöcke angezeigt.
- Mehrere Steuern werden jetzt im Abschnitt Steuerzusammenfassung von Rechnungen und Gutschriften korrekt dargestellt, wenn beim Checkout mehrere Versandarten angewendet werden.
- Rabatte werden nicht mehr angewendet, wenn eine Bestellzwischensumme einschließlich Steuer und festem Produktsteuerbetrag die Warenkorbregelbedingung auf der Warenkorbseite überschreitet. Zuvor wurden Rabatte auch dann angewendet, wenn die Gesamtzahl die Warenkorbregelbedingung überschritten hat.
- Sie können jetzt eine
vat_id
angeben, wenn Sie GraphQL verwenden, um die Adresse eines Gastkäufers hinzuzufügen oder zu aktualisieren.
Test
- Es wurden Modultestfehler für verschiedene Versionen der
ICU
undlibxml
Bibliotheken behoben.
- Entwicklerinnen und Entwickler können jetzt das System anweisen, eine Datenkorrektur in einer bestimmten Store-Ansicht auszuführen. Der neue optionale Parameter
scope
akzeptiert einestring
, die dem Alias der Ladeneinrichtung entspricht.
- Es wurde die Möglichkeit hinzugefügt, mit dem optionalen
count
mehrere Instanzen eines Datenelements zu generieren.
- Nicht-native
array_first
wurden aus den Dev-Abhängigkeiten im MFTF-Framework entfernt.
Übersetzungen und Gebietsschemata
- Die Inline-Übersetzung funktioniert jetzt korrekt mit Sonderzeichen einschließlich erweiterter Unicode-Zeichen in Sätzen, die sich in SCRIPT-Tags befinden. Zuvor wurden japanische Zeichen im bearbeiteten Skript falsch gerendert, wenn eine Inline-Übersetzung verwendet wurde.
- Das
ñ
Zeichen in einem Produktnamen wird jetzt während der Erstellung des URL-Schlüssels inn
konvertiert.
- Die Ausgabe von laufenden
bin/magento i18n:collect-phrases
enthält jetzt wie erwartet Übersetzungen von E-Mail-Vorlagen independ
Konstrukten. GitHub-35449
- Japanische Zeichen können jetzt direkt in das Attribut-Set für Produktseiten eingegeben werden (Kombinationsfeld). Zuvor führte die direkte Eingabe japanischer Zeichen in dieses Kombinationsfeld zu geänderten oder gelöschten Zeichen, wenn der Firefox-Browser auf MacOS ausgeführt wurde. Das
textInput
HTML-Attribut, das die japanische Zeichenkonvertierung in allen Browsern besser verarbeiten kann, hat dieValue
- undvalueUpdate
-Attribute ersetzt.
- Die
getOptions
-Methode ruft jetztprice
Attributbeschriftungswerte basierend auf der Store-Ansicht korrekt ab. Zuvor wurde dasprice
-Attribut bei GraphQL-Vorgängen für die falsche Store-Ansicht übersetzt.
Benutzeroberfläche
- Website-spezifische Währung wird jetzt wie erwartet für die Spalten „Sonderpreis“, „Kosten“ und „UVP“ im Admin-Produktraster verwendet. Zuvor wurde das richtige Währungssymbol nicht im Admin-Katalog-Produktraster angezeigt, wenn nach der Store-Ansicht nach einem Sonderpreis gefiltert wurde.
- Die Drag-and-Drop-Funktion benutzerdefinierter 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.
- Admin-Dashboard-Diagramme zeigen jetzt erwartungsgemäß JTB-Zeitintervalle vom Beginn des aktuellen Kalenderjahres bis zum aktuellen Datum an. Zuvor umfassten Datumsbereiche mehr als 12 Monate.
- Ein fehlendes Standard-Favicon auf der Startseite der Storefront wurde hinzugefügt. GitHub-35493
- Der Administrator zeigt jetzt erfolgreich das neueste Anmeldedatum jedes Admin-Benutzers an. Wenn sich ein Administrator bzw. eine Administratorin zum ersten Mal beim Admin anmeldete, wurde zuvor ein leerer Wert für das Anmeldedatum im Admin-Benutzerraster angezeigt.
- Die Funktion Vorschau von 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.
- Hinzugefügter informativer Text unter dem
Storefront Properties
Eingabefeld desSearch Weight
Attributs in Admin Stores > Attributes > Product.
- Die E-Mail-Vorschau wird jetzt auf einer separaten Registerkarte anstelle eines Popup-Fensters geöffnet, das eine breitere Ansicht des E-Mail-Inhalts bietet. Zuvor wurde der E-Mail-Inhalt abgeschnitten.
- Die Filterfunktion für das Benutzerrollenraster (Admin System > Permissions > User roles > Administrators) funktioniert jetzt erwartungsgemäß. Der Array-Wert wird jetzt separat verarbeitet. Zuvor gab Magento Open Source beim Versuch, eine Abfrage in dieses Raster einzugeben, diesen Konsolenfehler, und die Seite wurde nicht geladen:
Uncaught TypeError: Cannot read properties of null
. GitHub-35993
- Die Validierung für Attributwerte wurde beim Erstellen eines Kunden über die REST-API 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
customer_entity
-Tabelle gespeichert.
- Adressen, die während des Checkouts hinzugefügt wurden, behalten jetzt ihr erwartetes Format bei. Zuvor wurden Leerzeilen ignoriert.
- Das Ändern der Rasteransicht Spalten des Produktrasters und das Auswählen neuer Spalten für eine benutzerdefinierte Ansicht stellt keine Trigger mehr für die Aktion Alle Rasterspalten auswählen dar. Zuvor war das Spaltenfeld nicht mehr vorhanden und Produkte im Raster wurden ausgewählt oder deaktiviert. GitHub-36302
- Admin-Benutzer können jetzt das Protokoll Abgeschlossene Aufgaben von Admin erfolgreich löschen. Zuvor hatte der Administrator bzw. die Administratorin folgenden Fehler angezeigt:
Something went wrong
. GitHub-36255
- Die Einstellung für die Design-Kopfzeile
Welcome Text
jetzt ein einfaches Anführungszeichen enthalten. Zuvor gab Magento Open Source diesen JavaScript-Fehler:Uncaught SyntaxError: Unable to process binding "ifnot: function(){return customer().fullname }"
.
URL-Neuschreibungen
- Durch das Ändern der Produktsichtbarkeit auf Not Visible Individually im globalen Bereich für alle Store-Ansichten werden jetzt nur URL-Neuschreibungen für Store-Ansichten entfernt, die das Attribut für die Sichtbarkeit 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 der Ansichten, die das URL-Schlüsselattribut überschrieben haben (jedoch nicht die Sichtbarkeitseinstellung). Zuvor wurden URL-Rewrite-Regeln nicht angewendet, wenn die 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, auch wenn das Bild nicht erfolgreich entfernt wurde.
- Händler können jetzt die REST-API verwenden, um eine Gutschrift für eine Bestellung mit einer Gesamtsumme von null zu erstellen. Zuvor hat Magento Open Source diesen 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-Seite zur Produktbearbeitung spiegelt jetzt die Zuweisungen eines Produkts genau wider, nachdem die Website-Zuweisung des Produkts mithilfe der REST-API geändert wurde. GitHub-36281
- Doppelte Optionskennungen können bei Massen-REST-API-Anfragen zum Aktualisieren von Produkten nicht mehr für Attribute mit mehreren Auswahlmöglichkeiten eingeschlossen werden. Zuvor konnten Sie beim Senden einer Massen-API-Anfrage zum Aktualisieren eines Produkts doppelte Optionen-IDs für Attribute mit Mehrfachauswahl festlegen. Als dieses Attribut mit Mehrfachauswahl für die Aufnahme in die mehrschichtige Navigation konfiguriert wurde, schlug die EAV-Indizierung mit einem
Duplicate entry
Fehler fehl.
- Produktnamen in Warenkörben verwenden jetzt die erwarteten Werte der angegebenen Shop-Ansicht. Zuvor haben Produktnamen im Warenkorb in den Warenkorbantworten der REST-API immer den Standardwert für die Store-Ansicht 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 in Bereitstellungen mit aktiviertem Inventar erfolgreich abgeschlossen.
- Der Service „Fixer-Währung“ funktioniert jetzt wie erwartet mit Schlüsseln, die über APIlayer generiert werden, und die Währungskurse werden korrekt exportiert. Zuvor gab es in Magento Open Source einen Fehler, wenn ein Händler versuchte, Wechselkurse ü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 auf den Katalogsuchseiten „Admin“ und „Storefront“ korrekt aktualisiert, indem die API „Grundpreis verwalten“ verwendet wird. GitHub-33767
Wunschliste
- Käufer können jetzt nach der Anmeldung Produkte zu ihrer Wunschliste hinzufügen. Aufgrund von Problemen mit der Validierung des Formularschlüssels nach der Anmeldung wurde der mit der Anfrage „Zur Wunschliste hinzufügen“ gesendete Formularschlüssel zuvor ungültig gemacht.
- Produkte werden nun wie erwartet aus der Produktliste zur Wunschliste hinzugefügt und die Seiten angezeigt, nachdem ein Gast-Kunde sein Konto über eine Bestätigungs-E-Mail bestätigt hat. Zuvor wurden Produkte nach der Kontobestätigung nicht auf die Wunschliste gesetzt.
- Die
addProductsToWishlist
-Abfrage gibt jetzt eine informative Fehlermeldung zurück, wenn ein Käufer versucht, einen Artikel mit einem ungültigen Wert für die benutzerdefinierte Option „Produktselect
" zu einer Wunschliste hinzuzufügen. Zuvor fehlte die Server-Validierung für den benutzerdefinierten Dropdown-Optionswert, 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 keine Gutschrift erstellen, wenn der kostenlose Versand aktiviert ist (Stores > Configuration > Sales > Delivery Methods) und der angezeigte Versandpreis die Steuer enthält. Wenn Sie versuchen, eine Gutschrift zu erstellen, löst Adobe Commerce diese 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. Gehen Sie zu Quality Patches Tool: Suchen Sie nach Patches und suchen Sie nach Patch ACSD-50814.