Versionshinweise zu Adobe Commerce 2.4.3
Adobe Commerce 2.4.3 führt Verbesserungen der Leistung und Sicherheit sowie erhebliche Plattformverbesserungen ein. Zu den Sicherheitsverbesserungen gehören die Erweiterung der reCAPTCHA-Abdeckung und die Einbeziehung der integrierten Ratenbegrenzung. Abhängigkeiten von Core Composer und Bibliotheken von Drittanbietern wurden auf die neuesten Versionen aktualisiert, die mit PHP 8.x kompatibel sind.
Diese Version enthält über 370 neue Fehlerbehebungen am Kern-Code und 33 Sicherheitsverbesserungen. Alle in den Versionshinweisen zu Adobe Commerce 2.4.2 bekannten Probleme wurden in dieser Version behoben.
Weitere Informationen zu Adobe Commerce 2.4.2-p2 finden Sie 🔗 den Versionshinweisen zu Adobe Commerce 2.4.2-p2.
Weitere Versionsinformationen
Obwohl der Code für diese Funktionen mit vierteljährlichen Versionen gebündelt ist, werden mehrere dieser Projekte (z. B. B2B, Page Builder und Progressiven Webs Application (PWA) Studio) ebenfalls unabhängig voneinander veröffentlicht. Fehlerbehebungen für diese Projekte werden in den separaten, projektspezifischen Versionsinformationen dokumentiert, die in der Dokumentation für jedes Projekt verfügbar sind.
Wenden Sie den MC-43048__set_rate_limits__2.4.3.patch an, um das Problem mit der API-Ratenbegrenzung zu beheben
Dieser Hotfix bietet eine Lösung für das Problem, dass Web-APIs keine Anfragen verarbeiten können, die mehr als 20 Elemente in einem Array enthalten. Dieses Problem betrifft Bereitstellungen mit Magento Open Source 2.4.3, Adobe Commerce 2.4.3 oder 2.3.7-p1. Diesen Versionen wurde eine integrierte Ratenbegrenzung hinzugefügt, um DoS-Angriffe (Denial-of-Service) zu verhindern. Der standardmäßige Maximalwert wurde auf 20 festgelegt. Dieser Patch setzt die Standardbegrenzung auf einen höheren Wert zurück. Wenn Sie vermuten, dass Ihr Store einen DoS-Angriff erlebt, empfiehlt Adobe, die standardmäßigen Eingabebeschränkungen auf einen niedrigeren Wert zu senken, um die Anzahl der Ressourcen zu beschränken, die angefordert werden können. Siehe den Web-API kann Anfragen mit mehr als 20 Elementen im Array nicht verarbeiten Knowledgebase-Artikel.
Wenden Sie AC-384__Fix_Incompatible_PHP_Method__2.4.3_ce.patch an, um einen schwerwiegenden PHP-Fehler beim Upgrade zu beheben
Beim Upgrade auf Adobe Commerce 2.4.3 kann der folgende schwerwiegende Fehler 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 str_contains
-Funktion, die eine PHP 8.x-Funktion ist. Adobe Commerce 2.4.3 unterstützt PHP 8.x nicht. Dieser Hotfix ersetzt diese Funktion durch eine unterstützte PHP 7.x-Funktion. Siehe den Artikel Adobe Commerce-Upgrade 2.4.3, 2.3.7-p1 PHP Fatal Error Hotfix Knowledge Base.
Wenden Sie AC-3022.patch
an, um DHL weiterhin als Versandunternehmen 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) .
Highlights
Achten Sie auf die folgenden Highlights in dieser Version.
Wesentliche Sicherheitsverbesserungen
Diese Version umfasst 33 Sicherheitskorrekturen und Verbesserungen der Plattformsicherheit. Viele dieser Sicherheitskorrekturen wurden auf 2.4.2-p2 und 2.3.7-p1 rückportiert.
33 Sicherheitsverbesserungen, die die Schwachstellen bei Remote Code Execution (RCE) und Cross-Site Scripting (XSS) beheben
Bisher sind keine bestätigten Angriffe im Zusammenhang mit diesen Problemen aufgetreten. Bestimmte Schwachstellen können jedoch ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Administrator erhält. Daher erinnern wir Sie daran, alle erforderlichen Schritte zu unternehmen, um Ihren Administrator zu schützen, einschließlich, aber nicht beschränkt auf diese Bemühungen: IP-Zulassungsauflistung, Zwei-Faktor-Authentifizierung, die Verwendung eines VPN, die Verwendung eines eindeutigen Standorts anstelle von /admin
und gute Passworthygiene. Unter Adobe-Sicherheitsbulletin finden Sie eine Erläuterung dieser behobenen Probleme.
Zusätzliche Sicherheitsverbesserungen
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-Versionen Neues Composer-Plug-in mit Version 2.43.
-
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 Abdeckung von ReCAPTCHA wurde erweitert um:
-
Web-APIs mit entsprechenden HTML-Seiten werden über ReCAPTCHA behandelt. (Dies schließt Web-APIs aus, auf die von Integrationen zugegriffen wird.) Die ReCAPTCHA-Abdeckung schützt Endpunkte vor Spam-Angriffen. Wenn auf Web-APIs durch einen Integrationsdienst eines Drittanbieters zugegriffen wird, der OAuth verwendet, ist ReCAPTCHA deaktiviert.
-
Die Seite „Bestellung aufgeben“ und zahlungsbezogene Web-APIs. Der reCAPTCHA-Schutz für diese Seiten ist standardmäßig deaktiviert und kann vom Administrator aktiviert werden. Diese Abdeckung fügt einen Anti-Brute-Force-Mechanismus hinzu, um Geschäfte vor Kardierangriffen 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 Commerce 2.4.3 verwendet Laminas 3.4.0.
Leistungsverbesserungen
Diese Version enthält Verbesserungen, die die Indexierungszeit für Produktpreis- und Katalogregel-Indexer verkürzen. Händler können jetzt eine Website aus einer Kundengruppe oder einem freigegebenen Katalog ausschließen, wodurch die Anzahl der Datensätze für die Indizierung reduziert und die Indizierungszeiten verkürzt werden.
Live Search
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 Artikel aus der angegebenen Wunschliste in den Warenkorb des Kunden.
-
Geschenk-. Zu den behandelten Aufgaben gehören:
-
Verwenden Sie die giftRegistry-Abfrage, um den Inhalt der Geschenkregistrierungen des Kunden zurückzugeben.
-
Suchen Sie nach Geschenkregistrierungen nach type, email oder ID.
-
Erstellen, Aktualisieren oder Löschen Geschenkregistrierungen.
-
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 wird nicht mehr unterstützt, und ihre Funktionalität wurde durch dieroute
Abfrage ersetzt.
Weitere Informationen zu diesen Verbesserungen finden Sie 🔗 GraphQL-Entwicklerhandbuch.
B2B
Mit Version 2.4.3 wird die B2B-Version 1.3.2 eingeführt. Diese Version enthält mehrere Fehlerbehebungen. Siehe B2B-.
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
- Kategoriebeschreibung
- Produktbeschreibung
Alle in TinyMCE erstellten Inhalte wurden als HTML in Page Builder migriert.
PWA Studio
Weitere Informationen zu Verbesserungen und Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Kompatibilität finden Sie eine Liste der PWA Studio-Versionen und der entsprechenden kompatiblen Versionen.
Upgrade-Kompatibilitätstool
Der Umfang des Upgrade-Kompatibilitätstools wurde auf der Grundlage von Feedback aus der Community erweitert. Schließen Sie sich unserem #upgrade-compatibility-tool Slack-Kanal an, 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 jetzt beim erneuten Laden des Formulars beibehalten, wenn die Erstellung eines neuen konfigurierbaren Produkts fehlschlägt. Zuvor gingen beim Neuladen des Formulars Werte verloren, und die Anwendung zeigte diesen Fehler an:
The value specified in the URL Key field would generate a URL that already exists
. GitHub-32102
- Die Anwendung löst keine Ausnahme mehr aus, wenn Sie
bin/magento setup:upgrade
ausführen, um von einer Magento Open Source-Bereitstellung mit Redis auf Adobe Commerce zu aktualisieren.
- Zuvor erstellte Regeln für den Warenkorbpreis werden jetzt auf der Seite „Inhalts-Staging-Dashboard“ angezeigt, nachdem eine Bereitstellung von Magento Open Source auf Adobe Commerce aktualisiert wurde.
- Bereitstellungen, die auf Galera-Clustern ausgeführt werden, unterstützen jetzt mehr Kunden. GitHub-31038
- Administratoren können sich jetzt erfolgreich bei einer -Bereitstellung anmelden, wenn die Anwendung entweder mit der Option
—use-rewrites=0
oder incore_config_data_table
mitweb/seo/use_rewrites
auf 0 installiert wurde. GitHub-32100
sortOrder
fürAsyncCssPlugin
aktualisiert. Die Anwendung lädt jetztAsyncCssPlugin
vor demJsFooterPlugin
. GitHub-30882
Magento\Config\Model\Config\PathValidator
prüft jetzt den Anzeigepfad , um festzustellen, ob ein Element vorhanden ist, und verwendet bei einem Konfigurationspfad denconfig.xml
Pfad stattdessen zur Validierung. GitHub-27678
- Das Kompilieren von Less-Dateien mit Grunt oder durch Server-seitige Kompilierung liefert nun dieselben Ergebnisse. Zuvor.
.abs- styles
, die andere.abs- styles
in_extends.less
erweitert, wurden beim Kompilieren mit Grunt nicht richtig ausgegeben. Dies führte zu Unterschieden zwischen Produktions- und Entwicklungsbereitstellungen. GitHub-7231
AdminGWS
- Admin GWS verwendet jetzt
int
Werte für diewebsite_id
SQL-Bedingung in Admin-Sammlungen für Admins 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
- 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 Preisindizierung von Bundle-Produkten wird jetzt mithilfe temporärer Tabellen durchgefü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
- Bestelldetails für Bestellungen, die Paketprodukte enthalten, zeigen jetzt den korrekten Preis für die Paketprodukte an, wenn der Preis vor der Bestellung geändert wurde.
- Der Lagerstatus des Bundle-Produkts wird jetzt auf der Grundlage des Lagerstatus seiner untergeordneten Produkte aktualisiert. Zuvor wurden Bundle-Produkte als nicht vorrätig angezeigt, wenn eine Option aus dem Produkt entfernt wurde, und das Bundle-Produkt hatte zwei Optionen mit derselben SKU.
- Ein Administrator kann jetzt den Wert für das Attribut
Shipment Type
eines Bundle-Produkts ändern, nachdem es in eine andere Attributgruppe verschoben wurde. Zuvor wurde dieses Attribut immer mit einemTogether
Wert gespeichert, wenn es in eine andere Attributgruppe als die Standardgruppe im Attributsatz verschoben wurde.
- Die GraphQL-
setGuestEmailOnCart
-Mutation aktualisiert jetzt die Gast-E-Mail korrekt. Zuvor wurden die Angebotstabellen und die Angebotadressen-Tabellen 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
- Die Anwendung berücksichtigt jetzt gebietsschemaspezifische Dezimalstellen beim Konvertieren und Aktualisieren der Produktmenge im Warenkorb.
- Bei Bestellungen wird der angegebene Kundenname mit einer Versandadresse nicht mehr weggelassen. Zuvor wurden Namen weggelassen, da das
same_as_billing
-Flag nicht in der Datenbank gespeichert wurde.
- Links zu Geschenkregistrierungen bleiben jetzt wie erwartet erhalten, wenn Sie ein Produkt im 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 jetzt wie erwartet zur Kasse weitergeleitet, nachdem Sie dem Warenkorb über eine Vorschau des Zeitplanaktualisierungs ein Produktpaket hinzugefügt und auf den Warenkorb geklickt haben. GitHub-447
- Die Anwendung verwirft jetzt Änderungen am Formular der Rechnungsadresse im Schritt Bezahlung an der Kasse, wenn der Käufer nicht auf die Schaltfläche Aktualisieren klickt und zum Versandschritt zurückkehrt.
- Die Anwendung zeigt jetzt eine informative Fehlermeldung an und aktualisiert die Produktmenge nicht, wenn ein Einkäufer eine ungültige Produktmenge hinzufügt und auf die Schaltfläche Artikel und Mengen aktualisieren auf der Seite Warenkorb verwalten klickt. Zuvor hat die Anwendung die Produktmenge aktualisiert und keine Fehlermeldung angezeigt. GitHub-459
- Produkte mit einer anpassbaren Option
(File)
jetzt wie erwartet aktive Links während des Multi-Shipping-Checkout-Prozesses enthalten. Zuvor fehlte dieser Link. GitHub-31095
- Der Admin-Warenkorb zeigt jetzt die Produktpreise in den richtigen Währungen für Geschäfte an, die mehrere Währungen unterstützen. Zuvor wurden die Preise mehr als einmal in die angegebene Währung umgerechnet - zunächst, wenn Produkte aus der Storefront zum Warenkorb hinzugefügt wurden, und dann erneut, wenn die Bestellung anschließend auf dem Admin gerendert wurde.
- Die Anwendung leert jetzt den Warenkorb wie erwartet, nachdem ein Administrator eine Bestellung vom Administrator bzw. der Administratorin ausgeführt hat, die von einem Einkäufer bzw. einer Einkäuferin in der Storefront erstellt wurde. Wenn sich der Kunde bisher wieder anmeldete, nachdem der Administrator die Bestellung abgeschlossen hatte, war der Inhalt des Warenkorbs der Storefront weiterhin enthalten. GitHub-30262
- Käufer können jetzt ein Produkt in ihren Warenkorb legen, dessen Mindest-Werbepreis (MAP) den regulären Produktpreis überschreitet.
- 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 Anzahl 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 mithilfe von 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 hat die Anwendung das Element nicht zur Liste hinzugefügt, da der Wert vor dem Einfügen in\Magento\Catalog\Model\Product\Type\AbstractType::_prepareOptions
nicht korrekt formatiert war.
- Die Anwendung fordert die Käufer nicht mehr auf, eine Produktoption für ein gebündeltes Produkt auszuwählen, das nur eine Option hat.
- Das Programm zeigt jetzt alle Unterkategorien in Layout-Aktualisierungen (Anker- und Nicht-Anker-Kategorien) während der Erstellung eines neuen Widgets an.
- Die
product
-Abfrage überschreibt nicht mehr die Standardwerte für alle Store-Ansichten in einer Multi-Store-Bereitstellung, wenn ein Produktname nur für eine Store-Ansicht aktualisiert wird. GitHub-31083
- Adobe Commerce aktualisiert die erwartete Gesamtseitenanzahl, wenn Sie den Wert pro Seite der Liste Admin-bezogene Produkte, Up-Sells und Crosssell ändern. GitHub-31059
- Administratoren können jetzt Produkte mit zwei oder mehr anpassbaren Optionen
(File)
einer Bestellung nach SKU hinzufügen.
- Die Anwendung gibt keinen Fehler mehr aus, wenn ein Admin mit eingeschränkten Berechtigungen im Admin-Bereich ein Produkt-Widget zu einer CMS-Seite hinzufügt. Zuvor gab es diesen Fehler, als der Administrator auf die Schaltfläche Speichern klickte:
We are sorry, an error has occurred while generating the content
.
- Produktdetailseiten werden jetzt geöffnet, wobei die anpassbare Datumsoption mit dem Datum aus der vorherigen Bestellung ausgefüllt wird, wenn JavaScript-Kalender verwenden aktiviert ist. Der benutzerdefinierte Datumsoptionen-Werteauflöser greift jetzt auf ein alternatives Format zurück, wenn der Wert nicht basierend auf der aktuellen Konfiguration formatiert ist. Zuvor war der Wert der benutzerdefinierten Datumsoption leer.
- Die Anwendung 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
SKU-Wert erstellen. Zuvor konnten Sie ein Produkt ohne SKU-Wert über ein benutzerdefiniertes Import-Tool oder direkt in der Datenbank erstellen, aber als Sie versuchten, es über die Admin zu bearbeiten, gab die Anwendung einen Fehler aus. GitHub-27411, GitHub-32525
- Wenn Sie einem einfachen Produkt die erforderlichen benutzerdefinierten Optionen hinzufügen, wird es nicht mehr ohne Warnung aus den übergeordneten zusammengesetzten Produkten entfernt. Die Anwendung zeigt jetzt eine informative Warnung an und speichert das Produkt nicht. Zuvor wurden die Produktänderungen in den Anwendungen gespeichert und es wurde keine Warnung angezeigt. GitHub-30492
Katalogregel
- 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.
- Fehlerkorrektur - Die Fehlerbehandlung für den CMS-Seitenspeichercontroller funktioniert jetzt. 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 durch Hinzufügen einer Fehlermeldung mithilfe deraddErrorMessage
behoben. 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 Anwendung dupliziert keine Produktminiaturen mehr in der Bildergalerie eines Produkts, wenn Sie auf die konfigurierbaren Optionen eines Produkts klicken.
- Das Konfigurations-Popup, das die Anwendung beim Bearbeiten eines konfigurierbaren Produkts aus einer Wunschliste anzeigt, wird jetzt wie erwartet geschlossen, wenn Sie auf die Schaltfläche OK 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. Zuvor hat die Anwendung folgenden Fehler angezeigt:
Could not add item to cart. Please check required options and try again
, wenn ein Käufer in einer nicht standardmäßigen Store-Ansicht versuchte, ein konfigurierbares Produkt hinzuzufügen. GitHub-31660
Content Security Policy (CSP)
- Die Inhaltssicherheitsrichtlinie unterstützt jetzt das Laden von base64-kodierten Bildern und Schriftarten durch
data: scheme
.
Cron
- Cron-Bereinigungsabfragen wurden überarbeitet, um die folgenden Leistungsprobleme zu reduzieren oder zu beseitigen:
cron
Aufträge bleiben in einem ausstehenden Zustand stecken, die MySQL-Abfragen werden zunehmend langsamer und die CPU-Nutzung steigt. 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.
- Das Filtern nach dem Erstellungsdatum des Kontos liefert jetzt Ergebnisse, 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 hat der Kundenrasterfilter Website-Parameter aus dem Cache abgerufen und falsche Daten für eingeschränkte Benutzer eingefügt.
- 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 Anwendung sendet jetzt E-Mails wie erwartet in Bereitstellungen mit mehreren Websites, in denen nicht alle Websites das asynchrone Senden von E-Mails aktiviert haben. Wenn diese Einstellung zuvor auf mindestens einer Website deaktiviert war, wurde von keiner Website eine E-Mail gesendet, selbst 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
- PDF und Rechnungsrechnungen 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
Frameworks
- Ü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äß. Tabellen werden jetzt korrekt erstellt und mit Daten ausgefüllt. Da die Prüfung auf Tabellenexistenz falsch war, hat die Anwendung beim Ausführen vonbin/magento setup:db-schema:split-sales
zuvorSQLSTATE
Fehler ausgegeben.
- Die Ausnahmebehandlung für untergeordnete Prozesse, die von
ProcessManager
unterbrochen werden, 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 Commerce-Plug-ins (z. B.
webapi_rest
undgraphql
) werden für einen neuen benutzerdefinierten Bereichstyp nicht mehr ausgelöst, wenn diedi.xml
dieser Bereichsdatei keine registrierten Plug-ins enthält.
- Ausnahmen, die während der Initialisierung auftreten, werden nicht mehr zwischengespeichert und führen jetzt Trigger für einen 500-Antwort-Code aus.
- Händler können jetzt ein Bild einem Katalogereignis über die Store-Ansicht zuweisen oder daraus löschen. Wenn Sie zuvor die Store-Ansicht beim Bearbeiten eines Katalogereignisses geändert haben, war das Kontrollkästchen Bild löschen nicht aktiv, und die Anwendung hat diesen Fehler angezeigt:
Uncaught ReferenceError: toggleValueElements is not defined at HTMLInputElement.onclick
. GitHub-364
- Der letzte in einer
communication.xml
zusammengeführte Handler überschreibt nicht mehr alle zuvor erstellten Handler. GitHub-29528
Allgemeine Fehlerbehebungen
- Die Anwendung zeigt jetzt die richtige Anzahl von Sternen auf der Seite „Meine Produktbewertungen“ und auf der Seite „Letzte Überprüfungen“ von MyAccount 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
- Das Ändern der Bildgröße wird bei Bildern im nicht unterstützten Format nicht mehr angehalten. Zuvor wurde der Prozess gestoppt, als
catalog:images:resize
auf ein nicht unterstütztes Bildformat stieß, und die Anwendung zeigte folgenden Fehler an:bin/magento catalog:images:resize Unsupported image format
.
- Die Unterstützung von WEBP und AVIF für Logo-Bilder wurde dem Administrator hinzugefügt. GitHub-32495
- Sie können den Umfang des
media_gallery
-Attributs nicht mehr ändern. Wenn Sie den Umfang desmedia_gallery
-Attributs zuvor wieder inglobal
geändert haben, hat die Anwendung einen Fehler ausgegeben.
- Verwandte Produkte, die als geplante Aktualisierung hinzugefügt wurden, werden nach dem Enddatum der Aktualisierung nicht mehr auf einer Storefront-Produktseite angezeigt. GitHub-469
- Die Anwendung zeigt jetzt eine genaue, informative Nachricht an, wenn Sie auf Elemente verwalten auf der Seite „My Account Gift Registry“ klicken und Registrierungsprodukte nicht vorrätig sind. Zuvor gab die Anwendung den folgenden 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.
- Die Validierung für URLs wurde hinzugefügt, um zu verhindern, dass reservierte Wörter in URL-Schlüssel aufgenommen werden. Siehe Definieren bekannter URIs (Uniform Resource Identifiers)
- Bei Bereitstellungen mit PHP 7.4 gibt die Anwendung jetzt einen 404-Fehler zurück, wenn die Einstellung Generate „category/product“ URL Rewrites auf No gesetzt ist und ein Käufer versucht, auf einen nicht vorhandenen Kategoriepfad zuzugreifen. Zuvor gab die Anwendung einen 500-Fehler zurück, der wie folgt lautet:
Trying to access array offset on value of type bool
. GitHub-31984
- Sie können jetzt ein Produkt erfolgreich bearbeiten, das mit einem Attributsatz erstellt wurde, aus dem Designgruppe und Zeitplan für Design Update-Gruppen 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. Zuvor konnte ein Administrator eine Karte mit einem Mindestwert erstellen, der den Höchstwert überschritt. 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 Geschenkpapier-Etiketten für Store-Ansichten funktioniert jetzt erwartungsgemäß.
- Das Geschenkverpacken wird jetzt wie erwartet auf Bestellungen angewendet, die an mehrere Adressen gesendet werden.
- Die Anwendung entfernt jetzt die Kosten für die Geschenkverpackung aus dem Warenkorb, wenn alle Produkte entfernt wurden.
- Die Summen der Gutschriften sind jetzt korrekt, wenn die Gutschrift Geschenkpapier und konfigurierbare Produktkosten enthält. Zuvor war der Betrag der Geschenkverpackungssteuer nicht immer in der Summe der Gutschriften enthalten. GitHub-34
Google Analytics
- Die Anwendung 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 die neuefixed_product_taxes
GraphQL , die ein Array der festen Produktsteuern zurückgibt, die auf ein Warenkorbelement angewendet werden. Zuvor wurden feste Produktsteuern, die auf einen Warenkorbartikel angewendet wurden, nicht in die Warenkorbabfrage einbezogen.
- Leere Anfragen an GraphQL geben jetzt den Antwort-Code 200 anstelle von 500 aus. Zuvor hat der GraphQL-Parser eine Ausnahme ausgelöst, bevor das Abfrageergebnis 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
products
-Abfrageantwort sortiert Aggregationen jetzt nach der Position der Produktattribute.
- 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 Anfrage zur POST
V1/products/special-price-delete
löscht jetzt nur den Preis mit einem angegebenenstore_id
erwartungsgemäß. 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 erwartungsgemäß automatisch aktualisiert, wenn der Status des untergeordneten Produktbestands durch den Import aktualisiert wird. Zuvor wurde der Produktbestandsstatus nicht automatisch aktualisiert, wenn der Lagerstatus untergeordneter Produkte durch den Import aktualisiert wurde.
- Sie können jetzt leere Werte in einem geplanten Export speichern. Zuvor hat die Anwendung leere Filterwerte nach der Exporterstellung oder dem Speichern aktualisiert. 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 jetzt den Umfang der Benutzerrolle beim Exportieren von Produkten, Lagerquellen und Kundenentitäten. Zuvor ignorierte der Exportprozess den Benutzerrollenbereich, der den Export von Entitäten mit privaten Benutzerrollen ermöglichte.
- Die Anwendung legt jetzt die Produktsteuerklasse auf
None
fest, wenn ein Produkt mittax_class_name
WertenNone
oder0
importiert wird. Wennproduct tax_class_name
zuvor in der CSV-DateiNone
wurde, hat das Programm eine neue SteuerklasseNone
erstellt, die die vorhandene Steuerklasse dupliziert hat. Wennproduct tax_class_name
in der CSV-Datei0
wurden, ignorierte die Anwendung diesen Wert, und die Produktsteuerklasse änderte sich nach dem Import nicht.
- Admins können jetzt die
name
derbundle_values
eines Produktpakets erfolgreich über den Admin ändern. Zuvor hatte das Programm das Produkt als nicht vorrätig in der Storefront angezeigt, nachdem Sie den Namen von der Administratorin bzw. dem Administrator geändert hatten. Produkte wurden auch mit derselben SKU zu einem einzigen Abschnitt mit Bundle-Optionen zusammengeführt.
- Die Anwendung berücksichtigt jetzt den Benutzerbereich beim Exportieren von Kundendaten. Wenn Sie zuvor versucht haben, Kunden zu exportieren, hat die Anwendung Kundendaten aus allen Websites exportiert.
- Die Anwendung entfernt jetzt während des CSV-Dateiimports Produktbeziehungen zwischen Upsell, Crosssell und zugehörigen Produkten wie erwartet, wenn
__EMPTY__VALUE__
in der CSV-Datei angegeben ist.
- Der Export 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-Inhalten als zusätzliche Produktattribute werden jetzt 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. Process Manager wurde zuvor immer erfolgreich beendet, wenn die Anzahl der an den Prozess übergebenen Funktionen (z. B. Indexerdimensionen) kleiner war als der Wert der
MAGE_INDEXER_THREADS_COUNT
Umgebungsvariablen. GitHub-30964
- Produkte sind jetzt wie erwartet in den Suchergebnissen der Storefront verfügbar, wenn Produkte über eine REST-PUT verknüpft werden
/V1/products/:sku/links
eine -Anfrage gesendet wird, wenn der Indexermodus auf "beim Speichern“ 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
- Die
pelago/emogrifier
wurde von Version 3.1.0 auf 5.0.0 aktualisiert. Diese Aktualisierung führte zur Einführung von abwärtsinkompatiblen Änderungen an derMagento\Email\Model\Template\Filter
. Der geänderte Code wird beim Rendern der E-Mail-Vorlagen ausgeführt. Siehe BIC-.
- Es wurde ein Problem mit
\Magento\CatalogInventory\Model\Indexer\Stock\CacheCleaner::getCategoryIdsByProductIds
behoben, 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 Datei README.md für das Modul Google Analytics wurde aktualisiert. GitHub-32616
- Process Manager verarbeitet Ausnahmen jetzt ordnungsgemäß in verzweigten Prozessen. Der Hauptprozess ist jetzt beendet, und die Anwendung zeigt jetzt nur noch einmal eine Fehlermeldung an. Außerdem werden die Ausnahmen aus den verzweigten Prozessen jetzt verarbeitet, wenn sie im Hauptprozess ausgelöst werden. Zuvor protokollierte die Anwendung mehrere Indexerfehler und zeigte mehrere Fehlermeldungen an. GitHub-30622
- Die Anwendung gibt keinen Fehler mehr aus, wenn ein Plug-in zu einer übergeordneten Klasse hinzugefügt wird. (Der
optionsProvider
Parameter wird jetzt nach dergetContentIdentities
inAssest.php
deklariert.) Zuvor gab die Anwendung folgenden Fehler aus:Error: Cannot instantiate interface Magento\Framework\Data\OptionSourceInterface
. GitHub-31291
- Die Ausführung von
Magento\Framework\Filesystem\Io\Ftp::ls()
auf einem leeren Ordner gibt jetzt erwartungsgemäß ein leeres -Array zurück. Zuvor gab die Anwendung diese Ausnahme aus:Invalid argument supplied for foreach() in vendor/magento/framework/Filesystem/Io/Ftp.php…
. GitHub-31288
- Die
update
Methode für sowohl Rollen als auch Regeln 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 eine falsche Verkettung anvalue
,domain
und andere Parameter angehängt. GitHub-26377, GitHub-32440
- In der gesamten Code-Basis wurde
allure-framework/allure-phpunit
auf Version 1.3.1 aktualisiert. Zuvor hat die Anwendung diesen 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 Anwendung zeigt jetzt informativere Fehler an, wenn bei der Ausführung von
bin/magento
-Befehlen im Produktionsmodus Fehler auftreten. Zuvor hat die Anwendung entweder keine Fehlermeldungen angezeigt oder Meldungen angezeigt, bei 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 bisher jedes Cookie als separater Kontext protokolliert wurde, protokollierte die Anwendung, wenn die Anzahl der Cookies 50 überschritt, diese Nachricht:Unable to send the cookie. Maximum number of cookies would be exceeded
. GitHub-31334
Rechnung
- Beim Erstellen neuer Rechnungen in Admin funktioniert das Kontrollkästchen E-Mail-Kopie von jetzt erwartungsgemäß. Zuvor wurde das Kontrollkästchen ignoriert, wenn die globale Einstellung zum Senden von Rechnungs-E-Mails in Verkaufs-E-Mails aktiviert war. Sie ist jetzt konsistent und funktioniert auf die gleiche Weise wie die Seiten zur Erstellung von Sendungen und Gutschriften. GitHub-28511
Mediensammlung
bin/magento media-gallery:sync
schlägt jetzt beim Verarbeiten von PNG-Bildern ohne XMP-Informationen wie erwartet fehl.
- Einträge in der
catalog_product_entity_media_gallery
-Tabelle werden erwartungsgemäß 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 Tests hinzugefügt, um Testfehler zu vermeiden. GitHub-31251
- Tests wurden mit
StorefrontCheckQuickSearchStringActionGroup
undStorefrontAssertProductNameOnProductMainPageActionGroup
(bestehende 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
Neue 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 Verkaufs-E-Mail vom Administrator oder von der REST-API ausgelöst wurde, versuchten URLs für Assets, sie aus dem falschen Bereich zu laden (webapi_rest
oderadminhtml
).
- Die Anwendung sendet jetzt den Link für ein herunterladbares Produkt an die E-Mail-Adresse, die beim Checkout angegeben wird. Zuvor, wenn ein Gastkäufer PayPal Express Checkout verwendet und verschiedene E-Mail-Adressen eingegeben hat, um die Bestellung einzureichen und auszuchecken, hat die Anwendung den herunterladbaren Produkt-Link an die erste Adresse gesendet.
- Die Anwendung zeigt jetzt auf der Seite „Zahlungsmethode“ in Bereitstellungen, die mehrere Währungen unterstützen, einen genauen Wert für die verfügbare Speichergutschrift an.
- 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. Zuvor wurde durch die Änderung der Rechnungsadresse keine Aktualisierung der möglichen Zahlungsmethoden Trigger.
PayPal
- Käufer können jetzt erfolgreich eine PayPal Payflow Pro Bestellung mit einer Versandadresse auschecken, die Sonderzeichen enthält. Zuvor hatte der Antrag die Zahlung für diese Bestellungen abgelehnt.
- Käufer werden jetzt nach erfolgreicher Zahlung mit PayPal zurück zur Seite „Bestellerfolg“ geleitet. Zuvor wurden Käuferinnen und Käufer auf eine leere Seite umgeleitet, da Sitzungsdaten verloren gingen.
Leistung
- Die Leistung der Admin-SKU-Suche in großen Katalogen wurde verbessert. Hinweise zur Abfrageoptimierung erzwingen jetzt die Indexverwendung während der Ausführung der Abfrage.
- Die Leistung des
catalog_product_alert
cron
bei der Ausführung in großen Tabellen (mehrere Millionen Zeilen) wurde verbessert. Zuvor wurdencatalog_product_alert
alle Produktwarnungen geladen, was zu einer Ausnahme wegen unzureichendem Arbeitsspeicher führte.
- Das Programm lädt nicht mehr alle CMS-Seiten, wenn nur eine Bearbeitungsseite zum Rendern eines Admin-Formulars benötigt wird. 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 Stufenpreis wird jetzt erwartungsgemäß auf ein Produkt angewendet, wenn Mengeninkremente aktiviert sind und der Dezimalbestand weniger als 1 beträgt. Zuvor wurde die Mindestpreismenge auf 1 festgelegt.
Produktvideo
- Sie können jetzt die Schaltfläche Video hinzufügen (Admin Katalog > Produkte) verwenden, um mehrere Videos nacheinander hinzuzufügen. Zuvor wurden in den Videofeldern die Details des vorherigen Videos beibehalten.
- Der Vollbildmodus für ein Produktvideo auf einer Produktseite funktioniert jetzt auf Mobilgeräten wie erwartet. 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.
- Bonuspunkte für Produktbewertungen sind jetzt mit der entsprechenden Website verknüpft, wenn mehrere Überprüfungen vom Raster Admin Marketing > Ausstehende genehmigt wurden. Zuvor wurden Belohnungspunkte nicht auf der Storefront angezeigt und waren nicht mit der entsprechenden Website im Admin verknüpft.
- Die Anwendung aktualisiert jetzt die Liste der Zahlungsmethoden, wenn ein Käufer, der mit mehreren Adressen auscheckt, die Option Gutschrift speichern (Belohnungspunkte) oder deaktiviert.
Verkauf
- Admin-Benutzer können jetzt Bestellungen für nicht vorrätige Artikel aufgeben, wenn die Einstellung Nachbestellungen sind zulässig aktiviert ist (Stores > Configuration > Catalog > Inventory > Product Stock Options). Zuvor gab die Anwendung einen Fehler aus.
- Käufer können jetzt eine Bestellung auf der Seite Bestellungen und Rückgaben finden, wenn der Nachname mit einem Leerzeichen endet.
- Rechnungen werden jetzt mit der richtigen Gesamtsumme erstellt, wenn eine Warenkorbpreisregel, die einen Rabatt von 100 % zuweist, auf eine Bestellung angewendet wird, die auch der Produkt- und Rabattsteuer für den Katalog unterliegt und für den kostenlosen Versand qualifiziert ist. Zuvor hatte die Bestellung den richtigen Preis, aber die Rechnung nicht. GitHub-30853
- Das Filtern der Bestellungen nach Datum liefert jetzt genaue Ergebnisse. Zuvor gab die Anwendung keine Bestellung zurück, die nach 00:00 UTC aufgegeben wurde, als Sie die Bestellungen nach Bestelldatum gefiltert haben.
- Das Raster für Gutschriften zeigt jetzt das richtige Währungssymbol an, wenn Website-Bereich für ein Preis-Attribut in einer Multi-Store-Bereitstellung verwendet wird.
- Die Optionsfelder für Zahlungsmethoden verschwinden nicht mehr im Abschnitt „Zahlungs- und Versandinformationen“ des Checkout-Workflows, nachdem die Seite „Admin - Neue Bestellung erstellen“ neu geladen wurde. GitHub-32106
- Arabischer Text wird jetzt in Rechnungen korrekt angezeigt.
- Die Anwendung berechnet jetzt die Steuersummen für teilweise Gutschriften für Gutschriften, die entweder auf einer Bestellung oder einer Rechnung in Geschäften basieren, die PayPal Payment Pro als Zahlungs-Gateway verwenden, korrekt. Zuvor wurde bei Bestellungen mit mehreren Rechnungen die gesamte Steuer dieses Auftrags für die teilweise Stornierung der Rechnung in der Gutschrift angewendet.
- Die Anwendung erzeugt keine zufälligen Datenbank-Deadlocks mehr beim Senden neuer Bestell-E-Mails an Kunden. Zuvor traten Deadlocks auf, weil die Anwendung das gesamte Objekt und die 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 hat die Anwendung eine E-Mail an Kunde und Rechnung per E-Mail senden an gesendet. GitHub-28511
- Die Anwendung erstellt beim Erstellen einer neuen Bestellung vom Administrator für einen bestehenden Kunden keine doppelten Adresseinträge mehr für ein Kundenkonto. Das Im Adressbuch speichern wurde in „Zum hinzufügen“ und ist jetzt standardmäßig in „Admin“ deaktiviert.
- Die Anwendung verwendet jetzt das Logo, das in den Einstellungen Logo für HTML-Druckansicht hochgeladen wurde, wenn Käufer eine Bestellung über ihr Konto drucken. Zuvor wurde in der Anwendung das LUMA-Logo anstelle des hochgeladenen Logos angezeigt.
- Der Pager der Bestellelemente in der Storefront funktioniert jetzt erwartungsgemäß, wenn die Anzahl der Elemente 20 überschreitet. Zuvor berücksichtigte der Pager untergeordnete Produkte und die Gesamtzahl 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 Anwendung wendet jetzt Warenkorbpreisregeln mit den Bedingungen Maximaler Mengenrabatt wird angewendet auf oder Rabattmengenschritt (X kaufen) korrekt an, wenn mehrere Warenkorbpreisregeln auf den Warenkorb angewendet werden. Wenn zuvor eine Warenkorbpreisregel mit Maximaler Mengenrabatt wird auf oder Rabattmengenschritt (Kauf X) angewendet wurde, nachdem eine andere Warenkorbpreisregel angewendet wurde, wurde der Gesamtrabatt auf den Wert reduziert, der für Maximaler Mengenrabatt wird auf oder Rabattmengenschritt (Kauf X) Mal auf den Produktpreis konfiguriert wurde.
- Der Couponbericht spiegelt nun die Couponaktivität in Bereitstellungen, in denen eine Split-Datenbank implementiert ist, genau wider.
- Warenkorbpreisregeln, die die Bedingung Kategorie NICHT enthalten, werden nun wie erwartet auf konfigurierbare untergeordnete/einfache Produkte angewendet, die keiner Kategorie zugewiesen sind, deren übergeordnete Produkte jedoch zugewiesen sind.
- Die GraphQL
cart
-Abfrage gibt jetzt die richtige Gesamtsumme für den Abrechnungsschritt eines Warenkorbs zurück, wenn ein Coupon auf die Bestellung angewendet wird.
Suche 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 Schnellsuche gibt jetzt Ergebnisse zurück, wenn die Suchabfrage mehrere Wörter enthält und der Produktname so konfiguriert ist, dass er nicht durchsucht werden kann. 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 dem Elasticsearch nicht nach Katalogberechtigungen gefiltert.
- Elasticsearch gibt keinen Fehler mehr aus, wenn der Seitenparameter der Kategorie-URL 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 die dynamischen Vorlagen, die in den Standardzuordnungen an den Modulserver gesendet wurden, hartcodiert, sodass Entwicklerinnen und Entwickler keine zusätzlichen Daten, die mit einem benutzerdefinierten Elasticsearch verknüpft sind, im Elasticsearch indizieren konnten. 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.
- Versandtitel verwenden jetzt für Geschäfte, die mehrere Währungen unterstützen, wenn eine Bestellung in einer anderen Währung als der Basiswährung aufgegeben wird, die erwartete Basiswährung anstelle der Auftragswährung. GitHub-31891
- Die Anwendung zeigt jetzt die richtige Zwischensumme der Bestellung an, wenn ein Käufer während des Checkouts zur Warenkorbseite zurückkehrt, nachdem er von der Seite mit mehreren Versandvorgängen wegnavigiert ist. GitHub-31889
- Durch die Bearbeitung von Rechnungsinformationen während der Erstellung von Admin-Aufträgen werden die Versandinformationen für Kunden mit unterschiedlichen standardmäßigen Versand- und Rechnungsadressen 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 zeigte die Anwendung eine beschädigte Seite „Versandmethode auswählen“ an. GitHub-30268
- Die Produktmenge bleibt nun wie erwartet unverändert, nachdem ein Käufer die Menge auf der Seite Versand an mehrere Adressen ändert und auf die Browser-Schaltfläche Zurück klickt. GitHub-31956
- Pauschalversandkostenmethoden werden nicht mehr null, wenn beim Checkout eine Warenkorb-Preisregel angewendet wird. GitHub-21832
- Die Anwendung gibt keinen Fehler mehr aus, wenn ein Händler versucht, eine Bestellung mit DHL zu versenden, wenn das Kontrollkästchen Versandlabel erstellen aktiviert ist und der Produktname Unicode-Zeichen enthält. Zuvor hat die Anwendung diesen Fehler angezeigt, wenn die Erstellung einer Kennzeichnung angefordert wurde:
The response is in wrong format
. GitHub-31032
- Sie können erfolgreich eine Bestellung vom Administrator in einer Bereitstellung für mehrere Websites aufgeben, in der
United States
auf einer Website aktiviert undDisable all countries
als Standardbereich auf der anderen Website aktiviert ist. Zuvor hat die Anwendung die Bestellung nicht aufgegeben und den folgenden 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.
- Die Anwendung zeigt jetzt die festen Produktsteuern (FPT) wie erwartet an, wenn ein Käufer zurück zu seinem Warenkorb navigiert und zur Kasse geht, nachdem er Bundle-Produkte zum Warenkorb hinzugefügt hat. 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 ein Test hinzugefügt: Admin-Benutzer können ein Kundenkonto bearbeiten, wenn ein Kunde einen Newsletter in der Warteschlange abonniert hat. GitHub-30645
- Der Befehl
cache:flush
wurde aus den Tests entfernt, um die Ausführungszeit für dieCatalog
-,CatalogUrlRewrite
- undLoginAsCustomer
zu verbessern. GitHub-31056
- Redundante Parameter wurden entfernt und die POST wurde bei Bedarf in
\Magento\Logging\Model\ProcessorTest::testLoggingProcessorLogsActionShipping
in GET geändert.
Design
- Die Kundenanmeldeseite zeigt diese Meldung nicht mehr an, wenn sowohl die Einstellung JS-Code zum Seitenende verschieben (Store > Configurations > Advance > Developer > JavaScript Settings) als auch Cookies aktiviert sind:
The store will not work correctly in the case when cookies are disabled
.
- Account-Links in Headern folgen jetzt WCAG-Standards. Zuvor enthielten Account-Links in Headern doppelte IDs, wodurch die WCAG-Validierung fehlschlug.
- Die Anwendung hat jetzt die Speicherkonfiguration für ein Store-Logo-Bild gegenüber der Layout-Konfiguration Vorrang. Zuvor war die Größe der Logo-Bilder festgelegt und variierte nicht nach Geschäft.
- Das Programm zeigt Seitenelemente nun konsistent auf Storefront-Seiten an, die standardmäßige Adobe Commerce-Designs verwenden. Zuvor wurden nicht alle Stile in leerem Design angewendet, sodass nicht alle Seitenelemente in Seiten angezeigt wurden, die dieses Design verwenden. (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
- Textzeichenfolgen in der Vorlage, die zur Verwaltung gespeicherter Zahlungsmethoden verwendet werden (Mein Konto > Gespeicherte Zahlungsmethoden ), können jetzt übersetzt werden. GitHub-31211
- E-Mails für Bestellungen, die vom Administrator gesendet werden, verwenden jetzt das Store-Gebietsschema und nicht das Gebietsschema, das mit dem Konto des Administrators verknüpft ist. GitHub-26521
Benutzeroberfläche
- Die Admin-Fußzeile zeigt jetzt die richtige Produktversion an.
- Die Paginierung für Quellen ist jetzt bei der Erstellung der Admin-Sendung wie erwartet vorhanden.
- Der Produktrasterfilter funktioniert jetzt ordnungsgemäß, wenn Sie benutzerdefinierte Datumsattribute zum Filtern von Produkten verwenden und das Gebietsschema des Admin-Benutzers
en_GB
ist.
- Pinch-to-Zoom-Gesten funktionieren jetzt wie erwartet in der Bildergalerie auf iOS-Geräten.
- Die Paginierung der Admin-Produktraster-Suchergebnisse beginnt jetzt für jede Suche auf Seite 1 wie erwartet.
- Anomalien bei der Anzeige des Warenkorbs beim Vergrößern wurden behoben. Zuvor überlagerten sich beim Zoomen dieser Seite Anzeigeelemente.
- Ausrichtungsprobleme mit den Registerkarten auf der Admin-Einladungsseite (Admin Marketing > Privater Vertrieb > 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.
- Die Anwendung zeigt jetzt einen korrekten Zeitwert an, wenn die Option
datetime
-timeOnly
auf "". GitHub-23157
- Sie können jetzt eine Layout-Aktualisierung entfernen, nachdem Sie ein neues Widget unter Admin Inhalt > Widgets erstellt haben. GitHub-29936
- Die Schaltfläche Layout-Aktualisierung entfernen funktioniert jetzt für jedes Layout, das Sie über Admin Inhalt > Widgets hinzugefügt haben, erwartungsgemäß. Zuvor funktionierte diese Schaltfläche bei keinem anderen Layout als dem zuerst ausgewählten, wenn mehrere Layouts hinzugefügt wurden. 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 Anwendung zeigt jetzt einen
DateRange
Filter im Bereich Angemeldet auf der Seite Kunde > Anmelden 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 von HTML aktiviert war, nicht ordnungsgemäß gerendert. Die Anwendung zeigte diesen Fehler an:
An error has happened during application run. See exception log for details
. GitHub-32454
- Das
dropdownDialog
-Widget lädt jetzt nur die verschiebbaren und in der Größe veränderbarenjquery-ui
, die es benötigt. Zuvor wurden große Mengen unnötigen Codes geladen, was die Ladezeit in die Höhe trieb und die Leistung reduzierte. 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.
- Das Programm generiert nun den URL-Pfad für untergeordnete Kategorien korrekt, wenn das Kontrollkästchen Standardwert verwenden für den URL-Schlüssel für die übergeordnete Kategorie aktiviert ist. Zuvor führte das Verschieben einer Kategorie in der Hierarchie zu einem falschen
url_path
bei Verwendung verschiedener URL-Schlüssel in einer Bereitstellung mit mehreren Stores. GitHub-16202
- Das Programm aktualisiert jetzt den
url_path
der Kategorie, die allen Speicherbereichen zugewiesen ist, wenn Sie eine Kategorie in die Kategoriehierarchie verschieben. Zuvor führte das Verschieben einer Kategorie in der Hierarchie zu einer falschenurl_path
.
- URL-Umleitungen, die vom Administrator mithilfe einer benutzerdefinierten URL erstellt wurden, funktionieren jetzt erfolgreich. Zuvor hat GraphQL die Antwort aus einer GraphQL-
urlResolver
zwischengespeichert und den alten Wert nach der Aktualisierung der URL-Neuschreibung 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 Adressen-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 „Produkte hinzufügen“.
Problem: Die GraphQL-category
- und -categoryList
ignorieren Kategorieberechtigungen, die bestimmen, ob Kategorien in einem freigegebenen Katalog ausgeblendet oder offen gelegt werden. Die Storefront zeigt derzeit alle Kategorien an, die dem freigegebenen Katalog zugewiesen oder dessen Zuweisung aufgehoben wurde. Dies betrifft Adobe Commerce 2.4.3-Bereitstellungen, die eine PWA-Storefront implementieren, für die B2B-Freigabekataloge aktiviert wurden.
Gemeinschaftsbeiträge
Wir danken der weiteren Magento Open Source-Community und möchten ihre Beiträge zu dieser Version würdigen.
Das Community-Engineering-Team Magento-Mitwirkende führt eine Liste der wichtigsten Mitwirkenden und Partner nach Monat, Quartal und Jahr. Auf dieser Seite Mitwirkende können Sie Links zu ihren zusammengeführten PRs auf GitHub folgen.
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 auf 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 Sie bestehende Magento 1.x-Speichererweiterungen und -anpassungen auf Magento 2.x übertragen. Die Befehlszeilenschnittstelle enthält Skripte zum Konvertieren von Magento 1.x-Modulen und -Layouts.