Versionshinweise zu Adobe Commerce 2.4.3
Adobe Systems Commerce 2.4.3 bietet Verbesserungen in Bezug auf Leistung und Sicherheit sowie bedeutende Verbesserungen der Plattform. Zu den Sicherheitsverbesserungen gehören die Erweiterung der reCAPTCHA-Abdeckung und die Aufnahme einer integrierten Ratenbegrenzung. Core Composer-Abhängigkeiten und Bibliotheken von Drittanbietern wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.x kompatibel sind.
Diese Version enthält über 370 neue Korrekturen am Kerncode und 33 Sicherheitsverbesserungen. Alle bekannte Probleme, die in der Versionshinweise von Adobe Systems Commerce 2.4.2 identifiziert wurden, wurden in diesem Release behoben.
Informationen zu Adobe Systems Commerce 2.4.2-p2 finden Sie Adobe Systems Commerce 2.4.2-p2-Versionshinweise .
Andere Versionsinformationen
Obwohl der Code für diese Features mit vierteljährlichen Releases gebündelt wird, werden mehrere dieser Projekte (z. B. B2B, Page Builder und Progressiv Web Applications (PWA) Studio) auch unabhängig voneinander veröffentlicht. Fehlerbehebungen für diese Projekte sind in den separaten, projektspezifischen Versionsinformationen dokumentiert, die in der Dokumentation für jedes Projekt verfügbar sind.
Übernehmen MC-43048__set_rate_limits__2.4.3.Patch zur Behebung eines Problems mit der API-Ratenbegrenzung
Dieser Hotfix bietet eine Lösung für das Problem, dass Web-APIs keine Anforderungen verarbeiten können, die mehr als 20 Elemente in einem Array enthalten.Dieses Problem betrifft Bereitstellungen, die Magento Open Source 2.4.3, Adobe Systems Commerce 2.4.3 oder 2.3.7-p1 ausgeführt werden. Diesen Versionen wurde eine integrierte Ratenbegrenzung hinzugefügt, um Denial-of-Service-Angriffe (DoS) zu verhindern, und das Standardmaximum wurde auf 20 festgelegt. Dadurch wird der Standardgrenzwert Patch auf einen höheren Wert zurückgesetzt. Wenn Sie vermuten, dass Ihre Geschäft einem DoS-Angriff ausgesetzt ist, empfiehlt Adobe Systems, die Standardeingabelimits auf einen niedrigeren Wert zu senken, um die Anzahl der Ressourcen einzuschränken, die angefordert werden können. Siehe Web-API Anforderungen mit mehr als 20 Elementen im Array kann nicht verarbeitet werden Knowledge Basis Artikel.
Übernehmen AC-384__Fix_Incompatible_PHP_Methode__2.4.3_ce.Patch zur Behebung eines schwerwiegenden PHP-Fehlers beim Upgrade
Der folgende schwerwiegende Fehler kann während des Upgrades auf Adobe Systems Commerce 2.4.3 auftreten:
PHP Fatal error: Uncaught Error: Call to undefined function Magento\Framework\Filesystem\Directory\str_contains() in [...]/magento/vendor/magento/framework/Filesystem/Directory/DenyListPathValidator.php:74
Dieser Fehler resultiert aus der Verwendung der Funktion, bei der str_contains
es sich um eine PHP 8.x-Funktion handelt. Adobe Systems Commerce 2.4.3 unterstützt PHP 8.x nicht. Dieser Hotfix ersetzt diese Funktion durch eine unterstützte PHP 7.x-Funktion. Weitere Informationen finden Sie im Artikel Adobe Systems Commerce-Upgrade 2.4.3, 2.3.7-p1 PHP Fataler Fehler Hotfix Knowledge Basis Artikel.
AC-3022.patch
Übernehmen, DHL weiterhin als Versanddienstleister anzubieten
DHL hat die Schemaversion 6.2 eingeführt und wird die Schemaversion 6.0 in naher Zukunft einstellen. Adobe Commerce 2.4.4 und frühere Versionen, die die DHL-Integration unterstützen, unterstützen nur Version 6.0. Händler, die diese Versionen bereitstellen, sollten AC-3022.patch
so bald wie möglich beantragen, DHL weiterhin als Reederei anzubieten. Informationen Herunterladen und Installieren des Patches finden Sie im Knowledgebase-ArtikelApply a patch to continue offer DHL as shipping carrier) .
Höhepunkte
Achten Sie auf die folgenden Highlights in dieser Version.
Wesentliche Sicherheitsverbesserungen
Diese Version enthält 33 Fehlerbehebungen und Verbesserungen bei der Plattformsicherheit. Viele dieser Sicherheitskorrekturen wurden auf 2.4.2-p2 und 2.3.7-p1 zurückportiert.
Dreiunddreißig Sicherheitsverbesserungen, die dabei helfen, Sicherheitslücken in der Ferncodeausführung (Remote Code Execution, RCE) und Cross-Site-Scripting (XSS) zu schließen
Bisher wurden keine bestätigten Angriffe im Zusammenhang mit diesen Problemen durchgeführt. 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 Administrator erhält. Daher erinnern wir Sie daran, alle notwendigen Schritte zu unternehmen, um Ihren Administrator zu schützen, einschließlich, aber nicht beschränkt auf diese Bemühungen: IP-Zulassungsliste, Zwei-Faktor-Authentifizierung, Verwendung eines VPN, die Verwendung eines eindeutigen Standorts anstelle von /admin
und gute Kennwort Hygiene. Eine Erläuterung dieser behobenen Probleme finden Sie Adobe Systems Sicherheitsbulletin .
Weitere Verbesserungen bei der Sicherheit
Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit, einschließlich:
-
Ein neues Composer-Plug verhindert Abhängigkeitsverwirrungen und identifiziert bösartige Pakete mit denselben Namen wie interne Pakete im öffentlichen Paket-Repository. Siehe den Blogpost von Adobe Releases New Composer Plugin with 2.4.33.
-
Ratenbegrenzung ist jetzt in -APIs integriert um DoS-Angriffe (Denial-of-Service) zu verhindern. Web-APIs erlegen jetzt Einschränkungen hinsichtlich der Größe oder Anzahl der Ressourcen auf (der standardmäßige Maximalwert ist auf 20 festgelegt und kann je nach Geschäftsanforderungen auf einen anderen Wert konfiguriert werden), die von einem Client angefordert werden können. Informationen Konfigurieren dieserfinden Sie unter „Ratenbegrenzung“.
-
Die reCAPTCHA-Abdeckung wurde erweitert und umfasst:
-
Web-APIs mit entsprechenden HTML-Seiten werden durch ReCAPTCHA abgedeckt. (Ausgenommen sind Web-APIs, auf die durch Integrationen zugegriffen wird.) Die reCAPTCHA-Abdeckung schützt Endpunkte vor Spam-Angriffen. Wenn ein Drittanbieter-Integrationsdienst, der OAuth verwendet, auf Web-APIs zugreift, ist ReCAPTCHA deaktiviert.
-
Die Storefront für Bestellungen Seite und zahlungsbezogene Web-APIs. Der reCAPTCHA-Schutz für diese Seiten ist standardmäßig deaktiviert und kann vom Administrator aus aktiviert werden. Diese Abdeckung fügt einen Anti-Brute-Force-Mechanismus hinzu, um Geschäfte vor Carding-Angriffen zu schützen.
-
Verbesserungen der Infrastruktur
Diese Version enthält Verbesserungen, die die Qualität des Frameworks verbessern, sowie die folgenden Funktionsbereiche:
-
Kundenkonto
-
Katalog
-
CMS
-
OMS
-
Import/Export
-
Promotions und Targeting
-
Warenkorb und Checkout
-
B2B
-
Staging und Vorschau
PayPal Pay Later wird jetzt Bereitstellungen unterstützt, die PayPal enthalten. Mit dieser Funktion können Käufer eine Bestellung in zweiwöchentlichen Raten bezahlen, anstatt den vollen Betrag zum Zeitpunkt des Kaufs zu bezahlen.
Neuer use_application_lock
-Indizierungsmodus. Im use_application_lock
Modus können Sie die Neuindizierung aktivieren, indem Sie entweder Umgebungsvariablen verwenden oder die app/etc/env.php
konfigurieren. Bei aktiviertem Modus müssen Sie den Indexer nach einem Fehler nicht mehr manuell zurücksetzen. Siehe Verwenden des Anwendungssperrmodus für Neuindizierungsprozesse.
Plattformverbesserungen
Version 2.4.3 ist noch nicht mit PHP 8.x kompatibel, aber die folgenden Plattformupgrades bringen uns der zukünftigen Kompatibilität mit PHP 8.x näher.
-
Core Composer-Abhängigkeiten und Bibliotheken von Drittanbietern wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.x kompatibel sind.
-
Die KnockoutJS-Bibliothek wurde auf Version 3.5.1 (die neueste Version) aktualisiert.
-
Die veraltete TinyMCE v3-Bibliothek wurde entfernt. Das
Magento_Tinymce3Banner
und die MFTF-Tests im Zusammenhang mit TinyMCE v3.x wurden aus Adobe Commerce entfernt. -
Version 2.4.3 wurde getestet und als kompatibel mit Redis 6.0.12 bestätigt. (Version 2.4.x bleibt kompatibel mit Redis 5.x.)
-
Die Laminas-Bibliotheksabhängigkeiten wurden auf PHP 8.x-kompatible Versionen aktualisiert. Einige redundante Abhängigkeiten wurden aus der
composer.json
Datei entfernt. Adobe Systems Commerce 2.4.3 verwendet Laminas 3.4.0.
Performancesteigerung
Diese Version enthält Verbesserungen, die die Indizierungszeit für die Indexer "Produktpreis" und "Katalogregel" verkürzen. Händler können jetzt eine Website aus einem Kunden Gruppe oder einem freigegebenen Katalog ausschließen, was die Anzahl der Datensätze für die Indizierung reduziert und die Indizierungszeiten verbessert.
Live-Suche
Live Search unterstützt von Adobe Sensei bietet ein intuitives Sucherlebnis, indem Algorithmen für künstliche Intelligenz und maschinelles Lernen verwendet werden, um eine umfassende Analyse aggregierter Besucherdaten durchzuführen. Siehe Versionshinweise zur Live Search.
GraphQL
Diese Version fügt GraphQL-Unterstützung für die folgenden Funktionen hinzu:
-
Freigegebene Kataloge
-
Wunschlisten. Die addWishlistItemsToCart-Mutation verschiebt Elemente aus der angegebenen Wunsch Liste in die Warenkorb des Kunden.
-
Geschenke-Register. Zu den Aufgaben gehören:
-
Verwenden Sie die Abfrage "giftRegistry", um den Inhalt der Geschenklisten des Kunden zurückzugeben.
-
Erstellen, aktualisieren oder löschen Sie Geschenklisten.
-
Aktualisieren oder Entfernen aus einer Geschenkregistrierung.
-
Verschieben Sie alle Artikel aus dem Warenkorb in die Geschenkregistrierung.
-
Hinzufügen, Aktualisieren oder Entfernen aus einer Geschenkregistrierung.
-
Teilen eine Geschenkregistrierung mit Einladenden.
-
-
Verhandelbare. Siehe
negotiableQuote
undnegotiableQuotes
Abfragen.Zu den neuen Mutationen gehören:
-
Freigegebene Routen. Die Routenabfrage und RoutableInterface unterstützen Routing-Anfragen für Produkt-, Kategorie- und CMS-Seiten. Die
urlResolver
Abfrage ist veraltet und ihre Funktionen wurde durch dieroute
Abfrage ersetzt.
Weitere Informationen zu diesen Verbesserungen finden Sie im GraphQL-Entwicklerhandbuch .
B2B
Version 2.4.3 wird B2B v1.3.2 eingeführt. Diese Version enthält mehrere Fehlerbehebungen. Siehe B2B Versionshinweise.
Page Builder
Page Builder ist jetzt als gebündelte Erweiterung in Magento Open Source verfügbar. Es ist jetzt das standardmäßige Tool zur Inhaltsbearbeitung für Adobe Commerce 2.4.3 und Magento Open Source 2.4.3. Er kann den WYSIWG-Editor durch beliebige Drittanbietermodule ersetzen.
Page Builder ersetzt den TinyMCE-Editor in den folgenden Admin-Bereichen:
- CMS-Seite
- CMS-Block
- Kategorie Beschreibung
- Produktbeschreibung
Alle in TinyMCE erstellten Inhalte wurden in Page Builder als HTML migriert.
PWA Studio
Weitere Informationen zu Verbesserungen und Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Kompatibilität finden Sie eine Liste der Versionen von PWA Studio und der entsprechenden kompatiblen Versionen.
Upgrade-Kompatibilitätstool
Der Umfang des Upgrade-Kompatibilitätstools wurde auf der Grundlage von Feedback aus der Community erweitert. Treten Sie unserem #upgrade-compatibility-tool Slack-Kanal bei, um Unterstützung vom Adobe-Produktteam und der Community zu erhalten und um Unterstützung bei der zukünftigen Ausrichtung des Tools zu erhalten.
Cloud Managed Services-Aktualisierungen
Diese Version beinhaltet Verbesserungen unserer Unterstützung für Amazon Simple Storage Service (AWS S3) und Amazon Aurora Cloud Managed Services. Sie bietet zertifizierte Unterstützung für AWS ElastiCache, AWS Elasticsearch und AWS Managed Queues (Rabbit MQ). (Wir haben die Funktionalität, Leistung und Integration dieser Services mit Adobe Commerce getestet.)
Adobe Stock-Integration
Diese Version enthält Adobe Stock Integration v2.1.1.
Vom Anbieter entwickelte Erweiterungen
In den folgenden Themen finden Sie Aktualisierungen zu Funktionen und Änderungen für diese Version:
-
Amazon Pay. Amazon Pay ist veraltet und wird in einer späteren Version 2.4.x entfernt. Version 2.4.3 und höher enthält nur Aktualisierungen aus Kompatibilitätsgründen und Fehlerbehebungen für größere Fehler.
Behobene Probleme
Wir haben Hunderte von Problemen im Code 2.4.3 behoben.
Installation, Upgrade, Bereitstellung
- Der
bin/magento setup:db:status
-Befehl gibt jetzt eine Meldung zurück, die angibt, dass nach einem erfolgreichen Upgrade alles auf dem neuesten Stand ist. Zuvor hat die Anwendung diesen Fehler angezeigt:Declarative Schema is not up to date
.
- Konfigurationswerte werden nun auf Formular neu laden beibehalten, wenn die Erstellung eines neuen konfigurierbaren Produkts fehlschlägt. Zuvor gingen beim neu laden des Formulars Werte verloren, und das Applikation zeigte folgenden Fehler an:
The value specified in the URL Key field would generate a URL that already exists
. GitHub-32102
- Das Applikation löst keine Ausnahme mehr aus, wenn Sie ein Upgrade von einem Magento Open Source Implementierung mit Redis auf Adobe Systems Commerce durchführen
bin/magento setup:upgrade
.
- Zuvor erstellte Warenkorb Preisregeln werden jetzt auf der Seite Content Staging Dashboard angezeigt, nachdem ein Implementierung von Magento Open Source auf Adobe Systems Commerce aktualisiert wurde.
- Bereitstellungen, die auf Galera Cluster ausgeführt werden, unterstützen jetzt mehr Kunden. GitHub-31038
- Administratoren können sich jetzt erfolgreich bei einem Implementierung anmelden, wenn das Applikation entweder mit der
—use-rewrites=0
Option oder mitweb/seo/use_rewrites
dem Wert 0 in installiertcore_config_data_table
wurde. GitHub-32100
- Aktualisierte
sortOrder
Ladung fürAsyncCssPlugin
. Die Applikation wird jetzt geladenAsyncCssPlugin
, bevorJsFooterPlugin
GitHub-30882
Magento\Config\Model\Config\PathValidator
prüft jetzt die Anzeige Pfad, um festzustellen, ob ein Element vorhanden ist, und verwendet stattdessen dieconfig.xml
Pfad für Tauglichkeitsprüfung, wenn es eine Konfigurations Pfad hat. GitHub-27678
- Das Kompilieren von weniger Dateien mit Grunt oder durch Server-seitig Kompilierung führt nun zu den gleichen Ergebnissen. Zuvor.
.abs- styles
, die andere.abs- styles
in_extends.less
erweitert, wurden bei der Kompilierung mit Grunt nicht richtig ausgegeben. Dies führte zu Unterschieden zwischen Produktions- und Entwicklungsbereitstellungen. GitHub-7231
AdminGWS
- Admin GWS verwendet
int
jetzt Werte für diewebsite_id
SQL-Bedingung in Admin-Sammlungen für Administratoren mit benutzerdefinierten Berechtigungen.
Adobe Stock-Integration
- Die Anwendung zeigt jetzt eine informative Nachricht und einen Link zur Seite Admin Stores > Configuration > Erweitert > System auf der Seite Suchen nach Adobe Stock an, wenn API-Schlüssel (Client-ID) und Client- nicht festgelegt sind. Zuvor hat die Anwendung diesen Fehler angezeigt:
We couldn't find any records
und kein Link.
Backend-Bereich
- Admins mit eingeschränktem Zugriff (die beispielsweise nur Zugriff auf eine Website haben) können Kategorien, die auf den globalen Umfang festgelegt sind, nicht mehr bearbeiten.
- Der generierte Systembericht (System > Support > Systembericht) wird jetzt korrekt gerendert. Zuvor war der Berichtsinhalt falsch ausgerichtet.
- Die Anwendung deaktiviert jetzt die Validierung im Feld Preis wie erwartet, wenn die Einstellung Dynamischer Preis bei der Erstellung eines Bundles aktiviert wird. Zuvor gab es einen Validierungsfehler, als Sie einen Wert aus dem Feld Preis entfernten, als die Einstellung Dynamischer Preis aktiviert war. GitHub-26214
- Unendliche Weiterleitungen treten nicht mehr auf, wenn sich die Admin-URL in Bereitstellungen, in denen die Anwendung so konfiguriert ist, dass sie von zwei URLs aus zugänglich ist, von der Standard-Website-URL unterscheidet.
Produkte im Paket
- Sie können jetzt die
addProductsToCart
-Mutation verwenden, um einem Warenkorb ein Bundle-Produkt mit mehr als einer Kontrollkästchen-Option hinzuzufügen.
- Die Preisindexierung Paket Produkte wird nun über temporäre Tabellen ausgeführt, wodurch das Sperren von Datenbanktabellen vermieden wird. Zuvor verwendete die Anwendung physische Tabellen, was zu gesperrten Tabellen führte.
- Der Preis eines Bundle-Artikels kann jetzt auf 0,00 festgelegt werden. Als Sie zuvor zur Bearbeitungsseite zurückkehrten, nachdem Sie den Preis auf 0,00 gesetzt hatten, wurde der Preis auf den Standardwert zurückgesetzt. GitHub-32383
- In den Bestelldetails für Bestellungen, die Paket Produkte enthalten, wird nun der korrekte Preis für die Paket Produkte angezeigt, wenn der Preis vor der bestellen geändert wurde.
- Der Lagerbestand eines Bundle-Produkts wird jetzt basierend auf dem Lagerstatus seiner untergeordneten Produkte aktualisiert. Bisher wurden Paket Produkte als nicht vorrätig angezeigt, wenn eine Option aus dem Produkt entfernt wurde, und das Paket Produkt hatte zwei Optionen mit derselben Produktnummer.
- Ein Administrator kann jetzt den Wert für das Attribut eines Paket
Shipment Type
Produkts ändern, nachdem es in ein anderes Attribut Gruppe verschoben wurde. Bisher wurde dieses Attribut immer mit einemTogether
Wert gespeichert, wenn es in ein anderes Attribut Gruppe als das Standard-Gruppe im Attributsatz verschoben wurde.
- Die GraphQL-Mutation
setGuestEmailOnCart
aktualisiert nun die Gast-E-Mail korrekt. Zuvor wurden die Angebots- und Angebotsadresstabellen nicht aktualisiert.
- Das Hinzufügen, Entfernen oder Aktualisieren eines untergeordneten Produkts zu einem Produktpaket über die REST-API ruft jetzt eine Neuindizierung durch den Trigger wie erwartet auf. Trigger Zuvor wurde bei diesen Aktionen keine Neuindizierung vorgenommen. Infolgedessen änderte das Bundle-Produkt seinen Lagerstatus erst nach der manuellen Neuindizierung.
- Die Anwendung zeigt jetzt die richtige Preisspanne für Bundle-Produkte mit Stufenpreisen an. GitHub-30284
- Die Anwendung zeigt jetzt den gleichen Gesamtpreis wie erwartet auf der Warenkorbseite und im Versandschritt des Checkout-Workflows an, nachdem sich der Preis einer Bundle-Option geändert hat.
- Sie können jetzt ein Produktpaket erfolgreich konfigurieren, indem Sie über einen Warenkorb eines Kunden darauf zugreifen. Zuvor wurde die Seite „Produkt konfigurieren“ nie vollständig geladen, und Sie konnten Ihre Einstellungen nicht speichern.
- Händler können jetzt für ein Produktpaket in jeder Shop-Ansicht einer Multi-Store-Bereitstellung einen eindeutigen Preis zuweisen. Website-spezifische Preise werden in der
catalog_product_bundle_selection_price
Tabelle gespeichert. Zuvor basierte der Preis eines Bundle-Produkts in der Anwendung nicht auf dem Website-Umfang, selbst wenn Stores > Configuration > Catalog > Catalog > Price > Catalog Price Scope aufWebsite
gesetzt war. Incatalog_product_bundle_selection_price
wurden keine webseitenspezifischen Preise gespeichert. GitHub-12584
- Rechnungen für Bundle-Produkte zeigen jetzt die richtige Menge für die zugehörigen einfachen Produkte an, wenn Dynamische Preisfindung deaktiviert ist. Zuvor hatten einfache Produkte, die mit dem Bundle-Produkt verknüpft waren, die Menge des übergeordneten Produkts (nicht das Bundle-Produkt). GitHub-30802
- Die
updateProductsInWishlist
-Mutation aktualisiert jetzt erfolgreich Elemente, die zu einem Bundle-Produkt in einer Wunschliste gehören. Zuvor löschte diese Mutation das Element, anstatt das Wunschlistenelement zu aktualisieren, und erstellte ein neues, wodurch die Element-ID geändert wurde.
- Sie können jetzt beim Erstellen oder Aktualisieren eines Bundle-Produkts mit dem
POST /V1/product/:sku
-Endpunkt dierequired_options
- undhas_options
-Bundle-Attribute wie erwartet festlegen. Zuvor wurden diese benutzerdefinierten Attribute trotz der Bemühungen, sie auf 1 (eins) festzulegen, auf 0 (null) gesetzt.
- Bundle-Produktdaten, die zuvor fehlten, werden jetzt in den Staging-Prozess einbezogen. Dadurch werden Inkonsistenzen im Produktverhalten behoben, wenn Käufer ein Produktpaket über die Produktlistenseite kauften, anstatt es direkt über eine Produktseite hinzuzufügen.
Cache
- Die
varnish6.vcl
wurde aktualisiert, um das Zwischenspeichern der Kundenseite zu umgehen.
CAPTCHA
- CAPTCHA validiert jetzt die von einem Kunden bereitgestellten Daten korrekt, und CAPTCHA-Felder werden nun wie erwartet angezeigt, nachdem ein Kunde mehrmals erfolglos versucht hat, mit PayPal Payflow Pro einen Checkout durchzuführen.
- Die CAPTCHA-Validierung schlägt auf der Zahlungsseite des Checkout-Workflows nicht mehr zufällig fehl.
- Die Anwendung zeigt jetzt CAPTCHA-Felder wie erwartet an, nachdem die Anzahl der fehlgeschlagenen Abschlussversuche überschritten wurde. Zuvor hat die Anwendung zwar Sie aufgefordert, die CAPTCHA-Abfrage erneut zu versuchen, aber die CAPTCHA-Felder nicht angezeigt.
- CAPTCHA funktioniert jetzt auf der Kaufbestätigungsseite erwartungsgemäß. Nachdem ein Käufer eine CAPTCHA-Frage korrekt beantwortet hatte, wurde der Lader auf der Kaufbestätigungsseite noch nie abgeschlossen und die Anwendung zeigte diesen Fehler an:
captchaData[formId] is undefined
. (Dieser Fehler trat nur auf, wenn der Käufer denselben Browser verwendete, von dem aus er zuvor auf eine Bereitstellung mit 2.3.5-p1 zugegriffen hatte.)
_.isEmpty()
Einchecken derdefaultCaptcha.js
-Datei wurde jetzt erfolgreich abgeschlossen. Zuvor wurden diese Prüfungen nicht abgeschlossen, sodass die Checkout-Seite nach dem Upgrade nicht geladen werden konnte. GitHub-31641
Warenkorb und Checkout
- Das Applikation berücksichtigt beim Konto Konvertieren und Aktualisieren von Produkt-Anzahl im Warenkorb nun Gebietsschema-spezifische Dezimallocators.
- Bei Bestellungen wird der angegebene Kundenname nicht mehr ohne Lieferadresse angegeben. Bisher wurden Namen weggelassen, weil die
same_as_billing
Hervorhebung nicht in der Datenbank gespeichert war.
- Links zu Geschenklisten bleiben jetzt wie erwartet bestehen, wenn Sie ein Produkt in der Warenkorb bearbeiten. Zuvor verschwanden diese Links, als Sie auf die Schaltfläche Warenkorb aktualisieren klickten.
- Alle Warteschlangennachrichten für Verbraucher-
quoteItemCleaner
ändern nun nach dem Löschen mehrerer Produkte ihren Status incomplete
wie erwartet. Zuvor hat nur eine Nachricht für diesen Verbraucher seinen Status incomplete
geändert, und der Rest hat den Status inin progress
geändert.
- Die Anwendung zeigt nun die Validierungsmeldung für Geschäftsbedingungen nur noch dann im entsprechenden Block an, wenn ein Käufer auf die Schaltfläche Bestellung aufgeben klickt. Zuvor wurde diese Nachricht im Block Rabattcode anwenden angezeigt, wenn ein Käufer im Checkout-Workflow die Zahlungsmethode geändert hat:
The order wasn't placed. First, agree to the terms and conditions, then try placing your order again
.
- Sie werden nun wie erwartet zum Checkout Seite weitergeleitet, nachdem Sie der Warenkorb von einem verzögern Update Vorschau ein Paket Produkt hinzugefügt und auf die Warenkorb geklickt haben. GitHub-447
- Der Applikation verwirft nun Änderungen am Abrechnung Adressformular im Checkout Zahlungsschritt, wenn der Erstkäufer nicht auf die Aktualisierungs-Button klickt und zum Versandschritt zurückkehrt.
- Die Applikation zeigt jetzt eine informative Fehlermeldung an und aktualisiert die Produkt-Anzahl nicht, wenn ein Erstkäufer eine ungültig Produkt-Anzahl hinzufügt und auf der Seite "Einkauf Warenkorb verwalten" auf die Button "Artikel und Mengen aktualisieren" klickt. Zuvor führte die Anwendung ein Upgrade des Produkts Anzahl durch, ohne eine Fehlermeldung anzuzeigen. GitHub-459
- Produkte mit einer anpassbaren Option
(File)
jetzt wie erwartet aktive Links während des Multi-Shipping-Checkout-Prozesses enthalten. Dieses verknüpfen fehlte bisher. GitHub-31095
- Das Admin-Warenkorb zeigt jetzt Produktpreise in korrekten Währungen für Shops an, die mehrere Währungen unterstützen. Bisher wurden Preise mehr als einmal in die angegebene Währung umgerechnet – zuerst, wenn Produkte aus der Storefront zum Warenkorb hinzugefügt wurden, und dann noch einmal, wenn das bestellen anschließend im Admin gerendert wurde.
- Die Applikation leert die Warenkorb nun wie erwartet, nachdem ein Administrator eine bestellen vom Administrator abgeschlossen hat, die von einem Erstkäufer in der Storefront erstellt wurde. Wenn sich der Kunde zuvor wieder anmeldete, nachdem der Administrator die bestellen abgeschlossen hatte, enthielt die Storefront Warenkorb immer noch bestellen Inhalte. GitHub-30262
- Käufer können jetzt ein Produkt zu ihrem Warenkorb hinzufügen, dessen Minimal beworbener Preis (MAP) den regulären Produktpreis übersteigt.
- Käufer können jetzt beim Auschecken mit mehreren Adressen ihre Rechnungsadresse erfolgreich aus dem Checkout-Workflow ändern.
- Alle von Gästen erstellten Paid-Payment-Transaktionen werden nun in der Datenbank gespeichert und in der Admin wie erwartet angezeigt. Zuvor wurde nur eine kleine Teilmenge gleichzeitiger Bestellungen in der Datenbank gespeichert und die meisten Bestellungen gingen aufgrund von Zeitüberschreitungen verloren, die sich aus Datenbanksperren ergaben. GitHub-25862
- Die Anwendung zeigt jetzt korrekt Inline-Begrüßungsnachrichten an, die Sonderzeichen enthalten, wenn ein Gast ein Produkt in den Mini-Warenkorb legt. Zuvor hat die Anwendung das Produkt nicht zum Mini-Warenkorb hinzugefügt oder die Begrüßungsnachricht angezeigt. GitHub-32250
- Die Versandseite des Checkout-Workflows wird jetzt erfolgreich geladen, wenn der Versand im Geschäft aktiviert ist. Zuvor gab die Anwendung einen JavaScript-Fehler aus und die Versandkassenseite wurde nicht vollständig gerendert.
- Das
itemResolvers
Argument wurde zurdi.xml
hinzugefügt. Daher ist der Checkout nicht mehr fehlerhaft, wenn konfigurierbare und gruppierte Produktmodule deaktiviert sind. GitHub-30860
- Die Anwendung zeigt jetzt die Optionsschaltflächen im Abschnitt Zahlungs- und Versandinformationen wie beim Workflow „Admin-Neubestellung“ erwartet an. GitHub-30257
- Die Anwendung wendet jetzt die Regeln für den Warenkorbpreis korrekt mit einem festen Rabatt auf Warenkorbebene an, wenn der Warenkorb ein Produkt mit mehreren Optionen enthält. Zuvor wurde die Warenkorbpreisregel nicht vollständig auf die Bestellung angewendet. GitHub-30952
- Die Schaltfläche Zum Warenkorb hinzufügen in der Ansicht der Kategorieliste funktioniert jetzt wie erwartet. GitHub-32232
- Sie können jetzt POST-
/V1/carts/mine/items
verwenden, um eine benutzerdefinierte Menge gruppierter Produkte zu einem Warenkorb hinzuzufügen. GitHub-26909
- Die Anwendung füllt den Bereich Rechnungsadresse des Checkout-Workflows nicht mehr mit der Versandadresse. Wenn zuvor das Feld Bundesland/" für die Rechnungsadresse leer war und sich die Versand- und Rechnungsadressen unterschieden, hat der Antrag das Feld Rechnungsadresse Bundesland/) mit Informationen aus der Lieferadresse ausgefüllt. GitHub-31608
Katalog
- Die Massenaktualisierung der Attribute Mengeninkremente aktivieren und Mengeninkremente funktioniert jetzt erwartungsgemäß. GitHub-29544
- Sie können jetzt erfolgreich einen freigegebenen Katalog duplizieren, der nur numerische SKUs enthält. Zuvor gab die Anwendung beim Versuch, einen freigegebenen Katalog zu duplizieren, einen Fehler aus, da die
\Magento\Catalog\Model\ProductIdLocator
-Klasse mit ausschließlich numerischen SKUs nicht ordnungsgemäß funktionierte.
- Die Anwendung gibt keinen JavaScript-Fehler mehr aus, nachdem Sie die Synchronisierung aktueller Produkte mit dem Administrator aktiviert haben. Zuvor hat die Anwendung den folgenden JavaScript-Fehler angezeigt:
Cannot read property 'status' of undefined
.
- Aktualisierungen des benutzerdefinierten Design-Layouts werden jetzt erwartungsgemäß angewendet. Zuvor wurden Aktualisierungen des benutzerdefinierten Design-Layouts ignoriert.
- Der Cache für die Produktkategorie wird jetzt während der
indexer_update_all_views
-Ausführung wie erwartet voncron
gelöscht. Zuvor waren die Produktzahlen auf der Kategorieseite nach der Neuindizierung falsch.
- Attributwerte bleiben jetzt unverändert, wenn in einer REST-API-Anfrage für Produktaktualisierungen für eine Store-Ansicht kein Attribut angegeben wird. Wenn zuvor kein Attribut angegeben wurde, setzt die Anwendung den Attributwert auf den Standardwert des Bereichs zurück.
- Das Admin-Produktraster (Admin Katalog > Produkte) zeigt jetzt die richtige Produktanzahl an, wenn Produkte nach SKU gefiltert werden.
- Die Anwendung zeigt jetzt den genauen Lagerstatus an, wenn ein Produkt zu einer CMS-Seite hinzugefügt wird, wenn die Kategorieberechtigungen aktiviert sind, und verhindert die Anzeige des Preises für die angegebene Kundengruppe. Zuvor wurden alle Produkte als nicht vorrätig angezeigt, unabhängig vom tatsächlichen Lagerstatus.
- Das Eingabefeld Advanced Pricing Customer Group Price hat jetzt eine Mindestbreite von fünf Stellen. Zuvor waren in diesem Feld nur zwei Symbole auf Displays mit niedriger Auflösung sichtbar.
- Das Programm löscht jetzt erfolgreich ein Produktmedienbild, nachdem ein Produkt gelöscht wurde. Zuvor blieb das Produktmedienbild nach erfolgreichem Löschen des Produkts im Ordner.
- Das Seitenlayout wird jetzt erwartungsgemäß aktualisiert, wenn Sie ein Produkt in Admin erstellen oder bearbeiten und anschließend eine Design-Update-Planung erstellen. GitHub-32007
- Ein benutzerdefiniertes Produktattribut mit einem Wert von null kann jetzt erfolgreich als leer gespeichert werden. Zuvor wurde dieser Wert von der Anwendung nicht auf leer aktualisiert.
- Die benutzerdefinierten Aktualisierungsdateien des Kategorielayouts gelten jetzt erwartungsgemäß für die Produkte. Zuvor stimmte das Aktualisierungs-Datei-Handle (
catalog_category_view_*
) nicht mit dem Produkt-Handle überein. GitHub-27285
- Die Sortierung wurde für die Spalte Feste Produktsteuer (FPT) in der Admin-Produktliste deaktiviert. Zuvor konnte die Seite „Produkte“ nicht neu geladen werden, nachdem die FTP-Spalte sortiert wurde.
- Die Vorschau des Page Builder-Produkte-Widgets funktioniert jetzt wie erwartet in einer Bereitstellung über mehrere Websites, wenn übereinstimmende Produkte auf jeder Website einen anderen Preis haben.
- Die Sortierung nach Position bei der Produktsuche mit GET
/rest/V1/products/?searchCriteria[filterGroups]
funktioniert jetzt erwartungsgemäß. Zuvor hatte die Produktsammlung keinen Feld-position
Sortierwert. GitHub-31591
- Admin-Benutzer können jetzt doppelte Leerzeichen in den Feldern Name und SKU im Produktraster sehen. Zuvor reduzierte die Anwendung mehrere Leerzeichen in einem einzigen Leerzeichen.
- Produkte werden jetzt als nicht vorrätig in der Storefront angezeigt, wenn die verkaufbare Menge auf der Admin-Seite 0 beträgt. Zuvor wurden diese Produkte als vorrätig in der Storefront aufgeführt, und die Anwendung zeigte eine aktive Schaltfläche Zum Warenkorb hinzufügen. GitHub-31117
- Administratoren können jetzt Produkte mit anpassbaren Optionen
(File)
dem Raster „Artikel bestellt“ im Abschnitt „Warenkorb“ (Spalte „Kundenaktivitäten„) der Seite „Admin Customer“ hinzufügen. Zuvor wurde das Applikation der Liste nicht hinzugefügt, da der Wert vor dem Einfügen in\Magento\Catalog\Model\Product\Type\AbstractType::_prepareOptions
nicht korrekt formatiert war.
- Die Applikation fordert Käufer nicht mehr auf, eine Produktoption für ein gebündeltes Produkt auszuwählen, das nur eine Option hat.
- Die Applikation zeigt nun alle Unterkategorien in Layout-Updates (Anker und Nicht-Anker-Kategorien) an, wenn ein neues Widget erstellt wird.
- Die
product
Abfrage überschreibt nicht mehr Standardwerte für alle Geschäft Ansichten in einer Geschäft Implementierung, wenn ein Produktname nur für eine Geschäft Ansicht aktualisiert wird. GitHub-31083
- Adobe Systems Commerce aktualisiert die Gesamt Seitenzahl wie erwartet, wenn Sie den Pro-Seite-Wert der Liste "Admin-bezogene Produkte", "Up-Sells" und "Cross-Sells" ändern. GitHub-31059
- Administratoren können jetzt Produkte mit zwei oder mehr anpassbaren Optionen
(File)
per Produktnummer zu einer bestellen hinzufügen.
- Das Applikation gibt keinen Fehler mehr aus, wenn ein Administrator mit eingeschränkten Berechtigungen ein Produkt-Widget zu einem CMS-Seite im Admin hinzufügt. Bisher gab der Applikation diesen Fehler aus, wenn der Administrator auf die Speichern Button: klickte.
We are sorry, an error has occurred while generating the content
- Produktdetailseiten werden jetzt mit der Option "Datum anpassbar" geöffnet, die mit dem Datum aus der vorherigen bestellen gefüllt wird, wenn "JavaScript Kalender verwenden" aktiviert ist. Der Resolver für benutzerdefinierte Datumsoptionswerte greift jetzt auf ein alternatives Format zurück, wenn der Wert nicht basierend auf der aktuellen Konfiguration formatiert ist. Zuvor war der Wert für die Option "Benutzerdefiniertes Datum" leer.
- Das Applikation zeigt jetzt nur noch einen Fehler im Warenkorb an, wenn das Produkt nicht vorrätig ist. Zuvor wurden in der Anwendung redundante Meldungen angezeigt. GitHub-27469
- Admins können jetzt ein Produkt mit einer anpassbaren Option
(File)
einer Bestellung nach SKU hinzufügen. GitHub-30285
- Sie können jetzt ein Produkt und einen Preis speichern, ohne
type_id
anzugeben. GitHub-13639
- Gruppenprodukte sind jetzt in der Storefront verfügbar, wie erwartet, wenn eine REST-
PUT /V1/products/:sku/links
-Anfrage verwendet wird, um ein neues untergeordnetes Produkt mit einem neuen Gruppenprodukt zu verknüpfen. Zuvor wurden Produkte nach der Ausführung vonbin/magento cron:run
nicht korrekt indiziert.
- Sie können kein Produkt mehr mit einem
NULL
Produktnummer Wert erstellen. Früher konnten Sie ein Produkt ohne Produktnummer Wert über einen benutzerdefinierten Importer oder direkt in der Datenbank erstellen, aber wenn Sie versuchten, es vom Administrator aus zu bearbeiten, gab die Applikation einen Fehler aus. GitHub-27411, GitHub-32525
- Durch das Hinzufügen erforderlicher benutzerdefinierter Optionen zu einem einfachen Produkt wird dieses nicht mehr ohne Vorwarnung aus übergeordneten zusammengesetzten Produkten entfernt. Das Applikation zeigt nun eine informative Warnung an und speichert das Produkt nicht. Zuvor speicherte die Anwendung die Produktänderungen und zeigte keine Warnung an. GitHub-30492
Katalog-Regel
- Die
products
Abfrage gibt jetzt die aktuellen Werte zurück, wenn eine Katalogpreisregel auf ein Element angewendet wird. GitHub-26738
- Temporäre Tabellen, die mit
catalogrule_product__temp
beginnen, werden jetzt erwartungsgemäß gelöscht, wenn die Neuindizierung fehlschlägt, nachdem eine Warenkorb- oder Katalogregel abgelaufen ist, deaktiviert wurde oder inaktiv wird. GitHub-22273
- Zeitzonen werden nun in
\Magento\CatalogRule\Model\Indexer\IndexBuilder::reindexById
und\Magento\CatalogRule\Model\Indexer\IndexBuilder::reindexByIds
auf die gleiche Weise angewendet. GitHub-29549
CMS-Inhalte
- Große Bilder werden jetzt beim Hochladen wie erwartet skaliert, wenn die Konfigurationseinstellung Frontend-Größe aktivieren aktiviert ist.
- Fest die Fehlerbehandlung für das CMS Seite Speichercontroller. Wenn zuvor ein
Error
-Objekt für dascms_page_prepare_save
-Ereignis ausgelöst wurde, hat die Anwendung dieses Objekt an dieaddExceptionMessage
-Funktion übergeben und damit ihren Vertrag gebrochen, da diese Funktion eineException
erwartet. Dies wurde behoben, indem eine Fehlermeldung mithilfe deraddErrorMessage
Funktion hinzugefügt wurde. GitHub-30149
- Sie können jetzt über die Registerkarte Seitenhierarchie bearbeiten in CMS eine neue Seite mehreren Knoten zuweisen. Zuvor war beim Zuweisen der Seite zu einem Knoten eine Verletzung der eindeutigen Einschränkung aufgetreten. GitHub-363
Konfigurierbare Produkte
- Die Applikation dupliziert keine Produktminiaturansichten mehr in der Bildergalerie eines Produkts, wenn Sie auf die konfigurierbaren Optionen eines Produkts klicken.
- Die Konfigurations Popup, die das Applikation anzeigt, wenn Sie ein konfigurierbares Produkt aus einer Wunsch Liste bearbeiten, wird jetzt wie erwartet geschlossen, wenn Sie auf die OK Button klicken.
- Die Anwendung generiert jetzt korrekt Rechnungen für Bestellungen, die nur ein konfigurierbares Produkt enthalten. GitHub-31143
- Käufer können jetzt über eine nicht standardmäßige Store-Ansicht konfigurierbare Produkte zu ihrem Warenkorb hinzufügen. Wenn die Erstkäufer auf einer nicht standardmäßigen Geschäft Ansicht versuchte, ein konfigurierbares Produkt hinzuzufügen, zeigte die Applikation zuvor diesen Fehler an:
Could not add item to cart. Please check required options and try again
. GitHub-31660
Inhaltssicherheitsrichtlinie (CSP)
- Die Inhaltssicherheitsrichtlinie unterstützt jetzt das Laden von base64-kodierten Bildern und Schriftarten durch
data: scheme
.
cron (Begriffsklärung
- Cron-Bereinigungsabfragen wurden umgestaltet, um die folgenden Leistungsprobleme zu reduzieren oder zu beseitigen:
cron
Aufträge, die in einem ausstehenden Zustand stecken bleiben, zunehmend langsamere MySQL-Abfragen und eine Zunahme der CPU-Auslastung. GitHub-26507
cronjobs
, die sich seit mehr als 24 Stunden im Statusrunning
befinden, werden jetzt automatisch in Statuserror
geändert. Daher kann eine neue Instanz dieses Auftrags erneut ausgeführt werden, und Sie müssen den Auftragsstatus nicht manuell ändern, wenn ein Auftrag fälschlicherweise auf Statusrunning
festgelegt bleibt. Wenn eincronjob
im Status "running
" feststeckt, hat die Anwendung verhindert, dass neue Instanzen desselben Auftrags gestartet werden, und Sie mussten den Auftragsstatus manuell ändern. GitHub-8933
cron
Aufträge werden jetzt erwartungsgemäß abgeschlossen und lösen diesen Serialisierungsfehler nicht mehr aus:[Magento\Framework\DB\Adapter\DeadlockException]SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction, query was: DELETE FROM cron_schedule WHERE (status = 'missed') AND (job_code in ('indexer_reindex_all_invalid', 'indexer_update_all_views', 'indexer_clean_all_changelogs')) AND (created_at < '2018-09-28 18:32:28')
. GitHub-18409
indexer_update_all_views
Cron-Aufträge werden jetzt nach einem vorherigen Fehler wie erwartet ausgeführt. Der fehlgeschlagene Durchlauf wird imcron_schedule schedule
als fehlgeschlagen markiert und der nachfolgende Durchlauf schlägt nicht automatisch fehl. Zuvor wurde diecron_schedule
mit ausstehenden Aufträgen gefüllt, undindexer_update_all_views
Cron-Auftrag wurde nicht ausgeführt. GitHub-23054
cron
Deadlocks treten nicht mehr auf, weilcron
versuchen, eine Sperre in großen Bereitstellungen zu setzen, in denen sich Gruppen überschneiden. GitHub-8933
cron
Deadlocks treten in dercron_schedule
nicht mehr auf, nachdem nur einigecron
Aufträge ausgeführt wurden. GitHub-22438
Benutzerdefinierte Kundenattribute
- Das Bundesland im Adressbuch des Storefront-Kundenkontos wird jetzt als geladen und bleibt ein Dropdown-Seitenelement. Die Senden-Schaltfläche ist jetzt deaktiviert, bis alle Seitenelemente vollständig geladen wurden. Zuvor hat die Anwendung dieses Feld als Textfeld geladen, bevor sie es als Dropdown-Element gerendert hat. Käufer konnten Werte in das Textfeld eingeben und speichern, was später während des Checkouts einen Fehler verursachte.
- Die Anwendung zeigt jetzt benutzerdefinierte Kundenadressattribute sowohl auf der Storefront als auch auf der Admin-Bestellseite korrekt an. Zuvor fehlte die ausgewählte Option des Dropdown-Attributs im Abschnitt Adressinformationen , und der Wert des Eingabeattributs enthielt den Attributcode. GitHub-508
- Die Anwendung gibt keinen Fehler mehr aus, wenn Sie beim Hochladen von Dateien ein Kundenadressattribut mit einem Dateianhang im Feld Admin-Kundenadresse speichern. Dies ist aufgrund einer fehlenden Rückgabeanweisung in der Controller-Aktion aufgetreten. Zuvor gab die Anwendung den folgenden Fehler aus:
Something went wrong while saving the file
.
- REST GET Cart-API-Aufrufe geben jetzt korrekte benutzerdefinierte Attributwerte für Abrechnungs- und Versandadressen zurück. Zuvor wurden benutzerdefinierte Adressattribute auf der Seite mit den Bestelldetails auf der Seite „My Account Storefront“ und in „Admin“ falsch angezeigt.
- Die Anwendung verarbeitet jetzt erfolgreich Dateien, die Kundenadressattribute mit dem Eingabetyp
file (attachment)
enthalten. Zuvor hat die Anwendung diesen Fehler beim Hochladen der angehängten Datei ausgegeben:Something went wrong while saving the file
.
KUNDE
- Die E-Mail-Adresse für Gutschriften im Store berücksichtigt jetzt den ausgewählten Bereich und wird an die richtige E-Mail-Adresse gesendet.
- Die Filterung nach Konto Erstellungsdatum führt nun zu Ergebnissen, die den konfigurierten Zeitzoneneinstellungen entsprechen und alle relevanten erstellten Konten erfassen.
- Der Kundenrasterfilter verwendet jetzt eine korrekte Website-Option für einen eingeschränkten Benutzer, wenn die Daten zuvor zwischengespeichert wurden. Zuvor rief der Kundenrasterfilter Website-Parameter aus dem Cache ab und enthielt falsche Daten für eingeschränkte Benutzer.
- Die Anwendung löst auf der Admin-Kundenseite keine Ausnahme mehr aus, wenn eine Website in einer Bereitstellung mit mehreren Websites gelöscht wird. Zuvor hat die Anwendung, wenn ein Administrator versucht hat, auf die umfassende Kundenliste zuzugreifen, nicht alle Kunden angezeigt und daher folgenden Fehler ausgegeben:
The website with id 2 that was requested wasn't found. Verify the website and try again
.
- Admins mit -Berechtigung können jetzt Kundinnen und Kunden über die Registerkarte Kontoinformationen des Kunden verschiedenen Websites neu zuweisen.
- Sie können jetzt eine Datei erfolgreich hochladen, wenn Sie ein Kundenadressattribut mit dem Eingabetyp
(File)
erstellen. Wenn Sie zuvor versucht haben, eine Datei hochzuladen und zu speichern, hat die Anwendung folgenden Fehler ausgegeben:Something went wrong while saving the file
.
Kundensegment
- Die Anwendung zeigt jetzt wie erwartet verwandte Produkte basierend auf Kundensegmenten in der Storefront an. Zuvor hat die Anwendung diesen Abschnitt nicht angezeigt, wenn eine Regel für verwandte Produkte für bestimmte Kundensegmente erstellt wurde.
- Dynamische Blöcke werden jetzt für registrierte Kunden in ihren Einkaufswagen angezeigt, wenn das entsprechende Kundensegment sowohl für Gäste als auch für registrierte Kunden angewendet wird. Zuvor wurde der Block nur für Gäste angezeigt.
- Kundensegmente werden jetzt automatisch aktualisiert, nachdem eine Bestellung vom Administrator aufgegeben wurde. Zuvor musste der Administrator nach dem Erstellen eines Admin-Auftrags die zugehörigen Segmentdaten manuell aktualisieren, indem er zu den zugehörigen Kundensegmenten navigierte und auf die Schaltfläche Segmentdaten aktualisieren klickte.
- Die Anwendung zeigt nun dynamische Blöcke im Warenkorb für alle Kunden in den entsprechenden Kundensegmenten an. Zuvor haben Gäste keinen Block gesehen, selbst wenn das Kundensegment sowohl Gäste als auch registrierte Kunden umfasste.
- Probleme mit der Datenbankleistung, die sich aus Kundensegmentierungsregeln unter Verwendung der
Product was Ordered
ergeben, wurden behoben.
- Es wurde ein Kundensegmentereignisbeobachter für die REST/SOAP-API hinzugefügt. Infolgedessen werden Kundensegmente jetzt erwartungsgemäß automatisch aktualisiert, wenn die in den Segmenten definierten Kriterien erfüllt werden, wenn Bestellungen über die REST/SOAP-API aufgegeben werden.
- Für GraphQL-Anfragen wurde ein Prozessor für Kundensegmentereignisse hinzugefügt. Zuvor wurden Rabatte auf die Warenkorbpreisregel nicht auf den Warenkorb angewendet, wenn ein Kundensegment in einer Warenkorbpreisregelbedingung verwendet wurde. GitHub-371
Verzeichnis
- Die Anwendung löst keine Ausnahme mehr aus, wenn ein Käufer während des Versandabschnitts des Checkout-Workflows eine ungültige Postleitzahl eingibt. GitHub-23371
herunterladbar
- Die Anwendung zeigt jetzt in der E-Mail Neue Bestellung Links zu herunterladbaren Produkten an, wenn die Bestellung sowohl ein herunterladbares Produkt als auch ein konfigurierbares Produkt mit einer herunterladbaren Option enthält. Zuvor zeigte die Anwendung den Link zum eigenständigen herunterladbaren Produkt an, jedoch nicht den Link zum konfigurierbaren Produkt mit einer herunterladbaren Option.
Dynamischer Block (früher Banner)
- Dynamische Blöcke werden jetzt nur noch auf der angegebenen Seite angezeigt. Zuvor wurden in der Anwendung alle Banner, die dem Widget zugewiesen waren, auf allen Seiten angezeigt, wenn keine dynamischen Blöcke angegeben waren.
- Sie können jetzt dynamische Blöcke mit leerem Inhalt speichern.
EAV
- Datumswerte des Kundenadressattributs werden jetzt im vierstelligen anstatt im zweistelligen Format gespeichert.
- Der Link zum Zurücksetzen des Kennworts auf der Seite zum Zurücksetzen des Admin-Kennworts funktioniert jetzt erwartungsgemäß. Wenn zuvor eine benutzerdefinierte Vorlage für die Seite „Administratorkennwort zurücksetzen“ verwendet wurde, hat die Anwendung diese Meldung angezeigt, als ein Administrator auf den Link in der E-Mail geklickt hat:
Your password reset link has expired
. Dies trat auf, weil die benutzerdefinierte E-Mail-Vorlage die falsche Variable für die Benutzer-ID enthielt.
- Das Senden von Kunden-E-Mails über den Administrator funktioniert jetzt ordnungsgemäß, wenn sie auf der Store-Ansichtsebene aktiviert sind. Zuvor hat die Anwendung keine Kunden-E-Mails gesendet, wenn die E-Mail-Benachrichtigungseinstellungen auf Store-Ansichtsebene, aber nicht auf globaler Ebene aktiviert waren.
- Die Applikation sendet nun E-Mails wie erwartet in Bereitstellungen mit mehreren Standorten, in denen nicht alle Websites den asynchronen E-Mail-Versand aktiviert haben. Wenn diese Einstellung bisher auf mindestens einer Website deaktiviert war, wurde eine E-Mail von keiner Website gesendet, Linear wenn sie aktiviert war. E-Mails mit Rechnungen, Sendungen und Gutschriften hatten ähnliche Probleme. E-Mails mit Bestellkommentaren, Rechnungskommentaren, Versandkommentaren und Gutschriften wurden jedoch erfolgreich gesendet. GitHub-31950
- Die E-Mail-Nachricht, die die Anwendung sendet, wenn Sie eine Geschenkregistrierung vom Administrator freigeben, enthält jetzt einen gültigen Link zum Registrierungsspeicherort. Zuvor führte die Verwendung dieses Links zu einem 404-Fehler. GitHub-504
- Rechnungen und PDF-Rechnungen enthalten nun für Bundle-Produkte die erwarteten Preise. Zuvor enthielten die PDF-Rechnungen den falschen Preis für Bundle-Produkte. GitHub-12856
- Die Filtermethode der E-Mail-Vorlage wurde um eine Zeichenfolgenumwandlung erweitert, um sicherzustellen, dass der Rückgabewert eine
string
ist. Zuvor gab die Anwendung einphrase
-Objekt zurück, wenn eine Ausnahme erfasst wurde, während sie sich nicht im Entwicklermodus befand. Dies wiederum löste eine tödlicheUncaught TypeError
aus. GitHub-32671
- Bestätigungs-E-Mails für Bestellungen werden jetzt wie erwartet gesendet, wenn der asynchrone Versand aktiviert ist (Stores > Configuration > Sales > Sales-E-Mails > Allgemeine Einstellungen > Asynchroner Versand) auf einer Website in einer Multi-Site-Bereitstellung. GitHub-31950
- Die Anwendung protokolliert jetzt einen Fehler wie erwartet, wenn eine Ausnahme auftritt, da ein Kunde versucht, eine E-Mail über das Formular „Kontakt“ zu senden. GitHub-23645
Gerüste
- Übergeordnete Klassen in der Admin-Klasse werden jetzt zusammen mit der ursprünglichen Klasse und den geerbten Schnittstellen auf Docblock-Anmerkungen überprüft. Da übergeordnete Klassen nicht überprüft wurden, führte die Durchführung von kundenbezogenen Aktionen in der Admin, die ein Ereignis ausgelöst haben, zu einem Fehler. Die Anwendung hat diesen Fehler im Ausnahmenprotokoll protokolliert:
report.CRITICAL: Method's return type must be specified using @return annotation.
.
- Die Anwendung gibt keinen schwerwiegenden Fehler mehr aus, wenn der Redis-Server in einer Bereitstellung angehalten wird, in der das Caching von Redis-Seiten aktiviert ist.
- Die Anwendung berücksichtigt jetzt die Einstellung Medienordner aus Sicherung ausschließen wenn das Backup mit
bin/magento config:set system/backup/functionality_enabled 1
aktiviert ist. Zuvor wurde der Medienordner trotz dieser Einstellung gesichert, da der Pfad zu/magento
falsch mit einem doppelten // gebildet wurde.
- Die Anwendung übersetzt jetzt alle übersetzbaren Zeichenfolgen wie für die Admin-Warenkorbseite erwartet. Zuvor wurde die Übersetzungslast zu spät ausgeführt und alle Beobachter übersprungen, die für die Vorab-Dispatch-Aktion des Controllers abonniert waren. GitHub-31849
- Die Formularvalidierung auf der Seite Neues Kundenkonto erstellen funktioniert jetzt erfolgreich, wenn die Einstellung Als Kunde anmelden Erweiterung aktivieren deaktiviert ist. Zuvor gab die Anwendung einen JavaScript-Fehler aus.
- Die Verwendung von
bin/magento setup:db-schema:split-sales
zum Verschieben von Datenbanktabellen funktioniert jetzt erwartungsgemäß. Tables werden jetzt korrekt erstellt und mit Daten gefüllt. Da die Überprüfung auf das Vorhandensein von Tabellen falsch war, gab der Applikation zuvor Fehler ausSQLSTATE
, wenn Siebin/magento setup:db-schema:split-sales
.
- Die Behandlung von Ausnahmen für untergeordnete Prozesse, die von
ProcessManager
geforkt wurden, wurde verbessert. Wenn jetzt eine Ausnahme auftritt, wird der Hauptprozess beendet und eine Fehlermeldung wird nur einmal angezeigt. Zuvor wurden mehrere Indexerfehler protokolliert und mehrere Meldungen angezeigt. GitHub-30622
- Globale Adobe Systems Commerce-Plug-ins (z. B. und
graphql
) werden nicht mehr für einen neuen benutzerdefinierten Gebietstyp ausgelöst,webapi_rest
wenn diedi.xml
Datei dieses Gebiets keine registrierten Plug-ins enthält.
- Ausnahmen, die während der Initialisierung auftreten, werden nicht mehr zwischengespeichert und lösen nun einen 500-Antwortcode aus.
- Händler können einem Katalog nun ein Bild zuweisen oder daraus löschen, indem sie Geschäft Ansicht Ereignis. Wenn Sie zuvor beim Bearbeiten einer Katalog-Ereignis Geschäft Ansicht geändert haben, war das Kontrollkästchen Löschen Bild nicht aktiv und die Applikation zeigte folgenden Fehler an:
Uncaught ReferenceError: toggleValueElements is not defined at HTMLInputElement.onclick
. GitHub-364
- Der zuletzt in einer
communication.xml
Datei zusammengeführte Handler setzt nicht mehr alle zuvor erstellten Handler außer Kraft. GitHub-29528
Allgemeine Fehlerbehebungen
- Das Applikation zeigt jetzt die richtige Anzahl von Sternen auf der Seite "Meine Produktbewertungen" und auf dem "MyAccount" Seite letzten Bewertungen an. Zuvor hat der Antrag die Überprüfungsstarts nur auf die erste Überprüfung angewendet und die anderen Überprüfungen auf der Seite nicht gestartet.
- Account-Links in Headern folgen jetzt WCAG-Standards. Zuvor enthielten Account-Links in Headern doppelte IDs, wodurch die WCAG-Validierung fehlschlug.
- Die Anwendung speichert jetzt Katalogereignisdaten in UTC-Zeitzonen. Zuvor hat die Anwendung Katalogereignisdaten in der Zeitzone des Benutzers gespeichert.
- Die Anwendung gibt keine vom Systemprotokoll generierten Fehler mehr aus, wenn ein Gasteinkäufer eine ungültige Adresse verwendet. Zuvor zeigte die Anwendung gelegentlich diesen Fehler an, anstatt die Seite zu rendern:
No such entity with addressId
. GitHub-15115
- Der Prozess der Größenänderung von Bildern in nicht unterstützten Formaten wird nicht mehr angehalten. Zuvor wurde der Prozess angehalten, wenn
catalog:images:resize
ein nicht unterstütztes Bildformat gefunden wurde, und die Applikation zeigte diesen Fehler an:bin/magento catalog:images:resize Unsupported image format
.
- WEBP- und AVIF-Unterstützung für Logo-Bilder wurde zum Administrator hinzugefügt. GitHub-32495
- Sie können die Umfang des
media_gallery
Attributs nicht mehr ändern. Wenn Sie zuvor die Umfang desmedia_gallery
Attributs wieder inglobal
änderten, gab der Applikation einen Fehler aus.
- Zugehörige Produkte, die als geplantes Update hinzugefügt wurden, werden nach dem Enddatum des Updates nicht mehr in einer Storefront Produktseite angezeigt. GitHub-469
- Die Applikation zeigt jetzt eine genaue, informative Meldung an, wenn Sie auf der Mein Konto Geschenkliste auf Artikel verwalten klicken, Seite und Registrierungsprodukte nicht vorrätig sind. Zuvor gab der Applikation diesen Fehler aus:
Error: Call to a member function getId() …
GitHub-490
- Sie können jetzt wie erwartet eine CMS-Seite von der Seite Neue Seite hinzufügen zur Website-Stammenhierarchie hinzufügen.
- Die Filterung funktioniert jetzt in der Liste der geplanten Exporte wie erwartet, wenn der Entitätstyp ausgewählt ist. Zuvor funktionierte der Filter nicht und die Anwendung gab einen JavaScript-Fehler aus. GitHub-361
- Kategoriebilder werden jetzt erwartungsgemäß aus dem
catalog/tmp/category
in dencatalog/category
kopiert, wenn Kategorien mithilfe der Datenbankspeichermethode gespeichert werden. Die Bildzeile in dermedia_storage_file_storage
hat nun auch die richtigedirectory_id
. GitHub-11995
- Händler werden jetzt wie erwartet über ungültige Caches benachrichtigt, nachdem sie Änderungen an der CMS-Hierarchie gesendet haben. Zuvor hat die Anwendung beim Speichern der CMS-Hierarchie Caches nicht ungültig gemacht.
- Redundante AJAX-Anfragen an den Warenkorbabschnitt des Warenkorbs wurden reduziert. Zuvor hat die Anwendung die Zwischensumme des Warenkorbs nicht ordnungsgemäß geladen, was das erneute Laden des Warenkorbs ausgelöst hat.
- Es wurden Tauglichkeitsprüfung für URLs hinzugefügt, um zu verhindern, dass reservierte Wörter in URL Schlüssel verwendet werden. Siehe "Definieren bekannter Einheitlich Ressource Identifiers (URIs")
- Bei Deployments, die PHP 7.4 ausführen, gibt die Applikation nun einen 404-Fehler zurück, wenn die Einstellung "Kategorie/product" URL Rewrites erzeugen auf Nein gesetzt ist und ein Erstkäufer versucht, auf eine nicht vorhandene Kategorie Pfad zuzugreifen. Zuvor gab die Anwendung den Fehler 500 mit folgendem Inhalt zurück:
Trying to access array offset on value of type bool
GitHub-31984
- Sie können jetzt erfolgreich ein Produkt bearbeiten, das mit einem Attributsatz erstellt wurde, aus dem die Gruppen "Design Gruppe und verzögern "Designaktualisierung " entfernt wurden. Wenn Sie zuvor versucht haben, ein Produkt zu bearbeiten, das aus diesem Attributsatz erstellt wurde, hat die Anwendung einen schwerwiegenden Fehler ausgegeben. GitHub-44
nowdoc
hatheredoc
imMagento_Backend
-Umschalter ersetzt. GitHub-32262
- Administratoren werden jetzt nach der Anmeldung direkt zur angeforderten Admin-Seite weitergeleitet. Wenn sich ein Administrator angemeldet hat, wurde er zuvor zum Admin-Dashboard weitergeleitet (oder zu der als Startseite konfigurierten Seite) und musste manuell zu seinem Ziel navigieren. GitHub-31042
- Argentinien, Bolivien, Chile, Ecuador, Guyana, Paraguay, Peru, Suriname und Venezuela wurden dem
directory_country_region
hinzugefügt. GitHub-31169
- Die Regionen Albanien, Dänemark, Griechenland, Island, Portugal und Schweden wurden dem
directory_country_region
hinzugefügt. GitHub-31040
- Nachrichten werden jetzt in der MySQLMQ-Nachrichtenwarteschlange als Fehler gekennzeichnet, wenn Ausnahmen auftreten. GitHub-18140
- Die Anwendung verweist jetzt beim Laden der Steuerinformationen für die Seiten „Admin-Gutschrift“ und „Rechnung“ auf das richtige Klassenobjekt. GitHub-31197
- Die Royal Mail Click & Drop-Integration funktioniert jetzt erwartungsgemäß. Zuvor gab die Anwendung diesen Fehler aus, als Sie versuchten, diese Integration zu aktivieren:
Sorry! Something went wrong. Please try again later
. GitHub-28996
- Die Anwendung zeigt jetzt eine informative Fehlermeldung an, wenn eine falsche Lieferung, Gutschrift oder Rechnungs-ID in einer URL übergeben wird. Zuvor gab es einen schwerwiegenden Fehler. GitHub-30424
- Rekursion am Speicherort der statischen Dateien wurde entfernt. Die Anwendung zeigt jetzt eine 404-Seite anstelle eines 500-Fehlers an. Zuvor führte ein Fehler in der standardmäßigen NGINX-Konfiguration zu einer unendlichen Rekursion. GitHub-31530
- Der Name der
cms_index_noroute.xml
wurde incms_noroute_index.xml
geändert. GitHub-31300
- Die
.editorconfig
wurde überarbeitet, um die automatische Formatierungdb_schema_whitelist.json
Dateien zu korrigieren. GitHub-31171
- Durch Ändern der Größe eines Browserfensters duplizieren Trigger keine Bindungsvergrößerungsereignisse mehr. GitHub-30788
- Die Anwendung löst beim Filtern von
Magento\Users\Model\ResourceModel\Users\Collection
nachuser_id
keine SQL-Ausnahme mehr aus. GitHub-31216
Geschenkkarten
- Ausstehende Zahlungsgebühren werden jetzt wie erwartet von einer Geschenkkarte entfernt, wenn eine Geschenkkarte storniert wird. Zuvor wurde in der Anwendung ein Fehler ausgegeben, wenn
cron
ausgeführt wurde, nachdem die Geschenkkarte gelöscht wurde.
- Käufer können jetzt Geschenkkarten aus einer Bestellung auf der Seite „Bestellung überprüfen“ entfernen, wenn sie mit mehreren Adressen auschecken. Zuvor wurde die Geschenkkarte im Antrag nicht aus der Bestellung entfernt, als der Käufer die Karte auswählte und dann auf Entfernen klickte.
- Die Anwendung zeigt jetzt den neuen Preis einer Geschenkkarte im Warenkorb an, wenn Sie den Wert der Geschenkkarte ändern, nachdem Sie sie zum Warenkorb hinzugefügt haben.
- Die Validierungslogik für Preisbereiche wurde der Seite zur Geschenkkartenerstellung hinzugefügt. Bisher konnte ein Administrator eine Karte mit einem Mindestwert erstellen, der den Höchstwert überstieg. GitHub-493
- Die
addRequisitionListItemsToCart
Abfrage gibt jetzt den erwarteten Betrag einer benutzerdefinierten Geschenkkarte zurück, wenn die Anfrage keinen Wert fürallow_open_amount
enthält.
Geschenknachricht
- Die
setGiftOptionsOnCart
-Mutation erstellt jetzt korrekt Geschenkbotschaften. GitHub-388
Geschenkgutschein
- Ereignisdatum Werte sind jetzt während der Erstellung oder Bearbeitung der Geschenkregistrierung in der Storefront und in der Admin identisch. Jedes Mal, wenn Sie die Geschenkregistrierung bearbeitet und gespeichert haben, hat die Anwendung zuvor das Ereignisdatum sowohl auf der Storefront als auch in der Admin einen Tag rückwärts angepasst. GitHub-466
- In der Anwendung werden deaktivierte Produkte nicht mehr in Geschenkregistern angezeigt. Wenn ein Produkt nach dem Hinzufügen zu einer Geschenkregistrierung deaktiviert wurde, hat die Anwendung diese Meldung angezeigt, als ein Käufer auf die Registrierung zugegriffen hat:
Error: Call to a member function getId() …
. GitHub-510
Geschenkverpackung
- Die Übersetzung von Geschenkverpackungsetiketten für Geschäft Ansichten funktioniert jetzt wie erwartet.
- Die Geschenkverpackung wird jetzt wie erwartet auf Bestellungen angewendet, die an mehrere Adressen versandt werden.
- Das Applikation entfernt nun die Gebühren für die Geschenkverpackung von der Warenkorb, wenn alle Produkte entfernt wurden.
- Gutschriftssummen sind jetzt korrekt, wenn die Gutschrift Geschenkverpackung und konfigurierbare Produktgebühren enthält. Bisher war der Steuerbetrag für die Geschenkverpackung nicht immer in der Gutschriftssumme enthalten. GitHub-34
Google Analytics
- Die Applikation gibt keinen Fehler mehr aus, wenn ein Administrator versucht, eine Seite in die Storefront zu laden, wenn Google Analytics aktiviert ist. Ein CSP-Eintrag für
connect-src
wurde hinzugefügt, um AJAX-Anfragen an www.google-analytics.com zuzulassen. GitHub-30880
Google Tag Manager
- Die UI-Komponente für die Rechnungsadresse auf der Zahlungsseite des Checkout-Workflows verwendet jetzt die Angebotsadresse korrekt, wenn Google Tag Manager aktiviert ist. Zuvor ist auf der Zahlungsseite ein JavaScript-Fehler aufgetreten.
GraphQL
- Die GraphQL
products
-Abfrage gibt jetzt Attributoptionen zurück, die in derselben Sortierreihenfolge wie auf der Attributbearbeitungsseite sortiert sind.
- Die Antwort auf die
{ category(id: 2){ children { name children { name } } } }
GraphQL-Anfrage enthält jetzt eine korrekt sortierte Kategoriestruktur.
- Das
CartItemPrices
Objekt enthält jetzt das neue GraphQL-Feldfixed_product_taxes
, das ein Array der festen Produktsteuern zurückgibt, die auf einen Warenkorb Artikel angewendet werden. Bisher wurden feste Produktsteuern, die auf einen Warenkorb Artikel angewendet wurden, nicht in die Warenkorb Abfrage aufgenommen.
- Leere Anfragen an GraphQL geben jetzt den Antwortcode 200 anstelle von 500 aus. Zuvor löste der GraphQL-Parser eine Ausnahme aus, bevor das Abfrage Ergebnis generiert wurde.
- Die
applyRewardPointsToCart
-Mutation aktualisiert nun den Gesamtwert eines Warenkorbs, um den Wert der abgezogenen Belohnungspunkte genau widerzuspiegeln. GitHub-486
- Deaktivierte Produkte sind nicht mehr in der GraphQL-Antwort enthalten, wenn GraphQL zum Verknüpfen von Upsell-Produkten verwendet wird.
- Händler können jetzt die GraphQL-
setShippingAddressesOnCart
verwenden, um Rechnungs- und Versandadressen für den Warenkorb eines Käufers festzulegen, wenn der Gast-Checkout deaktiviert ist.
- Die
categoryList
Abfrage löst keine Ausnahme mehr aus, wenn sie mehrere Fragmente imCategoryTree
enthält. GitHub-31086
- Die GraphQL
product
-Abfrage gibt jetzt die richtigen Kundengruppenpreise zurück.
- Die GraphQL-Abfrage
products
Antwort sortiert jetzt die Aggregationen nach der Position des Produktattributs.
- Die Anwendung gibt bei GraphQL-Abfragen keine Typfehler mehr aus, wenn die Produkt- und Kategorie-URL-Suffixe Nullwerte enthalten. GitHub-30909
- Das
CustomizableDateValue
-Objekt enthält jetzt dastype
. Sein Wert ist eine Auflistung, die auf DATE, DATE_TIME oder TIME festgelegt werden kann.
- Die
dynamicBlocks
Abfrage gibtInhalt der dynamischen Blöcke zurück, die den angegebenen Filtern entsprechen.
- Die POST-
V1/products/special-price-delete
-Anfrage löscht jetzt nur den Preis mit einem angegebenenstore_id
wie erwartet. Zuvor wurden durch den Aufruf alle Sonderpreise für die angegebene SKU aus allen Stores entfernt. GitHub-25907
- Fehlerkorrektur - Das Attribut
country_code
in dercreateGiftRegistry
-Mutation ist jetzt fehlerfrei.
- Es wurden Probleme mit dem
giftRegistryUid
derupdateGiftRegistryItems
-Mutation behoben.
- Es wurde eine zusätzliche Prüfung hinzugefügt, um zu verhindern, dass die
updateGiftRegistryRegistrants
-Mutation verwendet wird, um zufällige Personen als Registrierende zu einem Geschenkgutachten hinzuzufügen.
- Die
addConfigurableProductsToCart
Mutation gibt jetzt die richtige Miniaturansicht des angegebenen Produkts zurück. Zuvor wurde die Miniaturansicht des übergeordneten Produkts zurückgegeben.
- Die
products
Abfrage zeigt den Sonderpreis eines Produkts nicht mehr an, wenn die Sonderpreisperiode für ein künftiges Datum festgelegt ist. GitHub-30210, GitHub-29631
- Die
customer
-Abfrageantwort enthält jetzt dastotal_giftcard
-Attribut als Teil desOrderTotal
.
- Es wurde ein Problem behoben, das dazu führte, dass die
products
-Abfrage fehlerhafte Informationen zu Preisstufen für Artikel zurückgab, für die keine Preisstufe festgelegt war. GitHub-32279
Bild
- Sie können jetzt die Bundle-Attribute required_options und has_options wie erwartet beim Erstellen oder Aktualisieren eines Bundle-Produkts mit dem Endpunkt POST
/V1/product/:sku
festlegen. Zuvor wurden diese benutzerdefinierten Attribute trotz der Bemühungen, sie auf 1 (eins) festzulegen, auf 0 (null) gesetzt.
Import/Export
- Der Filter Kategorie-IDs für Produktentitäten im Raster „Entitätsattribute der Seite exportieren“ funktioniert jetzt erwartungsgemäß.
- Der Status des gruppierten Produktbestands wird jetzt erwartungsgemäß auf Nicht vorrätig aktualisiert, wenn alle untergeordneten Produkte nicht vorrätig sind. GitHub-32647
- Der konfigurierbare Produktbestandsstatus wird jetzt automatisch wie erwartet aktualisiert, wenn der Lagerbestand des untergeordneten Produkts durch den Import aktualisiert wird. Bisher wurde der Produktbestandsstatus nicht automatisch aktualisiert, wenn der Lagerstatus der untergeordneten Produkte durch den Import aktualisiert wurde.
- Sie können jetzt leere Werte in einem geplanten Export speichern. Zuvor aktualisierte die Anwendung leere Filterwerte nach dem Erstellen oder Speichern des Exports. Sowohl
no
- als auchnot specified
Werte wurden in der Datenbank durch null dargestellt, und ein Wert vonnot selected
wurde mitno
überschrieben.
- Der Exportprozess berücksichtigt nun Konto User Rolle Umfang beim Exportieren von Produkten, Bestandsquellen und Kundenentitäten. Bisher ignorierte der Exportprozess User Rolle Umfang, der den Export von privaten User Rolle Exportunternehmen erlaubte.
- Die Applikation setzt die Produktsteuerklasse nun auf,
None
wenn ein Produkt mittax_class_name
WertenNone
oder0
importiert wird. Zuvor erstellte der Applikation, wennproduct tax_class_name
er sich in der CSV Datei befandNone
, eine neue SteuerklasseNone
, die die vorhandene Steuerklasse duplizierte. Wennproduct tax_class_name
er sich in der CSV Datei befand0
, ignorierte der Applikation diesen Wert, und die Produktsteuerklasse änderte sich nach dem Import nicht.
- Administratoren können nun erfolgreich die
name
eines Paket Produktsbundle_values
vom Administrator aus ändern. Bisher wurde das Produkt im Applikation in der Storefront als nicht vorrätig angezeigt, nachdem Sie den Namen vom Administrator geändert hatten. Außerdem wurden Produkte mit der gleichen Produktnummer in einem einzigen Abschnitt mit Paket Optionen zusammengeführt.
- Die Applikation berücksichtigt beim Export von Kundendaten nun Konto User Umfang. Wenn Sie bisher versuchten, Kunden zu exportieren, exportierte der Applikation Kundendaten von allen Websites.
- Die Applikation entfernt jetzt wie erwartet Produktbeziehungen zwischen Upsell-, Cross-Sell- und verwandten Produkten während CSV Dateiimports, wenn
__EMPTY__VALUE__
dies in der CSV-Datei angegeben ist.
- Das Exportieren von benutzerdefinierten Adressdaten für viele Kunden (Admin-System > Export) führt nicht mehr routinemäßig zu einem Speicherfehler. Zuvor hat die Anwendung beim Exportieren benutzerdefinierter Adressdaten versucht, alle Kundendaten zu laden, was zu einer Speichererschöpfung führte, und es wurde ein Fehler ausgegeben, durch den es nicht möglich war, Speicher zuzuordnen.
- Doppelte Stufenpreise werden während des standardmäßigen CSV-Importvorgangs nicht mehr importiert. Zuvor fehlte die Validierung, um den Import doppelter Stufenpreise zu verhindern, und als doppelte Stufenpreise auftraten, konnten Händler die Produkte nicht speichern. Händler sahen diesen Fehler auch, als sie versuchten, einen Produktwechsel zu planen:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry…
.
- Alle Produktbilder werden jetzt beim Import validiert. Zuvor hat die Anwendung nur das erste Bild validiert, wenn ein Produkt mehrere Bilder hatte. GitHub-28236
- Sie können jetzt eine Region wie beim Import erwartet aus einer Kundenadresse löschen. Zuvor hat sich die zugewiesene Region nicht geändert, wenn eine Kundenadresse mit einer leeren Region importiert wurde.
- Produkte mit JSON oder HTML Inhalte als zusätzliche Produktattribute werden nun korrekt in eine CSV Datei exportiert. Zuvor enthielt die CSV-Datei überlappende Datenzeichenfolgen in falschen Feldern.
Index
- Process Manager wird jetzt mit einem Fehler beendet, wenn ein untergeordneter Prozess fehlschlägt. Zuvor wurde Process Manager immer erfolgreich beendet, wenn die Anzahl der an ihn übergebenen Funktionen (z. B. Indexerdimensionen) niedriger als der Wert der
MAGE_INDEXER_THREADS_COUNT
Umgebung Variable war. GitHub-30964
- Produkte sind jetzt wie erwartet in Storefront verfügbar, suchen Ergebnisse, wenn Produkte mit einem REST-PUT
/V1/products/:sku/links
verknüpft werden Anfrage, wenn der Indexmodus auf Update on Speichern festgelegt ist.
- Der Indexer der Katalogpreisregel funktioniert jetzt erwartungsgemäß, wenn der Indexermodus auf "beim Speichern“ ist. GitHub-370
- Das Löschen einer deaktivierten Kategorie, die kein Produkt enthält, hat jetzt keine Auswirkungen mehr auf die Katalogsuche und die flachen Indextabellen der Kategorie. Zuvor wurde durch das Löschen einer inaktiven Kategorie eine vollständige Neuindizierung ausgelöst. GitHub-23297
- Benutzerdefinierte Indexer können jetzt für Abonnements verschiedene Entitätsspaltennamen verwenden. Zuvor verwendete der Datenbank-Trigger den Spaltennamen aus dem Indexer, der zuletzt auf "nach Zeitplan“ festgelegt war anstelle des vorgesehenen Indexers. GitHub-21853
- Die Anwendung sendet keine AJAX-Anfragen mehr zum Neuladen von Kundendatenabschnitten (
Magento_Customer/js/section-config
), die von der Anfrage nicht betroffen sind. GitHub-31948
- Die folgenden Indexer werden nicht mehr ungültig, nachdem Sie Produkte in einer Kategorie hinzugefügt, entfernt oder neu angeordnet haben:
catalog_category_product
undcatalogsearch_fulltext
(und deren abhängige Elemente). Zuvor lösten diese versehentlichen Entfernungen eine vollständige Neuindizierung von Sites aus. Eine vollständige Neuindizierung wird jetzt unter diesen Bedingungen verhindert, wenn der flache Katalog nicht aktiviert ist.
Infrastruktur
- Aktualisierung der Abhängigkeit
pelago/emogrifier
von Version 3.1.0 auf 5.0.0. Dieses Update führte zur Einführung abwärtsinkompatibler Änderungen an derMagento\Email\Model\Template\Filter
Klasse. Der geänderte Code wird während der Wiedergabe von E-Mail-Vorlagen ausgeführt. Siehe BIC-Referenz.
- Es wurde ein Problem behoben,
\Magento\CatalogInventory\Model\Indexer\Stock\CacheCleaner::getCategoryIdsByProductIds
das das Speichern eines neuen Produkts verhinderte.
- Die veraltete TinyMCE v3-Bibliothek wurde entfernt. Das
Magento_Tinymce3Banner
und die MFTF-Tests im Zusammenhang mit TinyMCE v3.x wurden aus Adobe Commerce entfernt.
- Die Anwendung gibt im Formular „Kontakt“ keinen
Invalid header value detected
mehr aus, wenn ein Käufer eine E-Mail-Adresse mit französischen diakritischen Zeichen (z. B. „é“, „è„) eingibt. Die Anwendung konvertiert jetzt UTF-8-Buchstaben im Benutzernamen in ASCII-Codierung. Zuvor wurden UTF-8-Briefe im eindeutigen Abschnitt der E-Mail-Adresse nicht in ASCII-Kodierung konvertiert.
- Die Anwendung gibt keinen schwerwiegenden PHP-Fehler mehr aus, wenn ein Plug-in zu einer übergeordneten Klasse hinzugefügt wird. GitHub-31291
- Die README.md-Dateien für die folgenden Module wurden aktualisiert:
Magento_Msrp
,Magento_MsrpConfigurableProduct
,Magento_MsrpGroupedProduct
,Magento_Multishipping
,Magento_MysqlMq
. GitHub-32577
phpcpd
wurde aus Gründen der PHP 8-Kompatibilität auf Version 6.0.3 aktualisiert.
ramsey/uuid
wurde aus Gründen der Kompatibilität mit PHP 8.0 aktualisiert. GitHub-31777, GitHub-826
colinmollenhour/php-redis-session-abstract
wurde zur Kompatibilität mit PHP 8 auf Version 1.4.4 aktualisiert. GitHub-32709
- Fehlerkorrektur - Eine ungültige Kombination aus Tabulatoren und Leerzeichen in der
phpstan.neon
-Datei wurde korrigiert. GitHub-31239
- Die Verwendung veralteter
$_isScopePrivate
in der Code-Basis wurde entfernt. GitHub-30506
- Seiten-Layouts sind in nicht mehr hartcodiert
Magento\Widget\Block\Adminhtml\Widget\Instance\Edit\Chooser\Container
. Infolgedessen gibt die FunktiongetPageLayouts()
jetzt die tatsächliche Liste der Seiten-Layouts zurück, die von den verschiedenen Modulen erwartungsgemäß deklariert wurden. Zuvor wurden nur hartcodierte Layouts zurückgegeben. GitHub-31168
- Die
composer.lock
wurde auf die neueste Version des Coding Standard aktualisiert. GitHub-31152
- Der
magento/module-jwt-framework-adapter
wurde eine fehlende Abhängigkeit vomweb-token/jwt-framework
hinzugefügt. GitHub-32578
- Der
fotorama.js
-Bibliothek wurden passive Listener hinzugefügt, um die Punktzahl der Lighthouse-Metriken zu verbessern. GitHub-31140
- Die README.md Datei für das Google Analytics Modul wurde aktualisiert. GitHub-32616
- Process Manager behandelt Ausnahmen nun ordnungsgemäß in geforkten Prozessen. Der Hauptprozess wird nun beendet und die Applikation zeigt jetzt nur noch einmal eine Fehlermeldung an. Außerdem werden die Ausnahmen von den gegabelten Prozessen jetzt behandelt, wenn sie im Hauptprozess ausgelöst werden. Zuvor wurden im Applikation mehrere Indexerfehler protokolliert und mehrere Fehlermeldungen angezeigt. GitHub-30622
- Das Applikation gibt keinen Fehler mehr aus, wenn ein Plug-in zu einer übergeordneten Klasse hinzugefügt wird. (Der
optionsProvider
Parameter wird jetzt nach ingetContentIdentities
Assest.php
deklariert.) Zuvor gab der Applikation folgenden Fehler aus:Error: Cannot instantiate interface Magento\Framework\Data\OptionSourceInterface
. GitHub-31291
- Die Ausführung in einem leeren
Magento\Framework\Filesystem\Io\Ftp::ls()
Ordner gibt nun wie erwartet ein leeres Array zurück. Zuvor gab der Applikation diese Ausnahme aus:Invalid argument supplied for foreach() in vendor/magento/framework/Filesystem/Io/Ftp.php…
. GitHub-31288
- Die
update
Methode für "Role" und "Regel wurde inapp/code/Magento/Authorization/Model/Role.php
als veraltet markiert. GitHub-30756
- Die Verkettung für SameSite-Cookie Parameter wurde korrigiert. Zuvor wurde das
lex
Suffix durch falsche Verkettung anvalue
,domain
und andere Parameter angehängt. GitHub-26377, GitHub-32440
allure-framework/allure-phpunit
wurde für die gesamte Codebasis auf v1.3.1 aktualisiert. Zuvor wurde im Applikation folgender Fehler angezeigt:Warning: Use of undefined constant GLOB_BRACE - assumed 'GLOB_BRACE' (this will throw an Error in a future version of PHP) in /var/www/html/src/vendor/allure-framework/allure-phpunit/src/Yandex/Allure/Adapter/AllureAdapter.php:74.
GitHub-24635
- Die Applikation zeigt nun aussagekräftigere Fehler an, wenn beim Ausführen von
bin/magento
Befehlen im Produktionsmodus Fehler auftreten. Zuvor wurden im Applikation entweder keine Fehlermeldungen angezeigt oder Meldungen, denen Informationen fehlten. GitHub-32786
- Das
ArrayIterator
PHP-Objekt wurde aktualisiert, damit es mit PHP 7.4 erwartungsgemäß funktioniert. GitHub-32088
- Die Anwendung gibt keinen Fehler mehr aus, wenn ein Kunde versucht, eine Bestellung abzuschließen, obwohl keine Spediteure verfügbar sind. Stattdessen werden die Kaufbestätigungsseite und die folgende Nachricht angezeigt:
Sorry, no quotes are available for this order at this time
. Zuvor zeigte die Anwendung eine leere Checkout-Seite an und zeichnete diese Meldung im Ausnahmegenehmigungsprotokoll auf:array_keys() expects parameter 1 to be array, null given
. GitHub-30830
- Die Anwendung protokolliert nicht mehr jedes Cookie als separaten Kontext. Das
$_COOKIE
Array wurde ebenfalls in eine Zeichenfolge konvertiert. Da zuvor jede Cookie als separater Kontext protokolliert wurde, hat der Applikation diese Nachricht protokolliert,Unable to send the cookie. Maximum number of cookies would be exceeded
wenn die Anzahl der Cookies 50 überstieg: . GitHub-31334
Rechnung
- Beim Erstellen neuer Rechnungen im Admin-Bereich funktioniert das Kontrollkästchen E-Mail-Kopie jetzt wie erwartet. Bisher wurde das Kontrollkästchen ignoriert, wenn die globale Einstellung zum Senden von Rechnungs-E-Mails in Vertriebs-E-Mails aktiviert war. Sie ist jetzt konsistent und funktioniert genauso wie die Seiten zur Erstellung von Sendungen und Gutschriften. GitHub-28511
Mediengalerie
bin/magento media-gallery:sync
schlägt nun wie erwartet fehl, wenn PNG-Bilder verarbeitet werden, denen XMP Informationen fehlen.
- Einträge in der
catalog_product_entity_media_gallery
Tabelle werden wie erwartet entfernt, wenn zugehörige Produkte gelöscht werden. GitHub-17727
- Bilddetails können jetzt in der Mediensammlung aktualisiert werden, wenn die JavaScript-Minimierung aktiviert ist. Zuvor wurden Bilddetails nicht gespeichert und die Anwendung zeigte diesen Fehler an:
TypeError: Cannot read property 'call' of undefined in jquery.validate
. GitHub-31633
MFTF
Neue Funktionen und Fehlerbehebungen im MFTF-Kern werden im Änderungsprotokoll zum Functional Testing Framework beschrieben.
- Die Befehle
magento indexer:reindex
undcache:flush
sowie die AktionsgruppeAdminReindexAndFlushCache
wurden aus Tests entfernt, um die Ausführung für die folgenden Module zu verbessern:Bundle
,Catalog
,CatalogRule
,CatalogRuleConfigurable
,CatalogUrlRewrite
,Downloadable
,Indexer
,Paypal
undSales
. GitHub-31031
AdminSubmitCategoriesPopupActionGroup
wurde zu Tests hinzugefügt, um Test Fehler zu vermeiden. GitHub-31251
- Tests wurden mit
StorefrontCheckQuickSearchStringActionGroup
undStorefrontAssertProductNameOnProductMainPageActionGroup
(vorhandene Aktionsgruppen) umgestaltet. GitHub-31251
Überarbeitete Tests
Die folgenden Tests wurden überarbeitet, um die Ausführungszeit zu verbessern:
AddOutOfStockProductToCompareListTest
AdminApplyTierPriceToProductWithPercentageDiscountTest
AdminCheckingCreditMemoTotalsTest
AdminCheckDashboardWithChartsTest
AdminConfigDefaultProductLayoutFromConfigurationSettingTest
AdminCreateInvoiceTest
AdminCreateOrderAddProductCheckboxTest
AdminMassOrdersCancelCompleteAndClosedTest
AdminMassOrdersCancelProcessingAndClosedTest
AdminMassOrdersHoldOnCompleteTest
AdminMassOrdersHoldOnPendingAndProcessingTest
(Ersatz für veraltete AdminMassOrdersHoldOnPendingAndProcessingTest
)
AdminMassOrdersUpdateCancelPendingOrderTest
AdminMassProductPriceUpdateTest
AdminMassUpdateProductAttributesMissingRequiredFieldTest
AdminOrdersReleaseInUnholdStatusTest
AdminPanelIsFrozenIfStorefrontIsOpenedViaCustomerViewTest
AdminSortingByWebsitesTest
AdminUpdateSimpleProduct
AdminUpdateSimpleProductWithRegularPriceInStockEnabledFlatTest
AdminValidateShippingTrackingNumberTest
CancelOrdersInOrderSalesReportTest
ProductsQtyReturnAfterOrderCancelTest
StorefrontConfigurableProductBasicInfoTest
Aktionsgruppen
Wiederholte Aktionen wurden in diesen Tests durch Aktionsgruppen ersetzt:
AdminCheckConfigurableProductPriceWithDisabledChildProductTest
AdminConfigurableProductCreateTest
AdminConfigurableProductRemoveAnOptionTest
AdminCreateProductDuplicateUrlkeyTest
AdminCreateSimpleProductNegativePriceTest
AdminCreateSimpleProductZeroPriceTest
AdminCreateVirtualProductFillingRequiredFieldsOnlyTest
AdminUpdateSimpleProductWithRegularPriceInStockDisabledProductTest
AdminUpdateSimpleProductWithRegularPriceInStockNotVisibleIndividuallyTest
AdminUpdateSimpleProductWithRegularPriceInStockVisibleInCatalogOnlyTest
Neu Aktionsgruppen
AdminClearFiltersOnGridActionGroup
AdminClickAddNewPageOnPagesGridActionGroup
AdminClickInsertWidgetActionGroup
AdminClickRefundOfflineOnNewMemoPageActionGroup
AdminFillAccountInformationOnCreateOrderPageActionGroup
AdminGoToOrderStatusPageActionGroup
AdminOpenCMSPagesGridActionGroup
AdminSelectAttributeSetOnEditProductPageActionGroup
AssertAdminProductIsAssignedToCategoryActionGroup
(ersetzt das Filtern des Produktrasters durch SKU und das Klicken auf die erste Zeile (um die Ausführungszeit für Tests zu verkürzen)
AssertLinkActionGroup
AssertStorefrontCartDiscountActionGroup
ClickPlaceOrderActionGroup
SaveCmsPageActionGroup
StorefrontAssertProductNameIsNotOnProductMainPageActionGroup
StorefrontGuestCheckoutProceedToPaymentStepActionGroup
StorefrontHoverProductOnCategoryPageActionGroup
StorefrontSelectCustomizeAndAddToTheCartButtonActionGroup
Gelöschte Aktionsgruppen
CliIndexerReindexActionGroup
(oder Werteänderung) aus Tests entfernt, um die Ausführungszeit für dieBackend
-,Bundle
-,BundleImportExport
-,Catalog
-,CatalogRule
-,CatalogSearch
-,Checkout
-,Downloadable
-,LoginAsCustomer
-,Elasticsearch
-,SalesRule
Search
-,Elasticsearch6
-,Store
Swatches
UrlRewrite
Weee
Wishlist
-,Indexer
-,LayeredNavigation
-,Newsletter
- undSales
-Module zu verbessern.
CliCacheFlushActionGroup
ausCatalog
,CatalogUrlRewrite
,Checkout
,Config
,ConfigurableProduct
,Contact
,Cookie
,CurrencySymbol
,Customer
,Downloadable
,Elasticsearch
,Fedex
,Elasticsearch6
,Msrp
,Sales
,Swatches
,Indexer
,LayeredNavigation
,LoginAsCustomer
,Multishipping
,Translation
,UrlRewrite
,Vault
,Weee
,Wishlist
, und Modulen entfernt.
Newsletter
- Die Anwendung sendet keine Newsletter-E-Mail mehr an eine Kundin oder einen Kunden, die bzw. der sich in dem Zeitraum zwischen der Erstellung der Newsletter-Warteschlange und dem Versand des Newsletters vom Newsletter abgemeldet hat. GitHub-32116
- Die Anwendung berücksichtigt jetzt die Einstellungen für die Aktivierung von Newslettern Stores > Settings > Configuration > Customers > Newsletter > General Options). Zuvor wurden diese Einstellungen in Multi-Store-Bereitstellungen immer aus dem Standardbereich abgerufen. GitHub-31188
- Der REST-Aufruf GET
/V1/customers/search
gibt jetzt die richtigen Informationen für Kunden zurück, die mehrere Newsletter abonniert haben. GitHub-31168
- Die Zwischenspeicherung des Abonnementstatus wurde aus dem Newsletter-Plug-in entfernt. GitHub-19345
Reihenfolge
- Die Anwendung berechnet jetzt bei der Rückgabe einer Ladenkredit für eine teilweise fakturierte Bestellung korrekt einen fakturierten Kundensaldo.
- Die Anwendung speichert jetzt eine geänderte Bestellung wie erwartet, wenn sie einen zurückerstatteten Kundensaldo speichert. GitHub-393
Zahlungsmethoden
- Die Anwendung rendert jetzt Zahlungsblöcke auf
frontend
, unabhängig vom Bereich, aus dem die E-Mail gesendet wurde. (Der aktuelle Bereich wird nun alsfrontend
emuliert, bevor der Zahlungsblock gerendert wird.) Zuvor wurden Zahlungsblöcke in dem Bereich gerendert, von dem aus die E-Mail gesendet wurde. Unabhängig davon, ob die Vertriebs-E-Mail vom Administrator oder von der REST-API ausgelöst wurde, haben URLs für Assets versucht, sie aus dem falschen Bereich (webapi_rest
oderadminhtml
) zu laden.
- Das Applikation sendet nun die verknüpfen für ein herunterladbares Produkt an die E-Mail-Adresse, die während der Checkout angegeben wurde. Wenn ein Gast zuvor PayPal Express-Checkout verwendet und verschiedene E-Mail-Adressen eingegeben Erstkäufer, um die bestellen einzureichen und zur Kasse zu gehen, hat der Applikation das herunterladbare Produkt-verknüpfen an die erste Adresse gesendet.
- Die Applikation zeigt jetzt einen genauen Wert für das verfügbare Geschäft Guthaben auf der Payment Methode Seite in Bereitstellungen an, die mehrere Währungen unterstützen.
- Die Liste der Zahlungsmethoden wird jetzt erwartungsgemäß aktualisiert, wenn ein Gastkäufer während des Checkouts die Lieferadresse einer Bestellung in ein anderes Land ändert. Bisher löste die Änderung Abrechnung Adresse keine Aktualisierung der möglichen Zahlungsmethoden aus.
PayPal
- Käufer können jetzt erfolgreich eine PayPal Payflow Pro-bestellen mit einer Lieferadresse auschecken, die Sonderzeichen enthält. Zuvor hatte der Antrag die Zahlung für diese Bestellungen abgelehnt.
- Käufer werden nun nach einer erfolgreichen Zahlung mit PayPal wieder zum bestellen Erfolgs-Seite weitergeleitet. Bisher wurden Käufer aufgrund des Verlusts von Sitzungsdaten zu einer leeren Seite umgeleitet.
Leistung
- Die Leistung der Admin-SKU-Suche in großen Katalogen wurde verbessert. Hinweise des Abfrageoptimierers erzwingen jetzt die Indexverwendung während Abfrage Ausführung.
- Die Leistung des
catalog_product_alert
cron
Prozesses bei der Ausführung auf großen Tabellen (mehrere Millionen Zeilen) wurde verbessert. Zuvorcatalog_product_alert
wurden alle Produktwarnungen geladen, wodurch eine Ausnahme aufgrund unzureichenden Arbeitsspeichers erzeugt wurde.
- Die Applikation lädt nicht mehr alle CMS-Seiten, wenn nur eine Bearbeitungs Seite zum Rendern eines Admin-Formulars erforderlich ist. Diese Seiten werden jetzt schneller geladen. GitHub-30936
-
Numerische Werte in
WHERE IN
Ausdrücken werden jetzt als Zahl und nicht als Zeichenfolge umgewandelt, was die Abfrageleistung in einigen Versionen von MariaDB verbessert. GitHub-31135 -
Im
use_application_lock
Modus können Sie die Neuindizierung aktivieren, indem Sie entweder Umgebungsvariablen verwenden oder dieapp/etc/env.php
konfigurieren. Bei aktiviertem Modus müssen Sie den Indexer nach einem Fehler nicht mehr manuell zurücksetzen. Wenn dieser Modus nicht aktiviert ist, müssen Sie den Indexer nach einem Fehler manuell zurücksetzen. Siehe Verwenden des Anwendungssperrmodus für Neuindizierungsprozesse.
Preisgestaltung
- Die Anwendung aktualisiert nun den Preis eines Produkts korrekt mit gruppierten Preisen, wenn ein Käufer die Produktmenge in der Storefront aktualisiert. GitHub-32669
- Paketprodukte können jetzt gespeichert werden, wenn Produkten ein Stufenpreis zugewiesen wurde und
Magento\Framework\Api\ExtensibleDataObjectConverter
zur Konvertierung von Produktdaten verwendet wird. WennMagento\Framework\Api\ExtensibleDataObjectConverter
verwendet wurde, um Produktdaten beim Speichern eines Produkts in ein Array zu konvertieren, hat die Anwendung das Produkt nicht gespeichert und den folgenden Fehler angezeigt:Notice: Undefined index: price in app/code/Magento/Catalog/Model/Product/Type/Price.php on line 382.
- Geplante Preisaktualisierungen werden jetzt auf Produkte angewendet, die sich bereits im Warenkorb eines Käufers befinden. GitHub-356
- Der Staffelpreis wird nun wie erwartet auf ein Produkt angewendet, wenn Anzahl Inkremente aktiviert sind und die Dezimalzahl Warenbestand kleiner als 1 ist. Zuvor wurde der Mindesttarif Anzahl auf 1 festgelegt.
Produktvideo
- Sie können jetzt den hinzufügen Video Button (Admin-Katalog > Produkte) verwenden, um mehrere Videos nacheinander hinzuzufügen. Zuvor wurden in Videofeldern die Details des vorherigen Videos beibehalten.
- Der Vollbildmodus für ein Produktvideo auf einer Produktseite funktioniert jetzt wie erwartet auf Mobilgeräten. Zuvor wurde das Video durch die Aktivierung des Vollbildmodus pausiert, bevor der Vollbildmodus beendet wurde.
- Die Navigationspfeilschaltflächen (Weiter und Zurück) sind jetzt wie erwartet in Produktvideos für die Storefront sichtbar.
- Händler können jetzt Vimeo-Videos mit der Schaltfläche Video einfügen auf der Produktseite wie erwartet hinzufügen. Zuvor wurde in der Anwendung ein 404-Fehler angezeigt. GitHub-31753
Zitat
- Der
/V1/guest-carts/examplecartid/items
-Aufruf gibt jetzt die angeforderte Store-Ansicht zurück. Zuvor wurde die erste Store-Ansicht im Store zurückgegeben, nicht die angeforderte.
- Der Rechnungsversand ist jetzt konfigurierbar. Zuvor war der Rechnungsversand nicht konfigurierbar, und die Anwendung hat nach der Erstellung immer eine Rechnung gesendet. Rechnung- und Auftrags-E-Mails wurden beide im Rahmen eines Beobachters verschickt. Separate Beobachter steuern jetzt den Versand von Auftrags-E-Mail und Rechnungs-E-Mail. GitHub-27656
Berichte
- Alle Systemberichte können jetzt im Adobe Commerce on Cloud Infrastructure-Projekt angezeigt und von dort heruntergeladen werden. Zuvor konnten Sie keine Systemberichte für Protokolle, Daten, Design oder Stores herunterladen.
- Das letzte Überprüfungsdatum unter Admin Berichte > Überprüfungen > Nach Produkten zeigt jetzt das richtige Überprüfungsdatum an. Zuvor wurde in der Anwendung das Produkterstellungsdatum anstelle des Überprüfungsdatums angezeigt.
Warenrückgabegenehmigungen (Return Merchandising Authorization, RMA)
- Das Attribut RMA
resolution
wird nicht mehr wie erforderlich angezeigt, wenn der Wert des Attributfeldsrequired
auf "".
- Sie können jetzt vom Administrator mehrere Bestellungen für die Rücksendung auswählen. Zuvor hat die Anwendung einen Fehler ausgegeben, wenn Sie auf Senden geklickt haben, nachdem Sie mehrere Rückgaben ausgewählt und Schließen aus dem Dropdown-Menü Aktionen ausgewählt haben.
- Die Anwendung sendet jetzt wie erwartet eine E-Mail-Benachrichtigung an Kunden, nachdem Sie den Status einer Rücksendung mithilfe der REST-API geändert haben.
- Die Anwendung filtert jetzt Datensätze anhand von Filterwerten im Raster „Kundenrückgabe“ von „Admin“. Zuvor wurden Sie von der Anwendung zur Seite „Alle Kunden verwalten“ weitergeleitet, und wenn Sie auf die Schaltfläche Filter zurücksetzen klicken, werden Sie ebenfalls zu dieser Seite weitergeleitet. GitHub-436
Reviews
- Die Produktbewertungs-Sterne werden jetzt im Abschnitt Prüfungsdetails auf der Seite Mein Konto korrekt berechnet.
- Die Abschnitte Durchschnittliche Produktbewertung und Produktbewertung auf der Seite mit den Produktüberprüfungsdetails werden jetzt korrekt dargestellt. Zuvor wurde die Überprüfungs-ID beim Berechnen der Storefront-Bewertung durch die Anwendung nicht festgelegt und die Produktüberprüfungsvorlage wurde nicht ordnungsgemäß gerendert.
- Der Erster sein, der dieses Produkt überprüft ändert sich jetzt erwartungsgemäß in eine Überprüfungsanzahl, nachdem ein Administrator eine Überprüfung genehmigt hat.
- Administratoren können jetzt Produktüberprüfungen im Abschnitt Produktüberprüfungen der Seite „Produkt bearbeiten“ wie erwartet sortieren. GitHub-30270
- Überprüfungen werden jetzt mit der richtigen Store-ID gespeichert, nachdem ein Administrator die Überprüfung genehmigt und aus einer anderen Domain als dem Store gespeichert hat. GitHub-17510
Belohnungen
- Händler können jetzt eine Bestellung stornieren, die vollständig oder teilweise mit Belohnungspunkten aufgegeben wurde, nachdem der Kunde, der die Bestellung aufgegeben hat, aus dem System entfernt wurde.
- Händler können jetzt Prämienpunkte aus den Regeln für den Warenkorbpreis entfernen. Zuvor, als ein Händler versuchte, Belohnungspunkte beim Erstellen einer Warenkorb-Preisregel auf 0 zu setzen, blieb der vorherige Wert für die Belohnungspunktmenge erhalten.
- Prämienpunkte für Produktbewertungen werden jetzt mit der entsprechenden Website verknüpft, wenn mehrere Bewertungen von Admin Marketing > Ausstehend Bewertungsraster genehmigt werden. Bisher wurden Prämienpunkte nicht in der Storefront angezeigt und waren nicht mit der entsprechenden Website im Admin verknüpft.
- Das Applikation aktualisiert jetzt die Zahlungsmethode Liste, wenn ein Erstkäufer, der mit mehreren Adressen auscheckt, die Option "Store-Guthaben (Prämie Punkte)" entweder aktiviert oder deaktiviert.
Umsatz
- Administratorbenutzer können jetzt Bestellungen für nicht vorrätige Artikel aufgeben, wenn die Einstellung "Lieferrückstände sind zulässig " aktiviert ist (Filialen > Konfiguration > Katalog > Inventar > Produkt Stock Optionen). Zuvor gab der Applikation einen Fehler aus.
- Auf der Seite zu Bestellungen und Rücksendungen finden Käufer nun eine bestellen, wenn der Nachname mit einem Leerzeichen endet.
- Rechnungen werden jetzt mit der korrekten Gesamtsumme erstellt, wenn ein Warenkorb Preis Regel der Zuweisung eines Rabatts von 100 % auf eine bestellen angewendet wird, die auch Katalogprodukt- und Rabattsteuern unterliegt und für gratis Versand qualifiziert ist. Früher hatte der bestellen den korrekten Preis, die Rechnung jedoch nicht. GitHub-30853
- Die Filterung von Bestellungen nach Datum liefert jetzt genaue Ergebnisse. Bisher gab der Applikation keine bestellen zurück, die nach 00:00 Uhr UTC platziert wurden, wenn Sie Bestellungen nach bestellen Datum gefiltert haben.
- Das Gutschriftsraster zeigt jetzt das richtige Währungssymbol an, wenn Website-Umfang für ein Preisattribut in einer Geschäft Implementierung verwendet wird.
- Die Optionsfelder für Zahlungsmethoden werden nicht mehr im Abschnitt Informationen "Zahlung & Versand" der Checkout arbeitsablauf ausgeblendet, nachdem der Seite "Admin Erstellen Neu Order" neu geladen wurde. GitHub-32106
- Arabisch Text wird nun in Rechnungen korrekt angezeigt.
- Die Applikation berechnet nun die Steuersummen für Teilgutschriften korrekt für Gutschriften, die entweder auf einer bestellen oder einer Rechnung basieren, in Filialen, die PayPal Payment Pro als Zahlungsgateway einsetzen. Bisher hat der Applikation bei Aufträgen mit mehreren Rechnungen die gesamte Steuer dieser bestellen für die Teilstornierung von Rechnungen in der Gutschrift angewendet.
- Das Applikation erstellt beim Versand neuer bestellen E-Mails an Kunden keine zufälligen Datenbank-Deadlocks mehr. Zuvor traten Deadlocks auf, weil der Applikation das gesamte Objekt und seine zugehörigen Objekte anstelle der aktualisierten SQL-Spalten speicherte. Die Anwendung zeigte diesen Fehlertyp an:
SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock; try restarting transaction
. GitHub-31090
- Auf der Seite mit den Bestelldetails für die Storefront wird jetzt die richtige Lieferproduktmenge angezeigt. Zuvor waren die Produktmengen falsch, da die Vorlage für die Seite „Auftragslieferung“ Menge geliefert als
int
gerendert hat. Dies wurde infloat
geändert.
- Die Anwendung sendet keine E-Mail-Kopien einer Auftragsrechnung mehr, wenn die Schaltfläche E-Mail-Kopie der Rechnung deaktiviert ist. Zuvor wurde die Anwendung per E-Mail an den Kunden und Senden Rechnungs-E-Mail an Kopie. GitHub-28511
- Das Applikation erstellt keine Duplikat-Adresseinträge mehr für einen Kunden-Konto, wenn eine neue bestellen aus dem Admin für eine Bestandskunde erstellt wird. Das Im Adressbuch speichern wurde in „Zum hinzufügen“ und ist jetzt standardmäßig in „Admin“ deaktiviert.
- Das Applikation verwendet jetzt das Logo, das in das Logo für HTML Druck Ansicht Einstellungen hochgeladen wurde, wenn Käufer ein bestellen von ihrem Konto drucken. Bisher wurde in den Applikation das LUMA-Logo anstelle des hochgeladenen Logos angezeigt.
- Der Pager von bestellen Elementen in der Storefront funktioniert jetzt wie erwartet, wenn die Anzahl der Elemente 20 überschreitet. Zuvor nahm der Pager Konto untergeordnete Produkte mit und die Gesamtanzahl war falsch.
- Die Anwendung zeigt jetzt die korrekten Währungssymbole für Zwischensummen- und Versand- und Bearbeitungswerte auf der Auftragsseite und den Rastern der Gutschriftenseiten an. GitHub-22662
- Administratoren, die Safari verwenden, können jetzt bei der Administratorin oder dem Administrator erfolgreich ein Produkt zu einer Bestellung hinzufügen. Wenn der Administrator zuvor auf die Schaltfläche Ausgewählte Produkte zur Bestellung hinzufügen geklickt hat, hat die Anwendung das rotierende Ladesymbol angezeigt und die Seite hängt. GitHub-30265
Verkaufsregel
- Die Applikation wendet jetzt Warenkorb Preisregeln mit den Bedingungen "Maximale Menge Rabatt wird angewendet auf " oder "Rabatt Mengenschritt (Kauf X)" korrekt an, wenn mehrere Warenkorb Preisregeln auf die Warenkorb angewendet werden. Wenn zuvor ein Warenkorb Preis, der Regel mit Maximaler Mengenrabatt angewendet wird oder Rabattmengenschritt (Kauf X) angewendet wurde, nachdem ein anderer Warenkorb Preis Regel angewendet wurde, wurde der Gesamtrabatt auf den Wert reduziert, der für Maximale Menge Rabatt wird angewendet auf oder Rabattmengenschritt (Kauf X) multipliziert mit dem Produktpreis konfiguriert wurde.
- Der Coupon-Bericht gibt jetzt Coupon Aktivität in Bereitstellungen, in denen eine geteilte Datenbank implementiert ist, genau wieder.
- Warenkorbpreisregeln, die die Bedingung Kategorie IST NICHT enthalten, werden jetzt wie erwartet auf konfigurierbare untergeordnete/einfache Produkte angewendet, die keiner Kategorie zugewiesen sind, deren übergeordnete Produkte jedoch zugewiesen sind.
- Der GraphQL-Abfrage
cart
gibt nun die korrekte Gesamtsumme für den Abrechnung Schritt eines Warenkorb zurück, wenn ein Coupon auf die bestellen angewendet wird.
Suchen search-heading
- Die Kategorieseite enthält nicht mehr diese doppelten HTML-Element-IDs:
modes-label
,mode-list
,toolbar-amount
,sorter
,limiter
.
- Die Ergebnisse der Wortteilsuche enthalten keine unerwarteten oder irrelevanten Übereinstimmungen mehr, und Suchvorgänge liefern konsistente Ergebnisse sowohl für die Storefront als auch für den Administrator. Die Anwendung verwendet nun einen anderen Analysator ohne Wortstamm für die Teilwortsuche. Zuvor wurden in den Suchergebnissen Produkte angezeigt, die keine Suchbegriffe enthielten. (Der Standard-Analyzer enthielt zuvor einen Wortstammer, und da derselbe Analyzer zur Suchzeit für die Suche nach Wortteilen verwendet wurde, konnte das Suchergebnis unerwartete oder irrelevante Übereinstimmungen hervorrufen.)
- Die Schnell suchen gibt jetzt Ergebnisse zurück, wenn die Suchanfrage aus mehreren Wörtern besteht und der Produktname so konfiguriert ist, dass er nicht durchsuchbar ist. Wenn der Produktname zuvor als nicht durchsuchbar konfiguriert wurde, gab die Anwendung eine Abfrageausnahme für Suchabfragen mit mehreren Wörtern aus.
- Die Suchergebnisse enthalten jetzt das
weight
Attribut wie erwartet, wenn es als durchsuchbar konfiguriert ist.
- Die Anwendung gibt keinen Fehler mehr aus, wenn eine leere Kategorieseite mit aktiviertem Elasticsearch angezeigt wird. Stattdessen wird die Seite wie erwartet gerendert und eine informative Nachricht angezeigt. Zuvor löste ein leerer Volltextindex eine Ausnahme auf einer Kategorieseite aus.
- Die Funktion zur automatischen Vervollständigung des Suchfelds funktioniert jetzt wie erwartet, wenn eine Käuferin oder ein Käufer außerhalb des Suchfelds klickt, nachdem sie ihre Suche begonnen hat. Die Vorschläge zur automatischen Vervollständigung werden jetzt wieder angezeigt, wenn der Käufer mit der Eingabe fortfährt. Zuvor wurden in der Anwendung keine Vorschläge zur automatischen Vervollständigung angezeigt, und durch Klicken auf das Suchfeld wurden die Suchvorschläge nicht erneut angezeigt (obwohl durch Eingabe zusätzlicher Buchstaben etwas passiert ist).
- Die Suche nach einem Produkt basierend auf seiner vollständigen oder teilweisen SKU in der erweiterten Suche gibt jetzt das erwartete Produkt zurück.
- Mehrschichtige Navigationsfilter zeigen jetzt genaue Produktzahlen an. Zuvor wurden die Werte der Produktanzahl aus Elasticsearch nicht nach Katalogberechtigungen gefiltert.
- Elasticsearch gibt keinen Fehler mehr aus, wenn der Kategorie-URL-Seitenparameter die Paginierung überschreitet. GitHub-23843
- Sie können jetzt eine benutzerdefinierte Elasticsearch-Feldzuordnung zu
Magento\Elasticsearch\Model\Adapter\FieldMapper\Product\FieldProvider\FieldName\Resolver\CompositeResolver
hinzufügen. GitHub-24350
- Entwicklerinnen und Entwickler können jetzt Elasticsearch-Zuordnungen ändern. Zuvor waren dynamische Vorlagen, die in den Standardzuordnungen an den Elasticsearch-Server gesendet wurden, hartcodiert, was Entwickler daran hinderte, in Elasticsearch zusätzliche Daten zu indizieren, die mit einem benutzerdefinierten Modul verknüpft waren. GitHub-24363
- Suchfelder (vom Typ „Minisearch„) funktionieren jetzt erwartungsgemäß, wenn die Suchvorschläge deaktiviert sind. GitHub-30584
Lieferung
- Die Anwendung aktualisiert jetzt den Versandpreis wie erwartet, wenn ein Käufer zur Warenkorbseite zurückkehrt, nachdem er ein Produkt während des Checkouts mit mehreren Adressen gelöscht hat.
- Die Anwendung zeigt jetzt den richtigen angepassten Versandpreis an, wenn einige Artikel im Warenkorb für den kostenlosen Versand qualifiziert sind. Zuvor, als eine Untergruppe von Artikeln im Warenkorb für den kostenlosen Versand qualifiziert war, hat die Anwendung den Versandpreis nicht angepasst und den vollständigen Versandpreis für den Käufer angezeigt.
- Administratoren, die auf eine bestimmte Website beschränkt sind, können jetzt eine Sendung für eine Bestellung auf derselben Website erstellen. Zuvor löste die Anwendung diese Ausnahme aus, wenn ein Administrator ohne Berechtigung für die standardmäßige Store-Ansicht versuchte, eine Bestellung zu versenden, die in einer Store-Ansicht platziert wurde, auf die der Administrator Zugriff hatte:
Notice: Undefined offset: 1 in /app/code/Magento/Catalog/Model/Product/Attribute/Backend/GroupPrice/AbstractGroupPrice.php on line 293
.
- Die Anwendung berücksichtigt jetzt relevante Warenkorb-Preisregel-Rabatte bei der Feststellung, ob eine Bestellung die Bedingungen für einen kostenlosen DHL-Versand erfüllt.
- Versandetiketten verwenden jetzt wie erwartet die Basiswährung anstelle bestellen Währung für Shops, die mehrere Währungen unterstützen, wenn ein bestellen in einer Nicht-Basiswährung platziert wird. GitHub-31891
- Die Applikation zeigt jetzt die korrekte bestellen Zwischensumme an, wenn ein Erstkäufer während des Checkout zum Warenkorb Seite zurückkehrt, nachdem er von der Seite mit mehreren Sendungen wegnavigiert ist. GitHub-31889
- Durch das Bearbeiten Abrechnung Informationen während der Admin-bestellen-Erstellung werden die Versandinformationen für Kunden mit unterschiedlichen Standard-Liefer- und Abrechnung Adressen nicht mehr geändert. GitHub-31786
- Das Programm hebt das Kontrollkästchen Kommentare anhängen nicht mehr auf, wenn ein Käufer Versandmethoden und -raten abrufen klickt und beim Erstellen einer Bestellung über den Administrator eine Versandmethode auswählt. GitHub-30256
- Käufer können jetzt die Schaltfläche Zurück im Browser verwenden, um zur Seite „Versandmethode auswählen“ zurückzukehren, während sie eine Bestellung mit mehreren Adressen auschecken. Zuvor wurde in der Applikation eine beschädigte Seite "Versand Methode auswählen" angezeigt. GitHub-30268
- Produkt-Anzahl bleibt nun wie erwartet unverändert, nachdem ein Erstkäufer die Anzahl auf der Seite "Versand an mehrere Adressen" geändert und auf die Browser Zurück Button geklickt wurde. GitHub-31956
- Die Pauschalgebühren für die Versandmethode werden nicht mehr null, wenn während der Checkout ein Warenkorb Preis Regel angewendet wird. GitHub-21832
- Die Applikation gibt keinen Fehler mehr aus, wenn ein Händler versucht, eine bestellen mit DHL zu versenden, wenn das Kontrollkästchen Erstellen Versandetikett aktiviert ist und der Produktname Unicode-Zeichen enthält. Bisher wurde im Applikation bei Anforderung zur Etikettenerstellung folgender Fehler angezeigt:
The response is in wrong format
. GitHub-31032
- Sie können eine bestellen vom Administrator erfolgreich in einer Multi-Site-Implementierung platzieren,
United States
die auf einer Website aktiviert undDisable all countries
auf der anderen Website als Standard-Umfang aktiviert ist. Zuvor hat der Applikation die bestellen nicht platziert und diesen Fehler angezeigt:Please check the shipping address information. "regionId" is required. Enter and try again
GitHub-30577
Staging
- Die Funktion „Blockaktualisierung planen“ funktioniert jetzt wie erwartet bei Bereitstellungen, die Fastly implementieren. Zuvor hat die Anwendung Blockinhalte nicht aktualisiert, weil Fastly Cache-Tags nicht invalidiert wurden und Fastly weiterhin veraltete Inhalte bereitstellte.
- Die Staging-Vorschau der Warenkorbpreisregel wird jetzt auf der entsprechenden Website geladen, wenn sie mehreren Website-Store-Ansichten zugewiesen wird. Zuvor wurde die Staging-Vorschau der Warenkorbpreisregel in der standardmäßigen Store-Ansicht geladen, unabhängig von den zugewiesenen Websites.
- Sonderpreise für Produkte in der nicht standardmäßigen Shop-Ansicht sind jetzt auf den Standardwert gesetzt, wie er nach Beendigung einer geplanten Aktualisierung erwartet wird.
- Händler können jetzt ein herunterladbares Produkt mit einem verknüpften Beispiel erfolgreich von der herunterladbaren Produktseite speichern, nachdem sie ein künftiges Staging-Update mit einem Enddatum erstellt haben. Zuvor hat die Anwendung das Produkt nicht gespeichert und folgende Meldung angezeigt:
The downloadable sample isn't related to the product. Verify the link and try again
. GitHub-488
- Die Anwendung führt keine großen Datenbankabfragen mehr aus, die während der Vorschau einer Zeitplanaktualisierung einer Kategorie alle Produkt-IDs enthalten. Stattdessen wird der Kategoriefilter auf die Produktsammlung angewendet, um eine temporäre Tabelle für Staging-Vorschauen der Kategorie zu erstellen. Zuvor hat die Anwendung alle Produkte in eine temporäre Tabelle für die Staging-Vorschau eingefügt, was die Leistung beeinträchtigt hat.
- Das
Magento_SalesRuleStaging
-Modul Trigger beim Upgrade von 2.3.x keine Fehler mehr.
- Die Anwendung zeigt jetzt Katalogregelbedingungen mit korrekten Daten an, wenn Sie eine Zeitplanaktualisierung anzeigen. Wenn Sie zuvor eine mit Bedingungen erstellte Zeitplanaktualisierung angezeigt haben, hat die Anwendung keine Bedingungen oder angezeigten Bedingungen mit falschen Daten angezeigt.
- Das Standardwert verwenden für ein Produkt bleibt aktiviert, nachdem eine geplante Aktualisierung vor der Aktualisierung deaktiviert wurde.
- Katalogpreisregeln gelten jetzt erwartungsgemäß für Produkte mit undefinierten Attributwerten. Zuvor wurden Rabatte, die durch eine Katalogpreisregel erstellt wurden, nicht auf Produkte mit undefinierten Attributen angewendet. GitHub-461
- Katalogregeln funktionieren jetzt wie erwartet in Bereitstellungen mit mehreren Websites und Stores in verschiedenen Zeitzonen. Zuvor hat die Anwendung Katalogregeln auf alle Websites gleichzeitig angewendet oder deaktiviert.
- Stufenpreise werden nicht mehr entfernt, wenn ein Zeitplan-Update für eine bestimmte Website erstellt wird.
- Sie können jetzt ein Produkt von der Seite Herunterladbares Produkt speichern, nachdem Sie ein künftiges Staging-Update mit einem Enddatum erstellt haben. Zuvor hat die Anwendung das Produkt nicht gespeichert und folgende Meldung angezeigt:
The downloadable link isn't related to the product. Verify the link and try again
. GitHub-474
store
- Die Anwendung behandelt eine Zeichenfolge von
0
beim Anzeigen einer Store-Startseite nicht mehr als leeren Wert. Zuvor behandelte die Anwendung einen ganzzahligen Wert am Anfang eines Anfragepfads als Speicher-ID, was unbeabsichtigte Auswirkungen auf SEO hatte.
- Plug-ins für
\Magento\Framework\App\ActionInterface
unterlib/internal/Magento/Framework/App/Action/Plugin
wurden entfernt, um der Richtlinie zu entsprechen, dass Plug-ins verwendet werden sollten, um das Verhalten eines Moduls von einem anderen Modul anzupassen. GitHub-28050
- Die Anwendung zeigt diese Meldung jetzt an, wenn Sie versuchen,
Website
als Standard auszuwählen, wennStore View
während der Website-Erstellung deaktiviert ist:Please enable your Store View before using this Web Site as Default
. Zuvor stürzte die Website ab, und die Anwendung zeigte keinen Warnhinweis an.
Steuer
- Der Antrag berücksichtigt nun bei der Validierung des Mindestbestellbetrages versteckte Steuern.
- Das Applikation zeigt nun wie erwartet Fest Produktsteuern (FPT) an, wenn ein Erstkäufer zurück zu seinem Warenkorb navigiert und nach dem Hinzufügen Paket Produkten zur Warenkorb mit dem Checkout fortfährt. GitHub-30250
- Die Anwendung füllt jetzt die Eingabefelder MwSt.-Nummer für die Abrechnungs- und Versandadressen des Abschnitts „Adressinformationen“ auf der Seite „Admin New Order“ mit gespeicherten MwSt.-Nummern vorab, wenn ein Administrator eine Bestellung für einen bestehenden Kunden erstellt. GitHub-31846
- Die Anwendung zeigt jetzt auf der Seite zur Kundenregistrierung ein MwSt-Feld an, wenn
customer/create_account/vat_frontend_visibility
aktiviert ist. GitHub-31326
Test
- Testumgebungen wurden auf Redis 6.0.12 aktualisiert.
CacheCleaner::cleanAll();
aus Integrationstests entfernt. GitHub-31074
- Für dieses Szenario wurde eine Test hinzugefügt: Administratoren können Kunden Konto bearbeiten, wenn der Kunde einen Newsletter in der Warteschlange abonniert hat. GitHub-30645
- Der Befehl wurde aus den Tests entfernt, um die
cache:flush
Ausführungszeit für dieCatalog
Module ,CatalogUrlRewrite
undLoginAsCustomer
zu verbessern. GitHub-31056
- Redundante Parameter wurden entfernt und POST bei Bedarf in
\Magento\Logging\Model\ProcessorTest::testLoggingProcessorLogsActionShipping
GET geändert.
Thema
- Der Kunde Log-in Seite zeigt diese Meldung nicht mehr an, wenn der Verschieben JS-Code bis zum Ende der Seite-Einstellung (Store > Configurations > Advance > Developer > JavaScript Einstellungen) und Cookies aktiviert sind:
The store will not work correctly in the case when cookies are disabled
.
- Kontolinks in Kopfzeilen folgen nun WCAG-Standards. Zuvor enthielten Konto Links in Kopfzeilen doppelte IDs, was dazu führte, dass WCAG-Tauglichkeitsprüfung fehlschlugen.
- Im Applikation wird Geschäft Konfiguration für ein Geschäft Logobild jetzt vorrangig über die Layoutkonfiguration gestellt. Zuvor war die Größe von Logobildern festgelegt und variierte nicht je nach Geschäft.
- Die Applikation zeigt nun einheitlich Seite Elemente auf Store-Seiten an, die standardmäßige Adobe Systems Commerce-Themen verwenden. Bisher wurden nicht alle Stile im Design "Leer" angewendet, sodass nicht alle Seite Elemente auf Seiten angezeigt wurden, die dieses Design verwendeten. (Im Suchfeld Meine Bestellungen war beispielsweise kein Lupensymbol vorhanden.)
Übersetzung und Gebietsschema
- Klammern, die Zeichenfolgen hinzugefügt werden, werden nicht mehr maskiert, wenn die Inline-Übersetzung konfiguriert ist. Zuvor wandelte die
escapeHtmlAttr
-Methode die Klammern in HTML-Entitäts-Codes um. GitHub-32000
- Nicht übersetzbare Ausdrücke im Admin-Bereich sind jetzt übersetzbar. (Diese Pull-Anfrage trägt zu den laufenden Bemühungen bei, alle Admin-Zeichenfolgen lokalisierbar zu machen.) GitHub-11175
- Text Zeichenfolgen in den Vorlage, die zur managen gespeicherter Zahlungsmethoden (Mein Konto > gespeicherten Zahlungsmethoden ) verwendet werden, sind jetzt übersetzbar. GitHub-31211
- Bestell-E-Mails, die vom Administrator gesendet werden, verwenden jetzt das Geschäft Gebietsschema und nicht das Gebietsschema, das mit dem Konto des Administrators verknüpft ist. GitHub-26521
BENUTZEROBERFLÄCHE
- In der Admin-Fußzeile wird nun die korrekte Produktversion angezeigt.
- Die Paginierung für Quellen ist jetzt wie erwartet während der Erstellung von Admin-Sendungen vorhanden.
- Der Produktrasterfilter funktioniert jetzt korrekt, wenn Sie benutzerdefinierte Datumsattribute zum Filtern von Produkten verwenden und das Admin User Gebietsschema .
en_GB
- Gesten zum Zoomen funktionieren jetzt wie erwartet in der Produktseite Bildergalerielupe auf iOS-Geräten.
- Die Paginierung des Admin-Produktrasters suchen Ergebnisse beginnt jetzt wie erwartet bei Seite Eins pro suchen.
- Anomalien bei der Anzeige der Warenkorb beim Zoomen wurden behoben. Bisher überlappten sich Darstellungselemente, wenn diese Seite gezoomt wurde.
- Ausrichtung Probleme mit den Registerkarten der Seite für Administratoreinladungen (Admin-Marketing > Privatverkäufe > Einladungen) wurden behoben. Zuvor war die Registerkarten-Anzeige für Einladungen, die von einem Kunden angenommen wurden, falsch ausgerichtet. GitHub-333
- Die Bestellüberprüfungsseite, die beim Checkout mit PayPal Express Checkout angezeigt wurde, wird jetzt erfolgreich geladen. Zuvor enthielt die Vorlage die nicht verwendete Schaltfläche Versandmethode aktualisieren die vom Skript beim Rendern der Seite nur teilweise ausgeblendet wurde. GitHub-32006
- Bewertungssterne und Überprüfungstext im Abschnitt Kundenbewertungen der Produktseite haben jetzt einen ordnungsgemäßen Abstand, wenn lange Bewertungsnamen vorhanden sind. GitHub-31890
- Optionen werden nun wie erwartet in der Dropdown-Liste „Aktionen“ auf den Seiten „Rechnungen archivieren“, „Sendungen“ und „Gutschriften“ angezeigt.
- Das Applikation zeigt jetzt einen korrekten Zeitwert an, wenn die
datetime
KomponentenoptiontimeOnly
auf "Ja" eingestellt ist. GitHub-23157
- Sie können jetzt eine Layoutaktualisierung entfernen, nachdem Sie ein neues Widget auf Admin-Inhalt > Widgets erstellt haben. GitHub-29936
- Die Button Entfernen Layout Update funktioniert jetzt wie erwartet auf jedem Layout, das Sie über Admin Content > Widgets hinzugefügt haben. Bisher funktionierte dieses Button nur mit dem ersten Layout, das beim Hinzufügen mehrerer Layouts ausgewählt wurde. GitHub-30286
- Das Programm verwendet jetzt den Seitentitel, der in der Layout-Datei als Browser-Seitentitel für die Datei „Kundenkonto bearbeiten“ festgelegt ist. Zuvor wurde durch die Aktion "
Magento\Customer\Controller\Account\Edit
-Controller“ der Wert „Seitentitel“ aufAccount Information
erzwungen. GitHub-30724
-
Auf diesen Seiten wurden Kontrollkästchen hinzugefügt, mit denen Händler zwischen dem Ein- und Ausblenden von Kennwörtern umschalten können:
- Kundenanmeldung
- Kundenregistrierung
- Customer Edit (Abschnitt „Change Password„)
- Kunde hat neues Kennwort festgelegt GitHub-31557
- Eine redundante Kopfzeile in den Rasterzellen wurde entfernt, die angezeigt wurde, wenn ein Administrator ein Produkt zu einem gruppierten Produktsatz hinzugefügt hat, nachdem er den Attributsatz geändert hatte. GitHub-30911
- Die Applikation zeigt jetzt einen
DateRange
Filter im Bereich "Angemeldet" des > Anmeldung Seite "Customer" an. Zuvor hat die Anwendung einenText
Filter angezeigt. GitHub-30328
- JavaScript wurde aus den Vorlagendateien entfernt und in separate Dateien verschoben, um Rendering-Probleme auf Administratorseiten zu reduzieren. Zuvor wurden Admin-Seiten in Bereitstellungen, in denen die Minimierung der HTML aktiviert war, nicht ordnungsgemäß gerendert. Das Applikation zeigte folgenden Fehler an:
An error has happened during application run. See exception log for details
. GitHub-32454
- Das
dropdownDialog
Widget lädt jetzt nur die benötigten Blöcke, die per Drag & Size geändert werden könnenjquery-ui
. Zuvor wurden große Mengen unnötigen Codes geladen, was die Ladezeit in die Höhe trieb und die Leistung verringerte. GitHub-32810
URL-Neuschreibungen
- Produkt-URL-Neuschreibungen für eine bestimmte Website in einer Multi-Site-Bereitstellung werden jetzt wie erwartet generiert, nachdem Produkte durch Massenaktualisierung einer Website zugewiesen wurden.
- Die Applikation generiert nun korrekt die URL Pfad für untergeordnete Kategorien, wenn das Kontrollkästchen Standardmäßig Wert verwenden für den URL Schlüssel für die übergeordnete Kategorie aktiviert ist. Bisher führte das Verschieben einer Kategorie in der Hierarchie zu einem falschen
url_path
Wert, wenn verschiedene URL-Schlüssel in einer Ansicht-Implementierung mit mehreren Geschäft verwendet wurden. GitHub-16202
- Das Applikation aktualisiert jetzt die
url_path
Kategorie, die allen Geschäft Umfang zugewiesen ist, wenn Sie eine Kategorie im Kategorie Hierarchie verschieben. Zuvor führte das Verschieben einer Kategorie in der Hierarchie zu einer falschenurl_path
.
- URL Weiterleitungen, die vom Administrator mit einer benutzerdefinierten URL erstellt wurden, funktionieren jetzt erfolgreich. Zuvor hat GraphQL die Antwort eines GraphQL-Abfrage
urlResolver
zwischengespeichert und nach dem URL Rewrite-Update den alten Wert zurückgegeben.
- Neuschreibungen der Produkt-URLs werden jetzt erwartungsgemäß entfernt, wenn ein Produkt von einer Website entfernt wird. GitHub-24184
- Der
store_id
wurde in deraddStoreFilter
Funktion derapp/code/Magento/UrlRewrite/Model/ResourceModel/UrlRewriteCollection.php
-Auflistung einmain_table
Verweis hinzugefügt. Zuvor traten Probleme immer dann auf, wenn einjoin
zur Sammlung einer Tabelle hinzugefügt wird, die auch einestore_id
enthält. GitHub-31853
- Der
PUT /V1/products/:sku
REST-Endpunkt generiert jetzt die Produkt-URL-Neuschreibungen wie erwartet. Zuvor wurden vom Endpunkturl_key
Produktdatenwerte neu generiert, jedoch keine URL-Neuschreibungen. GitHub-30316
Benutzer
- Sie können jetzt eine effektive neue Benutzerrolle (Admin System > Berechtigungen > Benutzerrollen) speichern, wobei die gesamte
Catalog
ausgewählt ist, mit Ausnahme vonEdit Product Design
( Katalog > Inventar > Produkte > Produktdesign bearbeiten. Zuvor wurden in der Anwendung keine Produktänderungen gespeichert, die von einem Benutzer in dieser Rolle vorgenommen wurden, und der folgende Fehler wurde angezeigt:Not allowed to edit the product's design attributes
. GitHub-31973
- Das Programm verwendet jetzt die richtige benutzerdefinierte E-Mail-Vorlage beim Generieren von E-Mails für neue Administratoren. Zuvor verwendete die Anwendung die alte Standardvorlage, bei der der Vor- und Nachname des Administrators weggelassen wurde.
- Das Programm verwendet jetzt die richtige E-Mail-Vorlage, wenn es E-Mails an neue Benutzer sendet. Zuvor verwendete das Programm die Standardvorlage, selbst wenn eine benutzerdefinierte Vorlage ausgewählt war.
VersionCMS
- Das Programm wendet nun das richtige Design auf eine CMS-Seite an, nachdem Sie ihr Layout geändert haben. Zuvor hat das Programm das zugewiesene Design in Luma geändert, nachdem Sie Ihre Layout-Änderungen gespeichert haben, unabhängig davon, welches Design der Seite zugewiesen wurde.
- Administratoren mit eingeschränkten Rollen können jetzt erfolgreich die Seiten hinzufügen, aktualisieren oder duplizieren, auf die er Zugriff hat und die einem Hierarchieknoten zugewiesen sind. Zuvor gab es unter diesen Bedingungen einen schwerwiegenden Fehler der Anwendung.
Video
- Videos sind jetzt wie erwartet in der Produktgalerie verfügbar, wenn das erweiterte JavaScript-Bundle aktiviert und verwendet wird. GitHub-32501
- YouTube-Videos für einfache Produkte, die zu einem konfigurierbaren Produkt gehören, funktionieren jetzt erwartungsgemäß. Zuvor wurden Bilder nach ID statt nach Position sortiert. Daher wurden einige Videos wie Bilder behandelt. GitHub-29690
Visual Merchandiser
- Die Leistung beim Laden von Seiten der Kategorie Admin mit Visual Merchandiser wurde verbessert. Das Laden von Seiten mit Administratorkategorien generiert keine großen Datenbankabfragen mehr.
Web-API-Framework
- Die Katalog-API aktualisiert jetzt die benutzerdefinierten Optionswerte eines Produkts korrekt, indem neue Werte hinzugefügt und alte Werte entfernt werden. Zuvor hat die API die alten Werte nicht gelöscht.
- POST
/V1/guest-carts/:cartId/billing-address
gibt jetzt die Adresse-ID als Ganzzahl zurück, nicht als Zeichenfolge.
Website-Einschränkung
- Käufer werden jetzt zu der Seite weitergeleitet, auf die sie zugreifen wollten, bevor sie zur Anmeldung aufgefordert wurden. Zuvor wurden in Bereitstellungen, in denen Website-Einschränkungen aktiviert und der Einschränkungsmodus auf "Verkauf: Nur Anmeldung eingestellt waren, Käufer zur Store-Startseite weitergeleitet.
Widget
- Ein Administrator kann jetzt alle Layout-Aktualisierungen eines Widgets löschen. Zuvor konnte ein Administrator, wenn ein Widget mehrere Layout-Aktualisierungen hatte, nur die erste löschen.
- Durch Klicken auf Schaltfläche Zum Warenkorb hinzufügen“ im Produkt-Widget wird die Seite nicht mehr neu geladen. Zuvor führte das Klicken auf Schaltfläche Zum Warenkorb hinzufügen“ in einem Produkt-Widget dazu, dass eine aktuelle Seite neu geladen wurde, bevor das Produkt zum Warenkorb hinzugefügt wurde.
- Das CMS-Hierarchie-Knotenverknüpfungs-Widget in TinyMCE rendert jetzt Hierarchie-Links wie erwartet, wenn das Feld Anker Custom Text leer ist.
Wunschliste
- Die Anwendung setzt die Konfigurationseinstellungen eines konfigurierbaren Produkts nicht mehr zurück, wenn Sie auf die Schaltfläche Element bearbeiten für das Produkt in einer Wunschliste klicken. GitHub-32119
- Die Anwendung zeigt jetzt den richtigen Produktpreis an, wenn Sie ein Produkt mit einer anpassbaren Dateioption in der Wunschliste aktualisieren. Zuvor zeigte die Anwendung den falschen Produktpreis an und zeigte keinen Link zur hochgeladenen Datei an.
- Die Gesamtzahl der Produkte in einer Wunschliste für einen Kunden mit mehreren Wunschlisten entspricht nun der Anzahl der Artikel in der Wunschliste. Zuvor wurden nicht vorrätige Produkte in die Gesamtzahl der Produkte einbezogen.
- Das Programm entfernt jetzt ein Produkt aus einer Wunschliste, nachdem es zu einer Bestellung hinzugefügt wurde. GitHub-30260
- Käufer können jetzt aus einer Wunschliste verwandte Produkte zu ihrem Warenkorb hinzufügen. Zuvor hat die Anwendung nur das konfigurierbare Produkt hinzugefügt, nicht das konfigurierbare Produkt und die zugehörigen Produkte, wenn ein Käufer auf den Link Alle auswählen des Abschnitts „Verwandte Produkte“ geklickt hat. GitHub-32274
Bekannte Probleme
Problem: JavaScript-Fehler, wenn reCAPTCHA deaktiviert ist. Wenn reCAPTCHA für das Auschecken deaktiviert ist, wird das Auschecken fortgesetzt, aber die Anwendung zeigt im Konsolenprotokoll einen Uncaught TypeError
Fehler an. Dieses Problem wird in einer späteren Version behoben.
Problem: Content Security Policy-Fehler. Die Storefront zeigt im Konsolenprotokoll den folgenden Fehler an: The Content-Security-Policy directive frame-ancestors does not support the source expression unsafe-inline
. Die Leistung der Storefront ist nicht beeinträchtigt.
Problem: Anomalien bei der PayPal-Kreditanzeige von Geschenkkartenbeträgen. Wenn PayPal-Guthaben aktiviert ist und mehrere Geschenkkartenbeträge konfiguriert sind, aktualisiert die Storefront den Betrag für Ratenzahlungen nicht, wenn ein Käufer den Betrag für den Wert einer Geschenkkarte ändert. Eine Korrektur dieses Problems wird in Adobe Commerce 2.4.4 und Magento Open Source 2.4.4. enthalten sein
Problem: Die Schaltfläche Zur Bestellung hinzufügen funktioniert nicht für Produkte, die per SKU zum Warenkorb hinzugefügt werden. Die Anwendung zeigt diese Fehlermeldung an, wenn Sie auf die Schaltfläche Zur Bestellung hinzufügen klicken, nachdem Sie Produkte zur Bestellnummer hinzugefügt haben: An error has happened during application run
. Produkte werden nicht zum Warenkorb hinzugefügt. Problemumgehung: Verwenden Sie die Funktion "hinzufügen Products".
Problem: Die GraphQL-category
- und -categoryList
ignorieren Kategorieberechtigungen, die bestimmen, ob Kategorien in einem freigegebenen Katalog ausgeblendet oder offen gelegt werden. In der Storefront werden derzeit alle Kategorien angezeigt, die dem freigegebenen Katalog zugewiesen wurden oder deren Zuweisung aufgehoben wurde. Dies betrifft Adobe Systems Commerce 2.4.3-Bereitstellungen, die eine PWA Storefront implementieren, für die B2B freigegebene Kataloge aktiviert wurden.
Community Beiträge
Wir danken der Magento Open Source-Community und möchten ihre Beiträge zu dieser Version würdigen.
Das Community-Engineering-Team Magento Mitwirkende führt eine Liste der wichtigsten Mitwirkenden und Partner nach Monat, Quartal und Jahr. Auf dieser Seite Mitwirkende können Sie Links zu ihren zusammengeführten PRs auf GitHub folgen.
Partnerbeiträge
In der folgenden Tabelle sind die Beiträge der Partner aufgeführt. In dieser Tabelle sind die Partner aufgeführt, die zur Pull-Anfrage beigetragen haben, sowie die externe Pull-Anfrage und die damit verbundene GitHub-Problemnummer (falls verfügbar).
Einzelne Beitragszahler
In der folgenden Tabelle sind die Beiträge unserer Community-Mitglieder aufgeführt. In dieser Tabelle sind die externen Pull-Anforderungen, die damit verbundene GitHub-Problemnummer (falls verfügbar) und das Community-Mitglied aufgeführt, das zur Pull-Anforderung beigetragen hat.
Systemanforderungen
Unser Technologie-Stack basiert auf PHP und MySQL. Weitere Informationen finden Sie unter Systemanforderungen.
Anweisungen zur Installation und Aktualisierung
Sie können Adobe Commerce 2.4.3 mit Composer installieren.
Migrations-Tool-Kits
Mit dem Datenmigrations-Tool können Sie vorhandene Magento 1.x-Speicherdaten nach Magento 2.x übertragen. Diese Befehlszeilenschnittstelle umfasst Funktionen zum Überprüfen, Verfolgen des Fortschritts, Protokollieren und Testen. Installationsanweisungen finden Sie unter Installieren des Datenmigrations-Tools. Erwägen Sie, das Datenmigrations-Repository“ zuoder dazu beizutragen.
Mit Code Migration Toolkit können bestehende Magento 1.x-Store-Erweiterungen und -Anpassungen auf Magento 2.x übertragen werden. Die Befehlszeilenschnittstelle enthält Skripte zum Konvertieren von Magento 1.x-Modulen und -Layouts.