Versionshinweise zu Magento Open Source 2.4.7
Mit Magento Open Source 2.4.7 wird PHP 8.3 unterstützt. Es umfasst Hunderte von Qualitätskorrekturen und Verbesserungen. Abhängigkeiten von Core Composer und Bibliotheken von Drittanbietern wurden auf die neuesten verfügbaren Versionen aktualisiert. Diese Version erhöht die GraphQL-Abdeckung für benutzerdefinierte Attribute und GraphQL-Resolver-Caches. Außerdem werden die kürzlich aktualisierten FedEx- und UPS-Dienste unterstützt.
Andere Versionsinformationen
Obwohl der Code für diese Features mit Versionen des Magento Open Source Kerncodes gebündelt ist, werden einige dieser Projekte auch unabhängig voneinander veröffentlicht. Fehlerbehebungen für diese Projekte sind in den separaten, projektspezifischen Versionsinformationen dokumentiert, die in der Dokumentation für jedes Projekt verfügbar sind.
Magento Open Source 2.4.7 – Highlights
Look für die folgenden Highlights in dieser Version.
Verbesserungen bei der Sicherheit
Diese Version enthält die gleichen Sicherheitskorrekturen und Verbesserungen der Plattformsicherheit, die in Adobe Systems Commerce 2.4.6-p5, 2.4.5-p7 und 2.4.4-p8 enthalten sind. Die aktuelle Diskussion zu diesen behobenen Problemen finden Sie Adobe Systems Sicherheitsbulletin .
Bisher wurden keine bestätigten Angriffe im Zusammenhang mit diesen Problemen durchgeführt. Bestimmte Schwachstellen können jedoch potenziell ausgenutzt werden, um auf Kundeninformationen zuzugreifen oder Administratorsitzungen zu übernehmen. Die meisten dieser Probleme erfordern, dass ein Angreifer zunächst Zugriff auf den Administrator erhält. Daher erinnern wir Sie daran, alle notwendigen Schritte zu unternehmen, um Ihren Administrator zu schützen, einschließlich, aber nicht beschränkt auf diese Bemühungen:
- IP-Zulassungen
- Zwei-Faktor-Authentifizierung
- VPN-Nutzung
- Verwendung eines eindeutigen Speicherorts anstelle von
/admin
- Gute Passworthygiene
Zusätzliche Sicherheitsverbesserungen
Die Sicherheitsverbesserungen für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.
-
Änderungen am Verhalten nicht generierter Cache-Schlüssel:
- Nicht generierte Cache-Schlüssel für -Blöcke enthalten jetzt Präfixe, die sich von Präfixen für automatisch generierte Schlüssel unterscheiden. (Nicht generierte Cache-Schlüssel sind Schlüssel, die über die Vorlagenanweisungssyntax oder die
setCacheKey
- odersetData
festgelegt werden.) - Nicht generierte Cache-Schlüssel für -Blöcke dürfen jetzt nur noch Buchstaben, Ziffern, Bindestriche (-) und Unterstriche (_) enthalten.
- Nicht generierte Cache-Schlüssel für -Blöcke enthalten jetzt Präfixe, die sich von Präfixen für automatisch generierte Schlüssel unterscheiden. (Nicht generierte Cache-Schlüssel sind Schlüssel, die über die Vorlagenanweisungssyntax oder die
-
Beschränkungen für die Anzahl der automatisch generierten Couponcodes. Magento Open Source begrenzt jetzt die Anzahl der Gutscheincodes, die automatisch generiert werden. Der standardmäßige Maximalwert ist 250.000. Händler können die neue Code Quantity Limit-Konfigurationsoption (Stores > Settings:Configuration > Customers > Promotions) verwenden, um zu verhindern, dass das System mit vielen Coupons überfordert wird.
-
Optimierung des Prozesses zur standardmäßigen Admin URL Generierung. Die Generierung des Standard-Admin-URL wurde für eine erhöhte Zufälligkeit optimiert, wodurch generierte URLs weniger vorhersehbar sind.
-
Eine neue vollständige Seite-Cachekonfiguration kann dazu beitragen, die mit dem HTTP-Endpunkt
{BASE-URL}/page_cache/block/esi
verbundenen Risiken zu mindern. Dieser Endpunkt unterstützt uneingeschränkte, dynamisch geladene Inhalte-Fragmente aus Commerce-Layout-Handles und Blockstrukturen. Die neue Handles params size Konfigurationseinstellung legt den Wert des Parameters dieses Endpunktshandles
fest, der die maximal zulässige Anzahl von Handles pro API bestimmt. Der Standardwert dieser Eigenschaft ist 100. Händler können diesen Wert im Admin-Bereich ändern (Stores > Settings:Configuration > System > Full Page Cache > Handles params size). Siehe Konfigurieren des Commerce-Programms für die Verwendung von Varnish. -
Unterstützung für Subresource Integrity (SRI) wurde hinzugefügt um die PCI 4.0-Anforderungen für die Überprüfung der Skriptintegrität auf Zahlungsseiten zu erfüllen. Die Unterstützung von Subresource Integrity (SRI) bietet Integritäts-Hashes für alle JavaScript-Assets im lokalen Dateisystem. Die standardmäßige SRI-Funktion wird nur auf den Zahlungsseiten für die Bereiche Admin und Storefront implementiert. Händler können die Standardkonfiguration jedoch auf andere Seiten erweitern. Siehe Subresource-Integrität im Commerce PHP-Entwicklerhandbuch.
-
Änderungen an der Content Security Policy (CSP) - Konfigurationsaktualisierungen und -verbesserungen an den Adobe Commerce Content Security Policies (CSPs) zur Erfüllung der PCI 4.0-Anforderungen. Weitere Informationen finden Sie unter Inhaltssicherheitsrichtlinien im Commerce PHP-
-
Die standardmäßige CSP-Konfiguration für Zahlungsseiten für Commerce Admin- und Storefront-Bereiche ist jetzt
restrict
. Für alle anderen Seiten ist die Standardkonfigurationreport-only
. In Versionen vor 2.4.7 wurde CSP für alle Seiten imreport-only
konfiguriert. -
Es wurde ein Nonce-Provider hinzugefügt, der die Ausführung von Inline-Skripten in einer CSP ermöglicht. Der Nonce-Anbieter erleichtert die Erstellung eindeutiger Nonce-Zeichenfolgen für jede Anfrage. Die Zeichenfolgen werden dann an den CSP-Header angehängt.
-
Es wurden Optionen zum Konfigurieren von benutzerdefinierten URIs hinzugefügt, um CSP-Verletzungen für die Seite „Auftrag erstellen“ in der Admin- und die Checkout-Seite im Storefront zu melden. Sie können die Konfiguration über den Administrator oder durch Hinzufügen des URI zur
config.xml
-Datei hinzufügen.note note NOTE Wenn Sie die CSP-Konfiguration auf den restrict
-Modus aktualisieren, werden möglicherweise vorhandene Inline-Skripte auf den Zahlungsseiten in der Admin- und Storefront blockiert, was beim Laden einer Seite den folgenden Browser-Fehler verursacht:Refused to execute inline script because it violates the following Content Security Policy directive: "script-src
. Beheben Sie diese Fehler, indem Sie die Konfiguration der Zulassungsliste aktualisieren, um die erforderlichen Skripte zuzulassen. Siehe Fehlerbehebung im Commerce PHP-.
-
-
Native Ratenbegrenzung für Zahlungsinformationen, die über REST- und GraphQL-APIs übermittelt. Händler können jetzt Ratenbegrenzung) fürZahlungsinformationen konfigurieren, die mit REST und GraphQL übermittelt werden. Diese zusätzliche Schutzschicht unterstützt die Prävention von Kartenangriffen und verringert möglicherweise das Volumen von Kartenangriffen, die viele Kreditkartennummern gleichzeitig testen. Dies ist eine Änderung des Standardverhaltens eines vorhandenen REST-Endpunkts. Siehe Ratenbegrenzung.
-
Das Standardverhalten der GraphQL-Abfrage isEmailAvailable und des REST-Endpunkts (V1/customers/isEmailAvailable) hat sich geändert. Standardmäßig geben die APIs jetzt immer
true
zurück. Händler können das ursprüngliche Verhalten aktivieren, indem sie die Option Guest Checkout-Anmeldung aktivieren in der Admin aufyes
setzen. Dadurch können jedoch Kundeninformationen für nicht authentifizierte Benutzer verfügbar gemacht werden.
Plattformverbesserungen
Plattform-Upgrades für diese Version verbessern die Einhaltung der neuesten Best Practices für die Sicherheit.
Magento Open Source 2.4.7 umfasst die folgenden Plattformaktualisierungen:
- PHP 8.3-Kompatibilität. Diese Version führt zur Unterstützung von PHP 8.3. Magento Open Source unterstützt jetzt sowohl PHP 8.3 als auch PHP 8.2. PHP 8.2 wird bis zum Ende des Service (EOS) im Dezember 2025 unterstützt. Nach Dezember 2025 sollten alle Händler, die Bereitstellungen mit Version 2.4.7 ausführen, auf PHP 8.3 migrieren.
Magento Open Source 2.4.7 ist weiterhin nur zu Upgrade-Zwecken mit PHP 8.1 kompatibel. PHP 8.1 wird nicht unterstützt und nicht empfohlen. Magento Open Source 2.4.7-Kerncode, alle gebündelten Erweiterungen sowie alle Adobe-eigenen Erweiterungen und SaaS-Services sind mit PHP 8.3 kompatibel.
-
Unterstützung von RabbitMQ 3.13. Diese Version ist mit der neuesten Version von RabbitMQ 3.13 kompatibel. Die Kompatibilität mit RabbitMQ 3.11 und 3.12 bleibt bestehen, die bis August 2024 bzw. Dezember 2024 unterstützt werden, aber Adobe hat empfohlen, Magento Open Source 2.4.7 nur mit RabbitMQ 3.13 zu verwenden.
-
Composer 2.7.x. Die Kompatibilität mit Composer 2.2.x bleibt bestehen.
-
Unterstützung des Lackcache 7.4. Diese Version ist kompatibel mit der neuesten Version von Varnish Cache 7.4. Die Kompatibilität mit den Versionen 6.0.x und 7.2.x bleibt bestehen, wir haben jedoch empfohlen, Magento Open Source 2.4.7 nur mit Varnish Cache Version 7.4 oder Version 6.0 LTS zu verwenden.
-
Kompatibilität mit Elasticsearch 8.11
-
Unterstützung für OpenSearch 2.12 und OpenSearch 1.3
-
Redis 7.2
-
Die
extjs
-Bibliothek wurde durch die neueste Version vonjsTree
ersetzt. -
jquery/fileUpload
Bibliothek wurde entfernt.
Alle JavaScript-Bibliotheken und NPM-Abhängigkeiten im Magento Open Source-Kern-Code wurden auf die neuesten verfügbaren Versionen aktualisiert. Alle Laminas-Bibliotheksabhängigkeiten wurden auf die neueste Version aktualisiert, die mit PHP 8.3 kompatibel ist.
Zusätzliche Upgrades
-
Das Commerce UPS XML API-Gateway wurde zur neuen Commerce UPS REST API migriert, um Aktualisierungen zu unterstützen, die UPS an seinem API-Sicherheitsmodell vornimmt. (UPS implementiert ein OAuth 2.0-Sicherheitsmodell (Bearer-Token) für alle APIs.) Alle vorherigen Commerce UPS XML-APIs wurden aus der Code-Basis von Magento Open Source 2.4.7 entfernt.
-
Die Magento Open Source Integration mit FedEx wurde von den alten FedEx WSDL Web Services zu den neuesten FedEx RESTful APIs migriert. FedEx Web Services Tracking, Address Validation, and Validate Postal Codes WSDLS werden im Mai 2024 eingestellt.
-
Hinzugefügte Unterstützung für die neue USPS Ground Advantage-Versandmethode. Dies ist eine vorkonfigurierte Integration mit der neuen Versandmethode von USPS, USPS Ground Advantage, die im Juli 2023 veröffentlicht wurde. Diese neue Integration kann verwendet werden, um Versandraten abzurufen und Sendungen und Rücksendungen über den USPS-Versandservice zu planen. Die USPS Ground Advantage-Versandmethode ersetzt diese Versandmethoden, die eingestellt wurden, als die USPS Ground Advantage-Versandmethode veröffentlicht wurde:
- USPS-Verkaufsgelände
- Erstklassiger Paketdienst
- Parzelle wählen
-
Die Versandmodule von Temando wurden aus der Code-Basis von Magento Open Source entfernt. Diese Funktion ist seit Magento Open Source 2.4.4 veraltet.
Verbesserungen der Leistung und Skalierbarkeit
Magento Open Source 2.4.7 umfasst die folgenden Verbesserungen der Leistung und Skalierbarkeit von Magento Open Source:
-
Verbesserte Indexerverwaltung. Der neue
indexer:set-status
-Befehl unterstützt die dynamische Verwaltung des Indexstatus. Admin-Benutzer können diesen Befehl verwenden, um den Indexerstatus in "suspended
", "invalid
" oder "valid
" zu ändern. Diese Funktion ist besonders nützlich für die Verwaltung der Systemleistung bei umfangreichen Massenvorgängen wie Produktimporten oder -aktualisierungen, da sie die Kontrolle darüber ermöglicht, wann Indexer automatisch durch die Cron-Aufträge des Systems ausgelöst werden. Siehe Verwalten der Indexer. -
Produktlistenseite für komplexe Produkte mit vielen Optionen. Die Ladezeit wurde für Produktlistenseiten verbessert, die komplexe Produkte mit über 100 Optionen enthalten. Die Leistung von GraphQL-Anfragen zum Auflisten von Produkten nach Kategorie wurde ebenfalls verbessert.
-
Vertriebs- Regel Leistungsverbesserungen. Verbesserte Leistung von Unternehmensbereitstellungen mit vielen (ca. 100.000) aktiven Vertriebsregeln. Bei Enterprise-Bereitstellungen, die stark implementieren Promotions durchführen, werden häufig viele aktive Warenkorb Regeln bereitgestellt. Bei diesen Arten von Unternehmensbereitstellungen, in denen Magento Open Source 2.4.7 ausgeführt wird, tritt keine Leistungsbeeinträchtigung im Zusammenhang mit der Anzahl der konfigurierten Warenkorbpreisregeln während des Checkout-Vorgangs auf.
-
Schnellere Speichervorgänge von Konfigurationen auf Store-Ebene für Bereitstellungen mit vielen Stores. Das Speichern von Konfigurationseinstellungen in Bereitstellungen mit mehr als 500 Stores kann zeitaufwendig sein. Das neue Async Config-Modul ermöglicht asynchrone Konfigurationsspeichervorgänge durch Ausführen eines Cron-Vorgangs, der einen Verbraucher verwendet, um den Speichervorgang in einer Nachrichtenwarteschlange zu verarbeiten. AsyncConfig ist standardmäßig deaktiviert.
-
Schnellere Generierung des Konfigurationscaches für große Konfigurationen. Der
bin/magento cache:clean config
Befehl erwärmt jetzt den Konfigurations-Cache vorab, wenn der Konfigurations-Cache aktiviert ist. Dadurch verringert sich die Ausfallzeit, die erforderlich ist, um den Konfigurationscache für große Konfigurationen zu generieren. Konfigurationsspeichervorgänge leeren den Cacheconfig_scopes
nicht mehr, bevor Daten in den Cache geschrieben werden, wodurch auch die Zeit verkürzt wird, in der andere Anforderungen gesperrt werden, während Konfigurationsdaten geschrieben werden.
Braintree
-
Vaulted PayPalund Pay Later Änderungen: Angemeldete Kunden, die ihre PayPal zuvor im Tresor gespeichert/gespeichert haben Konto, haben die Möglichkeit, mit Folgendem zu bezahlen:
- Pay Now (Der User muss sich nicht in sein PayPal Konto einloggen, sondern kann mit seinem Standard-Karte bezahlen)
- Mit einer anderen Finanzierungsquelle bezahlen
- Mit einem anderen Konto bezahlen
- PayPal Pay Later oder PayPal Credit
-
3DS-Unterstützung fürGoogle Pay - Enthaltene Unterstützung der 3DS-Verifizierung für die Google Pay nicht-Token-Karten. Weitere Informationen finden Sie in der Dokumentation 🔗 Braintree .
-
Vault Apple Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Apple Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.
-
Vault Google Pay Payments - Erlauben Sie angemeldeten Kunden, ihre Google Pay Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.
-
Vault Venmo Payments - Angemeldeten Kunden erlauben, ihre Venmo Konten in ihrem Commerce-Speicherkonto zu tresoren/zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.
-
Vault ACH Payments - Erlauben Sie angemeldeten Kunden, ihre ACH-Zahlungen auf ihrem Commerce-Store-Konto zu tresoren bzw. zu speichern, um sie für zukünftige Transaktionen zu verwenden. Dadurch wird die Anzahl der Schritte beim Checkout reduziert und ein schnelleres Checkout-Erlebnis für den wiederkehrenden Kunden geschaffen.
-
Express PaymentSchaltflächen oben am Checkout - Um ein schnelleres Checkout-Erlebnis zu fördern, haben wir Express Payment Optionen zu Beginn des Checkouts eingeführt. Kunden können jetzt mit PayPal, PayPal Pay Later, Apple Pay und Google Pay Express bezahlen.
-
BraintreeVersionshinweise und Support-Links innerhalb der Admin-Konfiguration - Händler können jetzt direkt von Commerce Admin aus auf Braintree-Support und Versionshinweise online verlinken.
-
GraphQL-Unterstützung für alle Braintree Zahlungsmethoden mit Ausnahme vonVenmo—Weitere Konfigurationen werden in der GraphQL-API verfügbar gemacht. Dies ist besonders für Headless-Anwendungen nützlich.
-
VaultingZahlungen im Kontobereich - Angemeldete Kunden können jetzt neue Kredit-/Debitkarten tresor/) und PayPal Konten im Kundenkontobereich erstellen. Zuvor konnten Kunden ihre Zahlungen nur für eine spätere Verwendung beim Abschließen einer Transaktion an der Kasse tresoren/speichern. Jetzt können sie neue Kredit-/Debitkarten und PayPal-Konten tresoren, ohne eine neue Transaktion erstellen zu müssen.
-
Reibungslose Transaktionen - Reibungslose Transaktionen beschleunigen den Zahlungsprozess, indem sie die Anzahl der Klicks/Schritte reduzieren, die ein Kunde für eine Online-Kredit-/Debitkartentransaktion benötigt. Zuvor (als 3DS aktiviert wurde) wurde jeder Kunde mit einer 3DS-Herausforderung konfrontiert. Mit der neuen Frictionless-Transaktionsfunktion werden Kunden nur dann für 3DS herausgefordert, wenn die Bank sie anfordert. Dies reduziert Warenkorbabbrüche, erhöht Konversionsraten und führt zu mehr Umsatz.
-
Kontroll-Webhooks - Wenn ein Kunde eine Transaktion in Braintree anficht, wird der Streitstatus jetzt an Commerce weitergeleitet. Er ist im Raster Sales > Order durchsuchbar und an jede Bestellung angehängt.
GraphQL
Magento Open Source 2.4.7 enthält erweiterte GraphQL-Caching-Funktionen, GraphQL-Schema Unterstützung für benutzerdefinierte Attribute, Unterstützung für Headless-bestellen-Abbruch und verbesserte Resolver-Caching.
-
Mehr flexibles Warenkorb Management. Die
clearCart
Mutation löscht nun den Inhalt einer bestimmten Warenkorb mit einem einzigen Handgriff. Sie ersetzt dieclearCustomerCart
Mutation, die veraltet ist. -
Verbesserungen bei der Erstellung von Warenkorb Mutationen. Die
createGuestCart
-Mutation wurde hinzugefügt, um die veraltetecreateEmptyCart
-Mutation zu ersetzen. Wenn Sie zuvorcreateEmptyCart
verwendet haben, konnten Sie nicht feststellen, ob der Warenkorb für einen Gast oder einen angemeldeten Kunden war. -
Bestellartikel enthalten jetzt Produktbilder.
OrderItemInterface
stellt Produktbilder bereit, mit denen Bilder bestellten Produkten zugeordnet und effizienter geladen werden können. GitHub-32369- -
Erweiterte Unterstützung für das Resolver-Caching. Die folgenden GraphQL Abfrage-Resolver sind jetzt im GraphQL Resolver Results-Cache zwischenspeicherbar, was die Leistung verbessert, wenn Abfragen mit POST Anfragen gesendet werden:
Magento\CustomerGraphQl\Model\Resolver\Customer::resolve
Magento\CustomerGraphQl\Model\Resolver\CustomerAddress::resolve
Magento\CustomerGraphQl\Model\Resolver\IsSubscribed::resolve
Magento\CatalogGraphQl\Model\Resolver\Product\MediaGallery::resolve
-
Unterstützung für bestellen Stornierung. Die cancelOrder-Mutation ermöglicht es einem Kunden, eine bestellen abzubrechen, wobei ihre Kennung und ein Kündigungsgrund übergeben werden.
- Die Felder "Neu"
order_cancellation_enabled
undorder_cancellation_reasons.description
"Antwort" imstoreConfig
Abfrage unterstützen User initiierte bestellen Stornierungsanfragen. Weitere Informationen finden Sie unter Abfragen der bestellen Abbruchkonfiguration eines Geschäft
- Die Felder "Neu"
-
Verbesserte Unterstützung für benutzerdefinierte Attribute. Die Unterstützung benutzerdefinierter GraphQL-Attribute wurde durch die Anreicherung von API-Daten verbessert, um alle Attributtypen zu unterstützen. Die GraphQL-EAV-Attribute Schema unterstützt nun das Erweitern von Kundenattributen und Kundenadressobjekten im Admin und deren Abrufen mit GraphQL. Zu den spezifischen Verbesserungsbereichen gehören:
- Erweiterte/hinzugefügte Unterstützung benutzerdefinierter Attribute für bestimmte Bereiche wie Kunden und Kundenadressen
- Caching für benutzerdefinierte Attribute hinzugefügt
- Verbesserte Unterstützung vorhandener benutzerdefinierter Attribute für Produkte
-
Erweiterte GraphQL-Caching-Funktionen verbessern Seite Ladegeschwindigkeit. Diesen Abfragen wurde eine Caching-Funktion hinzugefügt, die die Geschwindigkeit der Seite Ladezeit für die meisten PWA Seiten verbessert:
-
Verbesserte GraphQL-Parser-Leistung. Die Leistung des GraphQL-Parsers wurde verbessert, indem die Anzahl der Aufrufe der Parser-Methode pro Anfrage reduziert wurde. Er heißt jetzt einmal. Zuvor wurde der Parser mindestens dreimal aufgerufen.
Neue Felder für vorhandene Mutationen
-
Das Feld
quickorder_active
wurde den Abfragen storeConfig und availableStores hinzugefügt. Dieses Feld gibt an, ob die Schnellbestellungsfunktion aktiviert ist. -
Die folgenden Felder wurden den
setBillingAddressOnCart
undsetShippingAddressesOnCart
Mutationen hinzugefügt:fax
middlename
prefix
suffix
Neue Abfragen und Mutationen
attributeForms
AbfrageattributesList
Abfrage- Abfrage
guestOrder
- Abfrage
guestOrderByToken
- Abfrage
recaptchaFormConfig
cancelOrder
Mutation- Abfrage
customAttributeMetadataV2
applyCouponsToCart
MutationconfirmEmail
MutationcreateGuestCart
MutationestimateShippingMethods
MutationestimateTotals
MutationremoveCouponsFromCart
Mutation
Veraltete Abfragen und Mutationen
clearCustomerCart
MutationcreateEmptyCart
Mutation- Abfrage
attributesMetadata
- Abfrage
customAttributeMetadata
Inventory management
Inventory management (v1.2.7) bietet Tools zum Verwalten des Produktbestands. Diese von der Community entwickelte Funktion ist im Paket mit Adobe Commerce und Magento Open Source-Code enthalten.
Magento Open Source-Erweiterungs-Metapaket
Diese Version enthält das Magento Open Source Extension-Metapaket v1.0.0, das ausgewählte Magento Open Source-Erweiterungen automatisch mit dieser Kernversion bündelt. Die Version dieser Erweiterung, die in diesem Metapaket enthalten ist, wird bei der Ausführung von composer update
installiert, was den Prozess der Aktualisierung der Erweiterung bei der Aktualisierung auf die neueste Hauptversion vereinfacht. Diese Erweiterung verwaltet einen unabhängigen Veröffentlichungszeitplan.
Das Magento Open Source-Erweiterungs-Metapaket für Magento Open Source 2.4.7 enthält die folgenden Erweiterungen:
Zukünftige Versionen dieses Erweiterungs-Metapakets werden zusätzliche Erweiterungen enthalten.
PWA Studio
PWA Studio v14.0 ist kompatibel mit Magento Open Source 2.4.7-beta1. Es enthält mehrere Verbesserungen zur Verbesserung der Barrierefreiheit. Informationen zu Fehlerbehebungen finden Sie unter PWA Studio-Versionen. Unter Versionskompatibilität finden Sie eine Liste der PWA Studio-Versionen und ihrer kompatiblen Magento Open Source-Kernversionen.
Web-API-Framework
Diese Version führt zwei neue REST-Endpunkte ein, die eine Problemumgehung für eine Einschränkung bei den REST-API-GET
und POST V1/products/attributes
-Endpunkten bieten. Diese Endpunkte geben denselben Wert für das is_filterable
Attribut für die Optionen und Filterable(with results)
Filterable(no results)
Optionen der Use in Layered Navigation Option zurück. (Das is_filterable
Attribut Eigenschaft ist vom Typ Boolean
, der es nicht zulässt, diese Eigenschaft auf .)Filterable(no results)
Zwei neue REST-Endpunkte wurden als Problemumgehung implementiert:
PUT /V1/products/attributes/{attributeCode}/is-filterable/{isFilterable}
. Pfadparameter:attributeCode
(String
) undisFilterable
(int
Werte sind: 0 ist Nein; 1 istFilterable (with results)
; 2 istFilterable (no results)
).GET /V1/products/attributes/{attributeCode}/is-filterable
. Pfad Parameter:attributeCode
(String
).
Fest Probleme
Wir haben Hunderte von Problemen im Kerncode von Magento Open Source 2.4.7 behoben. Ein Teil der behobenen Probleme in dieser Version wird im Folgenden beschrieben.
Installation, Aktualisierung Implementierung
- Unnötige Cache-Manipulationen wurden aus dem Einrichtungsprozess entfernt. Zuvor schrieb Magento Open Source seine Konfiguration unnötig auf die Festplatte, wenn
bin/magento setup:db-data:upgrade
sie ausgeführt wurde oderbin/magento setup:upgrade
ausgeführt wurde, was zu Problemen mit SOM-Modulen während des Setups führte. GitHub-38124
- Bereitstellungsprobleme aufgrund von unzureichendem Arbeitsspeicher und großen Tabellen wurden behoben. Der
bin/magento setup:upgrade
Befehl schlägt nicht mehr aufgrund von Fehlern fehl, die im Zusammenhang mit großen MySQL-Tabellen auftreten, wenn der Arbeitsspeicher überschritten wird.
bin/magento setup:install
wird jetzt erfolgreich abgeschlossen, nachdemapp/etc/config.php
es gelöscht wurde. Zuvor wurde die fehlende Datei während der Installation nicht neu generiert und Magento Open Source ein Fehler ausgegeben. GitHub-37805
bin/magento setup:upgrade
wurde so umgestaltet, dass es erfolgreich ausgeführt wird, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörigemview
-Indexer installiert. GitHub-37304
- Die Datenbankwiederherstellung schlägt aufgrund eines Trennzeichen-Fehlers nicht mehr fehl. Zuvor gab Magento Open Source diesen Fehler bei der Ausführung von
bin/magento setup:rollback --db
aus:Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;
.
- Der
bin/magento setup:upgrade
-Befehl schlägt mit diesem mit der Speicherbegrenzung in MySQL zusammenhängenden Fehler nicht mehr fehl:PHP Fatal error: Allowed memory size of 4294967296 bytes exhausted (tried to allocate 20480 bytes)
. Die Migration von Attributen mit mehreren Auswahlmöglichkeiten wurde optimiert, um während dersetup:upgrade
weniger Speicher zu verbrauchen.
- Das Generieren eines Datenbank-Backups funktioniert jetzt sowohl von der Admin- als auch von der Befehlszeile erwartungsgemäß. Zuvor gab Magento Open Source diesen Fehler aus:
Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'delimiter' at line 1, query was: delimiter ;;
.
- Wenn Sie
setup:config:set
ausführen, ohne den--lock-db-prefix
-Parameter anzugeben, wird der aktuelle Wert nicht mehr aus derenv.php
gelöscht.
- Die Lackkonfiguration wurde aktualisiert, um Gastbenutzer am Zugriff auf zwischengespeicherte Inhalte zu hindern, die sich auf andere Kundengruppen beziehen.
bin/magento setup:upgrade
wird jetzt erfolgreich abgeschlossen, wenn ein neues Modul installiert wird, das sowohl Tabellen als auch zugehörigemview
-Indexer installiert.
bin/magento setup:upgrade
zeigt jetzt eine informativere Fehlermeldung an, wenn ein Warteschlangenthema keinen Themennamen enthält. GitHub-34246
bin/magento setup:upgrade
zeigt jetzt eine informativere Fehlermeldung an, wenn zusammengeführte XML-Dateien ungültig werden. Die Fehlermeldung enthält jetzt den Dateinamen.
Admin-UI
- Diagramme sind jetzt erfolgreich standardmäßig auf der Dashboard deaktiviert. GitHub-38430
- Das Menü Admin Sales zeigt jetzt die Untermenüs korrekt an. Zuvor funktionierte der Spaltenumbruch nicht ordnungsgemäß und einige Untermenüs wurden nicht angezeigt. GitHub-37812
- Select Dropdown-Menüoptionen sind jetzt auf Admin-> Content Pages sichtbar, wenn mehrere Seiten im Raster ausgewählt sind. GitHub-35386
- Der Pfad wurde auf den Standardwert von
system/dashboard/enable_charts
in den Konfigurationseinstellungen korrigiert. Diagramme werden nun wie erwartet im Admin-Bereich angezeigt. GitHub-37668
- Anzeigeproblem mit Admin-Kundenrastern wurde behoben. Zuvor waren Rasterspalten nicht vollständig in der angezeigten Seite enthalten.
- Hover-Farben werden jetzt erwartungsgemäß auf die Zeilen der statischen Admin-Raster angewendet. GitHub-35358
- Der Checkout-Workflow zeigt keine Warnung mehr an, wenn ein Käufer eine Postleitzahl für Griechenland eingibt, die keine Leerzeichen enthält. GitHub-36676
- Der Link Admin-
It's time to change your password
wird jetzt erwartungsgemäß zur Seite „Administratorkennwort ändern“ weitergeleitet. GitHub-37902
- Seitentitel-Suffixe sind jetzt sowohl im
title
-Tag als auch immeta title
-Tag für Produktseiten enthalten. GitHub-37680
- Die Bedingung für den Produktbestandsstatus wird jetzt korrekt auf die Regeln für zugehörige Produkte angewendet.
- Die Login as Customer-Schaltfläche wird nun auf Mobilgeräten korrekt angezeigt.
- Adobe Commerce zeigt die Schaltfläche Admin Add new customer group nicht mehr an, wenn der angemeldete Admin-Benutzer nicht über die Berechtigung zum Hinzufügen einer neuen Kundengruppe verfügt.
- Ein Admin-Benutzer mit eingeschränkten Berechtigungen kann jetzt ein untergeordnetes Produkt speichern, dessen übergeordnetes Produkt einem anderen Bereich zugewiesen ist. Zuvor hat Commerce den Cache für ein übergeordnetes Produkt, das nicht dem Umfang zugewiesen wurde, in dem das untergeordnete Produkt geändert wurde, ungültig gemacht.
- Admin-Benutzer können jetzt erfolgreich zwischen Admin-Filteransichten wechseln, ohne dass die Ansichtsdaten beschädigt oder verloren gehen. GitHub-37529
Produkte im Paket
- Die
customerCart
-Abfrage gibt jetzt wie erwartet alle angewendeten Rabatte auf Bundle-Produkte zurück. Zuvor wurden die gesamten Rabatte, die auf ein Produktpaket angewendet wurden, als Null zurückgegeben.
- Produktdetailseiten zeigen jetzt den korrekten Preis für Bundle-Produkte an, für die ein Rabatt von 100 % angewendet wurde. Zuvor hat Magento Open Source keinen 100%igen Rabatt auf die Bundle-Produktpreise angewendet.
- Die Regeln zum Warenkorbpreis werden jetzt auf Produktpakete angewendet, anstatt auf jedes untergeordnete Produkt für Pakete mit dynamischem Preis.
- Es wurde ein Fehler korrigiert, der auftritt, wenn Sie den
POST V1/shipment
-Endpunkt verwenden, um eine Sendung mit einem Produktpaket zu erstellen. Der Endpunkt fügt jetzt erwartungsgemäß Elemente hinzu und gibt nicht mehr diesen Fehler zurück:The shipment couldn't be saved
.
- Sie können jetzt die
GET V1/shipment/
API-Route verwenden, um eine Sendung mit einem Paket Produkt zu erstellen, wenn für das Produkt die together Sendungsart festgelegt ist. Paketprodukte werden jetzt auch auf Grundlage ihrer Eigenschaft „Sendungstyp“ validiert.
- Käufer können jetzt die Menge eines Bundle-Produkts in ihrem Warenkorb bearbeiten. Zuvor verarbeitete Adobe Commerce keine Nullwerte für
ItemId
, wenn Produkte im Warenkorb der Storefront bearbeitet wurden, und zeigte einen Fehler an. GitHub-37696
- Bundle-Produkte können jetzt mithilfe von SKUs mit einem Schrägstrich (
/
) erfolgreich zu einer Admin-Bestellung hinzugefügt werden. Zuvor konnten Admin-Benutzer diese Methode nicht verwenden, um Produkte zu einer Admin-Bestellung hinzuzufügen, und Magento Open Source gab einen JavaScript-Fehler aus.
- Admin-Benutzer können jetzt Dezimalstandardwerte für neu hinzugefügte Bundle-Optionen festlegen, wenn Qty Uses Decimal für das entsprechende einfache Produkt aktiviert ist. Zuvor konnten Dezimalwerte nur für gespeicherte Auswahlen festgelegt werden.
- Optimierte Leistung zum Speichern von Bundle-Produkten mit einer großen Anzahl von Optionen
- Paketprodukte werden jetzt erfolgreich importiert, ohne SKUs in den Produktoptionen zu duplizieren. Zuvor hat Magento Open Source mehrere doppelte SKUs in den Produktoptionen erstellt, wenn Sie Bundle-Produkte mit doppelten Einträgen importiert haben.
- Der Preis des Bundles wird jetzt korrekt berechnet, wenn eines der Produkte im Bundle nicht mehr vorrätig ist. Wenn ein Produkt, das Teil des Pakets war, nicht vorrätig war, wurde es aus der Preisberechnung entfernt.
- Paketprodukte werden jetzt als nicht vorrätig angezeigt, wenn das letzte ihrer erforderlichen untergeordneten Produkte gekauft wird. Zuvor wurden Bundle-Produkte in der Storefront als vorrätig angezeigt, wenn ihre einfachen Produkte nicht vorrätig waren.
- Leistungsprobleme beim Hinzufügen von Paket Produkten mit nicht erforderlichen Optionen zur Warenkorb, die die
addBundleProductsToCart
Mutation verwenden, wurden behoben.
- Das
categoryList
Abfrage gibt nun alle Paket Optionen wie erwartet zurück, wenn die Show out-of-stock products Konfigurationseinstellung aktiviert ist. Bisher waren nicht vorrätige Optionen in der Antwort auf die Abfrage enthalten.
- Mit
POST V1/products
erstellte Bundle-Produkte sind jetzt erfolgreich, wenn der Katalogpreisbereich aufwebsite
festgelegt ist. Zuvor ist eine Verletzung der Integritätsbeschränkung aufgetreten. GitHub-35595
Cache
- Kategorien sind jetzt für Käufer in Geschäften sichtbar, in denen der Cache auf Fastly CDN (Caching Application=Fastly CDN) festgelegt ist. Dies betraf sowohl Gastkäufer als auch registrierte Kunden.
- Die Cache-Cookies nach der Anmeldung sind nun nach dem Browsen auf der Website identisch. Zuvor hat der Anmelde-Controller das falsche Cache-Cookie gesendet, und Seiten wurden möglicherweise mehrmals zwischengespeichert.
- Antworten von GraphQL GET-Vorgängen auf CMS-Seiten, die CMS-Blöcke enthalten, werden jetzt wie erwartet im Fastly-Cache gelöscht. Nachfolgende Zeitplanaktualisierungen zeigen jetzt genaue, aktualisierte Inhalte für diese Seiten an.
- Der Seiten-Cache wird jetzt für ein übergeordnetes Produkt erwartungsgemäß gelöscht, wenn eines seiner untergeordneten Produkte vom Administrator gespeichert wurde. Es wurde eine Plug-in-Prüfung eingeführt, um die Cache-Invalidierung für konfigurierbare Varianten zu erreichen, ähnlich wie bei anderen Produkttypen, unabhängig vom Indexerstatus (geplant oder in Echtzeit). Bisher wurden die Preise in der Storefront nicht ordnungsgemäß aktualisiert, nachdem eine konfigurierbare Variante vom Administrator aktualisiert wurde.
- Es wurde ein Caching Mechanismus für AWS-Anmeldeinformationen hinzugefügt. Ein Anbieter von Anmeldeinformationen verwendet jetzt den Commerce-Cache, um Anmeldeinformationen zwischenzuspeichern, die von AWS für die EC2-Konfiguration abgerufen wurden.
- Die Plug-in, deren Zweck es ist, die konfigurierbare Cache-Tag hinzuzufügen, wenn ein einfaches Produkt, das mit einem konfigurierbaren Produkt verknüpft ist, gespeichert wird, funktioniert jetzt wie erwartet. Alle relevanten konfigurierbaren Cache-Tags werden erwartungsgemäß entfernt, wenn ein einfaches Produkt von aktualisiert wird
POST V1/products
. Zuvor wurden nicht alle Preise in der Storefront aktualisiert, und Caches mussten manuell geleert werden. GitHub-36726
Warenkorb und Checkout
- Magento Open Source optimiert jetzt die Leistung, indem beim Generieren von zwischenspeicherbaren Seite-Seiten wie Product Details Seiten (PDP) und CMS-Seiten keine User-spezifischen Angebotsdaten geladen werden, wenn persistente Warenkorb aktiviert ist. Bisher lud das System während der Generierung dieser Seiten unnötig User-spezifische Sitzungs- und Angebotsdaten, was sich auf die Leistung auswirkte.
- Benutzerdefinierte Adressattribute werden nun wie erwartet in der Datenbank gespeichert. Zuvor wurde Attributwerten, die in der Datenbank gespeichert wurden, ein Attributcode vorangestellt.
- Die Erstellung von Warenkorb Regelfiltertext für Produktattribute wurde verbessert. Einzelne Produkte werden nicht mehr mehrfach geladen.
- Magento Open Source zeigt jetzt eine informative Fehlermeldung an, wenn während der Checkout ein Fehler auftritt, und setzt die Erstkäufer nicht mehr auf einen früheren Checkout Schritt zurück. Bisher wurde die Erstkäufer an den Versand Seite zurückgeschickt.
- Das
cart
Abfrage gibt die Versandart und Adresse für virtuelle Warenkörbe nicht mehr zurück. Wenn zuvor ein Warenkorb sowohl physische als auch virtuelle Produkte enthielt und alle physischen Produkte entfernt wurden, enthielt die Warenkorb Abfrage Antwort weiterhin Versandinformationen.
- Magento Open Source zeigt nun informative Meldungen an, wenn eine Aktion zum Hinzufügen zu Warenkorb ausgelöst wird. Zuvor wurde die
The requested qty is not available
nicht immer wie benötigt in der Storefront angezeigt.
- Die Ladezeiten für Checkout Seite Checkout wurden für Kunden mit großen Adressbüchern verbessert. Magento Open Source verarbeitet jetzt nur die in der Customer Addresses Limit Einstellung angegebene Anzahl an Kundenadressen. Zuvor hat Magento Open Source das gesamte Adressbuch geladen.
- Die Produktmenge kann jetzt im Warenkorb wie erwartet für Artikel auf Lager geändert werden, wenn ein Artikel nicht vorrätig ist. Zuvor konnten Käufer die Produktmenge von Artikeln nicht ändern, wenn einer nicht vorrätig war.
- Der
AdvancedSalesRule
Produktattributfilter funktioniert jetzt fehlerfrei mit dem Dezimalattribut-Backend-Typ. Infolgedessen funktionieren die Regeln für den Warenkorb mitCoupon Type
, die auf No Coupon gesetzt sind, jetzt erwartungsgemäß.
- Der volle Betrag eines ganzen Warenkorb Rabatts wird nun wie erwartet auf Warenkörbe angewendet, die sowohl Paket als auch konfigurierbare Produkte enthalten.
- Cookies im Kundenbereich berücksichtigen nun die Domäneneinstellung des Cookie. Zuvor wurde der Mini-Warenkorb nicht wie erwartet in Stores aktualisiert, die Subdomains enthielten, obwohl die Sitzung geteilt wurde.
- Beim Versand einer Bestellung an mehrere Adressen tritt während der Verarbeitung der Regions-ID kein Trigger mehr auf.
- Feste Rabattbeträge, die auf Warenkorbebene angewendet werden, sind jetzt korrekt.GitHub-37496
- Die Coupons werden jetzt erfolgreich auf eine Bestellung angewendet, wenn ein Käufer den Coupon anwendet, nachdem er die Versandart „Flatrate“ ausgewählt hat, bei der eine Warenkorb-Preisregel mit der Versandmethode gilt, die als Bedingung festgelegt wurde. Zuvor wurde auf der Warenkorbseite der Fehler „Coupon ist nicht gültig“ angezeigt und der Coupon wurde nicht angewendet. GitHub-34866
- Gutscheine werden jetzt erfolgreich auf eine bestellen angewendet, wenn ein Erstkäufer die Coupon anwendet, nachdem er die Pauschalversandart ausgewählt hat, bei der ein Warenkorb Preis mit der als Bedingung festgelegten Versandart Regel. Zuvor wurde in der Warenkorb Seite der Fehler "Gutschein ist ungültig" angezeigt und die Coupon wurde nicht angewendet. GitHub-34866
- Das My billing and shipping address are the same Kontrollkästchen bleibt jetzt standardmäßig aktiviert, wenn ein Erstkäufer Chrom automatische Vervollständigung verwendet, um seine Lieferadresse einzugeben, und dann auf Weiter klickt, bevor der Versandmethodenblock neu geladen wird. GitHub-33725
- Der
applied_rule_ids
Wert in derquote_item
Tabelle enthält nun eine korrekte Liste der angewendeten Regel-IDs. Zuvor enthielt dieser Wert nur die zuletzt angewendete Regel-ID.
- Mini-Warenkorb- und Kundendaten im lokalen Speicher werden jetzt zurückgesetzt, wenn eine Sitzung vom Server entfernt wird. Zuvor wurden diese Daten beim Entfernen der Sitzungsdatei noch angezeigt.
- Diskrete Warenkörbe werden nicht mehr versehentlich vom Administrator zusammengeführt, wenn der persistente Warenkorb aktiviert ist.
- Die Warenkorbsteuer und die Versandschätzung spiegeln jetzt die standardmäßige Zielkonfiguration genau wider. Wenn Sie zuvor die Standardeinstellungen für die Berechnung des Steuerziels konfiguriert und Bundesland/Region und Postleitzahl angegeben haben, wurde nur der Postleitzahl-Wert im Warenkorb unter Estimate Tax and Shipping angezeigt. Dies resultierte daraus, dass Magento Open Source die Regions-ID auf undefiniert setzte, bevor die bedingte Anweisung aufgerufen wurde, die die Standard-Regions-ID vom Administrator festlegte.
- Magento Open Source gibt diesen Fehler während des Checkouts nicht mehr aus, wenn der persistente Warenkorb aktiviert ist:
Invalid state change requested
. Zuvor wurden beim Auslösen dieses Fehlers gelegentlich mehrere Bestellungen mit demselbenquote_id
erstellt.
- Das Mini-Warenkorb zeigt jetzt Paket Produktpreise an, die Warenkorb Steuerkonfigurationseinstellungen entsprechen. Bisher enthielt das Mini-Warenkorb immer Steuern in den Preisen Paket Produkte.
- Die Schätzung der Versanddaten aus dem Warenkorb Seite ist jetzt korrekt.
collectShippingRates
wird jetzt nur noch einmal festgelegt. Zuvor wurde die Versandschätzung dupliziert. GitHub-36648
- Die
cart
-Abfrage gibt keinen Fehler mehr zurück, wenn ein Produkt im angegebenen Warenkorb nicht mehr vorrätig ist. Zuvor konnten Käufer, die diese Abfrage für einen Kauf verwendeten, ihren Kauf nicht abschließen, wenn ein Artikel nicht vorrätig war und ihre Checkout-Seite leer war.
- Gast-API-Anforderungen geben
POST V1/guest-carts/<cartId>/shipping-information
keinen Status mehr zurückcancel
, wenn der Seite während der Log-in in einer mobilen Umgebung neu geladen wird. Zuvor haben Magento Open Source einen 500-Fehler ausgegeben und diese Ausnahme protokolliert:TypeError: Argument 2 passed to Magento\CustomerCustomAttributes\Model\Plugin\ProcessCustomerShippingAddressCustomAttributes::beforeSaveAddressInformation() must be of the type string, null given
.
- Die Berechtigung für kostenlosen Versand wird nun erwartungsgemäß berechnet, wenn die Bedingung Subtotal (Excl. Tax) für Warenkorb Regeln angewendet wird. GitHub-36760
- Die
cart
Abfrage gibt jetzt die richtigen Stufenpreise für ein Produkt zurück. GitHub-29655
- Es wurden informative Fehlermeldungen zur Kaufbestätigungsseite hinzugefügt, die den Erstkäufer anleiten, wenn die Anwendung eines Gutscheins auf der Versandseite mit der ausgewählten Versandmethode in Konflikt steht. Zuvor wurden die Käufer in einer Nachricht aufgefordert, zur vorherigen Seite zurückzukehren.
- Das Authentifizierungs-Popup wird jetzt nur noch initialisiert, wenn es benötigt wird, und nicht mehr, wenn der Gast-Checkout aktiviert ist. Es ist jetzt initialisiert, wenn der Gast-Shopper versucht, mit dem Checkout fortzufahren, und der Gast-Checkout ist deaktiviert. GitHub-30672
Warenkorbpreis Regel
- Die Warenkorb Preis- Regel Produktunterauswahlbedingung beinhaltet jetzt die
total (incl.tax)
Option wie erwartet. GitHub-34871
- Der Katalogpreis Regel die
If an item is FOUND/NOT FOUND in the cart with ALL/ANY of these conditions true
Bedingung funktionieren nun korrekt mit Kategorie und Produktnummer Attributen. Zuvor wurde diese Bedingung in der Couponlogik zum Warenkorb nicht korrekt angewendet, und ungültige Coupons wurden auf Bestellungen angewendet. GitHub-37660
- Sie können jetzt erfolgreich eine neue Warenkorb-Preisregel speichern, wobei die
Magento_OfflineShipping
-Erweiterung deaktiviert ist. Zuvor gab Magento Open Source diesen Fehler aus:report.ERROR: Warning: Undefined array key "simple_free_shipping"
. GitHub-37580
- Die Regeln für den Warenkorbpreis werden jetzt erwartungsgemäß angewendet, wenn eine Warenkorbpreisregel, die sich auf eine Versandmethode bezieht, für den Store konfiguriert ist und diese Versandmethode während des Checkouts in eine andere geändert wird. Zuvor wurde der
applied_rule_ids
in dersales_order_item
-Tabelle nie geändert, und die Warenkorbpreisregel wurde nicht auf die Bestellung angewendet.
- Gutscheine werden jetzt erfolgreich auf eine bestellen angewendet, wenn ein Erstkäufer die Coupon anwendet, nachdem er die Pauschalversandart ausgewählt hat, bei der ein Warenkorb Preis mit der als Bedingung festgelegten Versandart Regel. Zuvor wurde auf der Warenkorbseite der
Coupon is Not valid
Fehler angezeigt und der Coupon wurde nicht angewendet. GitHub-34866
Katalog
- Bei der Ausführung von
bin/magento cache:clean
oderbin/magento cache:flush
wird nicht mehr der gesamte integrierte oder Varnish-Vollseiten-Cache geleert, es sei denn, dies wurde angegeben. GitHub-38301
- Händler können jetzt das Produktkarussell verwenden, um CMS-Blöcke zu erstellen, wenn
catalog_product_price dimensions-mode
aufwebsite
festgelegt ist. Zuvor hat Magento Open Source den Block nicht gespeichert und folgenden SQL-Fehler ausgegeben:report.CRITICAL: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table
.
- Magento Open Source werden keine Duplikat Bilder mehr angezeigt, wenn die Produktfarbe auf einer Produktdetail-Seite geändert wird. GitHub-36243
- Der Algorithmus für die Synchronisierung websitespezifischer Werte nach dem Hinzufügen einer neuen Geschäft oder Ändern einer vorhandenen in Umgebungen mit mehreren Geschäft wurde optimiert.
- Der Bereinigungsprozess für zwischengespeicherte Bilddateien wurde verbessert, um das Erstellen von versteckt Verzeichnissen im
pub/media/catalog/product
Ordner zu vermeiden. Zuvor führten versteckt Verzeichnisse zu Speicherplatzproblemen bei Bereinigungsvorgängen. Der Vorgang konnte beendet werden, wodurch temporäre versteckt Ordner zurückblieben, die nie gelöscht wurden.
- Die Preise für Bundle-Produkte werden jetzt korrekt berechnet, und ein Problem mit der bestellen von Vorgängen bei der Preisberechnung wurde behoben. GitHub-35665
- Eine unnötige -Klausel wurde aus
catalog_product_price
Indexabfragen entfernt, was die Leistung dieses Indexers in Geschäften mit großen Katalogen verbessert hat. GitHub-32382
- Magento Open Source fügt den Produktbeschreibungstext nicht mehr in das Meta Description der Produktdetailseite ein, wenn dieses Feld leer gelassen wurde. Wenn früher eine Produktbeschreibung HTML-Code enthielt, der von Page Builder oder einem anderen HTML-Editor generiert wurde, wurde die HTML im Feld Meta-Description angezeigt, und Sie konnten dieses Feld nicht leer lassen.
- Konfigurierbare Produktoptionen auf konfigurierbaren PDP-Produktseiten sind von anderen konfigurierbaren Produktoptionen auf der Seite nicht mehr betroffen. Zuvor bildeten konfigurierbare Produkte mit Dropdown-Attributen keinen Trigger mehr, wenn ein Produktkarussell auf der Produktdetailseite vorhanden ist. Konfigurierbare Produktoptionen konnten nicht ausgewählt werden, wenn andere konfigurierbare Produkte mit Farbfeldoptionen auf der Seite vorhanden waren.
- Kürzlich angezeigte Produktinformationen werden jetzt gemäß Geschäft Ansicht Konfiguration angezeigt. Zuvor wurden die kürzlich angezeigten Produktdaten nicht pro Shop-Ansicht aktualisiert, einschließlich Name und bevorzugter Sprache.
- Vimeo-Videos werden jetzt in Chromium-basierten Webbrowsern wie erwartet auf Produktseiten in der Mobile-Ansicht wiedergegeben.
- Der Befehl
bin/magento catalog:images:resize
generiert jetzt korrekt Produktbilder für die Produkte, die einer benutzerdefinierten Website mit einem benutzerdefinierten Design zugewiesen sind.
- Metadaten mit
NULL
oderNOT NULL
werden jetzt für den Standardspeicher entsprechend dem erwarteten Kontrollkästchen Standardwert verwenden gespeichert. Zuvor wurden Metadaten mitNULL
Wert nicht gespeichert, wenn dieses Kontrollkästchen deaktiviert wurde.
- Händler können jetzt ein vorhandenes Bild erfolgreich von der Produktdetailseite löschen und dann ein neues Bild mit demselben Namen hochladen. Zuvor wurde unter diesen Umständen auf der Storefront-Produktseite nicht das richtige Bild angezeigt.
- Die
productDetail
-Abfrage gibt jetzt den Produktnamen anstelle von null zurück, wenn das Produktbild-alt
-Attribut als leer festgelegt ist.
- Bestellungen, die sowohl herunterladbare als auch physische Produkte enthalten, enthalten jetzt Arbeitslinks zum herunterladbaren Produkt, sobald die Bestellung abgeschlossen ist. Zuvor waren Links zu herunterladbaren Produkten erst verfügbar, als die physischen Produkte in der gleichen Bestellung versendet wurden.
- URL-Neuschreibungen werden jetzt aktualisiert, wenn eine Kategorie von einer Store-/Stammkategorie in eine andere Store-/Stammkategorie verschoben wird. Veraltete Datenbankeinträge werden jetzt entfernt, wenn die Unterkategorien in neue übergeordnete Kategorien übertragen werden. Die Datenbank enthält jetzt nur noch relevante Einträge. Zuvor wurde die
url_path
nicht mit der richtigen Store-ID aktualisiert.
- Der REST-
V1/products/<sku>/media
-Endpunkt kann jetzt das gleichzeitige Hochladen mehrerer Medienbilder verarbeiten. Zuvor wurden bei der gleichzeitigen Verarbeitung mehrerer Anfragen inkonsistente Daten erstellt, und Magento Open Source gab einen Fehler aus, wenn diese Daten in der Datenbank gespeichert wurden.
- Die Leistung bei der teilweisen Neuindizierung für die Indexer für Kategorien „Produkte“ und „Produktkategorien“ wurde verbessert. Zuvor wurden im
indexer_update_all_views
Cron-Auftrag mehrmals Neuindizierungen pro einzelnem Produkt oder Kategorie ausgeführt.
- Wenn der Produktlagerstatus automatisch auf „Nicht vorrätig“ aktualisiert wird, basierend auf der Lagerkonfiguration (Menge), wird der Lagerstatus anschließend auf „Auf Lager“ aktualisiert, wenn die Lagermenge aktualisiert wird. Zuvor wurde die
stock_status_changed_auto
-Einstellung ignoriert, wenn die Stock-Konfiguration eines Produkts auf „Auf Lager“ aktualisiert wurde.
- Die Symbolleistensortierung funktioniert jetzt auf Suchseiten wie erwartet, wenn die Remember Category Pagination aktiviert ist. GitHub-33220
- Attribute mit Mehrfachauswahl werden jetzt erwartungsgemäß gespeichert, wenn Use Default Value Kontrollkästchen im Bereich der Store-Ansicht aktiviert ist. Zuvor war dieses Kontrollkästchen deaktiviert, wenn das Produkt bearbeitet und der Standardwert gespeichert wurde.
- Admin-Benutzer mit Website-eingeschränktem Zugriff können jetzt Bilder zu einem Produkt hinzufügen, das in ihren Umfang fällt. Wenn der Admin-Benutzer keine Zugriffsrechte für das Produkt hat, zeigt Magento Open Source eine informative Nachricht an. Zuvor konnten Admin-Benutzer mit Website-begrenztem Zugriff keine Bilder zu Produkten hinzufügen, auf die sie Zugriff hatten.
- Magento Open Source zeigt jetzt den richtigen Namen an, nachdem Produkte in Admin > Category > Products in category in Multistore-Bereitstellungen, in denen Produktnamen je nach Geschäft variieren, nach Name sortiert wurden. GitHub-36208
- Die
addProductsToCart
-Mutation gibt jetzt anpassbare Optionen mit Daten zurück. Zuvor wurden nur leere anpassbare Optionen zurückgegeben. GitHub-37599
- Der Status „Produkt zurückgestellt“ wird jetzt korrekt in der Storefront angezeigt. Zuvor wurden Produkte, die für den Versand verfügbar waren, fälschlicherweise als zurückbestellt identifiziert.
- Exportierte Produkte haben jetzt den richtigen
manage_stock
, wenn deruse_config_manage_stock
gleich1
ist. Zuvor war dieser Standardwert falsch.
- Der Zugriff auf herunterladbare Produkte vom Administrator führt nicht mehr zu einem Fehler, wenn der Administrator die Store-Ansicht von der bei der Produkterstellung verwendeten Ansicht in eine andere Store-Ansicht ändert. Die Produktpreise wurden jetzt erfolgreich in Gleitkommazahlen umgewandelt, wenn ein Administrator bzw. eine Administratorin die Store-Ansicht von allen Store-Ansichten zur Standard-Store-Ansicht wechselt. Zuvor gab Magento Open Source einen Fehler aus. GitHub-37519
- Magento Open Source zeigt keine Warnmeldung mehr an, wenn Sie ein Produkt speichern, das nach dem Löschen seines Bildes mit benutzerdefinierten Optionen erstellt wurde.
- Miniaturbilder von Produkten werden jetzt wie erwartet in der E-Mail mit dem Warnhinweis für den Produktbestand angezeigt, die gesendet wird, wenn ein Produkt wieder auf Lager ist. Zuvor wurde dieses Bild nicht in der Benachrichtigungs-E-Mail angezeigt
- Die Anzahl der Produkte in der Kategoriestruktur (Admin Catalog > Category) ist jetzt korrekt. Zuvor konnte die Anzahl der Kategorie Produkte nicht aus der
catalog_category_product_index
Tabelle abgerufen werden. Der Tippfehler, der diesen Fehler ausgelöst hat, wurde korrigiert. GitHub-35417
- Das Hauptproduktbild auf der Seite mit den Produktdetails wird beim Laden der Seite nicht mehr sichtbar nach unten verschoben, wenn
product_image_white_borders
in Designview.xml
deaktiviert ist. Zuvor wurde das Produktbild beim Laden der Seite aufgrund falscher Höheneinstellungen in Fotorama JS sichtbar nach unten verschoben.
- Kunden werden jetzt über sinkende Produktpreise benachrichtigt, wenn der Kunde Warnhinweise zu Preisrückgängen abonniert hat. Zuvor wurden aufgrund des Caching auf Anwendungsebene nicht immer Benachrichtigungen zu Preisrückgängen gesendet.
- Die Server-seitige Validierung wurde zum Prozess der Erstellung von Produktattributen über die Web-API hinzugefügt. Sie können das Use in Layered Navigation Catalog Feld nicht aktivieren, wenn der Catalog Input Type for Store Owner Feldwert
Text Field
,Text Area
,Text Editor
,Date
oderDate and Time
ist. Zuvor wurden Produkte in Kategorien und Suchergebnissen weggelassen.
- Die Kategorieseite wird jetzt mit der richtigen Paginierung neu geladen, nachdem ein Einkäufer die Seite geöffnet, die Paginierung geändert, zu einer Produktseite navigiert und dann zur Kategorieseite zurückkehrt. GitHub-36563
- Nicht vorrätige einfache Produkte, die Optionen für ein konfigurierbares Produkt sind, werden jetzt als deaktiviert in der Storefront angezeigt, wenn Display Out of Stock Products auf "". Zuvor wurden alle Optionen als verfügbar angezeigt, trotz ihres Status und ihrer tatsächlichen Verfügbarkeit.
- Durch die Aktualisierung des Attributs für den Website-Umfang in einer bestimmten Store-Ansicht wird der Wert dieses Attributs im globalen Umfang nicht mehr überschrieben. Zuvor führte der Import von Produktpreisen, wenn mehrere Zeilen mit derselben SKU und
store_view_code
verfügbar waren, zu ungenauen Preisen für die Standard- und Alle Store-Ansichtsbereiche.
- Händler können jetzt über den Administrator ein GIF-Bild zur Bildergalerie eines Produkts hinzufügen. Zuvor wurde Magento Open Source folgender Fehler angezeigt:
imagecolorsforindex(): Argument #2 ($color) is out of range
- Es wurden Prüfungen hinzugefügt, um Fehler zu behandeln, die aus undefinierten Array-Schlüsseln resultieren. Zuvor trat bei der Erstellung von deklarativen Schema der Whitelist ein Fehler auf.
- Magento Open Source gibt jetzt ein gültiges Ergebnis für das benutzerdefinierte Datum
01/01/1970
zurück. Zuvor gab das benutzerdefinierte Attribut diesen Fehler zurück:Invalid input datetime format of value '1/01/1970
. GitHub-37274
routes
Abfragen, die Fragmente verwenden, geben nun wie erwartet Kategorie Informationen zurück. Zuvor trat ein interner Serverfehler auf der Kategorie Seite auf. GitHub-35906
- Probleme mit dem
cataloginventory_stock
partiellen Neuindizierungsprozess wurden behoben und die Indexerleistung wurde verbessert. Zuvor wurden Lager- und Produktkategorien nicht korrekt aktualisiert.
- Magento Open Source generiert jetzt eine 301-Umleitung für ein Produkt, wenn die Kategorie, zu der es gehört, in ein neues übergeordnetes Element verschoben wurde. GitHub-37039
Katalogregeln
- Katalogregeln werden nun korrekt indiziert, wenn sie durch die Zeitplanaktualisierung aktiviert werden. Dadurch werden Rabattpreise nun korrekt generiert und indexiert. Wenn zuvor zwei Katalogregeln verfügbar waren und eine Regel nach der ersten Regel vor der ersten Regel des Katalog- Regel Indizierungsvorgangs aktiviert wurde, wurden die Katalog- Regel Rabattpreise für die zweite Katalog-Regel nicht generiert.
- Katalogregeln werden nun wie erwartet in einer Umgebung mit mehreren Websites angewendet.
Konfigurierbare Produkte
- Händler können jetzt ein konfigurierbares Produkt auswählen Skip quantity at this time Skip image uploading at this , ohne die Quelle der zugehörigen einfachen Produkte zu beeinflussen. Bisher verschwand durch Auswählen Skip quantity at this time von Produktquellen.
- Die As low as Beschriftung wird nicht mehr für einen konfigurierbaren Produktpreis angezeigt, wenn alle Optionen denselben Preis haben.
- Admin-Benutzer mit Website-Berechtigungen können jetzt ein untergeordnetes Produkt, das Teil eines konfigurierbaren Produkts ist, in einem anderen Store-Kontext speichern. Bei Neuindizierungsprozessen wird dieser Typ eines konfigurierbaren Produkts jetzt übersprungen.
- Konfigurierbare Produkte mit zwei untergeordneten Produkten sind nicht mehr als nicht vorrätig gekennzeichnet, wenn ein untergeordnetes Produkt durch eine geplante Aktualisierung deaktiviert wird. Dies war ein bekanntes Problem bei 2.4.7-beta1.
- Die Leistung von Speichervorgängen für konfigurierbare Produkte mit mehreren Optionen wurde verbessert. Bisher konnten Timeouts bei Produktspeichervorgängen auftreten. GitHub-36928
- Die Storefront-Anzeige konfigurierbarer Produktpreise ändert sich jetzt wie erwartet, wenn ein Käufer eine Produktoption auswählt. GitHub-37378
Coupons
- Gutscheincodes mit einer begrenzten Anzahl von Verwendungen pro Kunde können jetzt ein zweites Mal verwendet werden, wenn die Bestellung, für die sie zuvor verwendet wurde, fehlschlägt. Zuvor wurde der Promo-Code nicht freigegeben, als die vorherige Bestellung storniert wurde.
- Coupon-Codes, die Leerzeichen enthalten, werden nicht mehr ungültig gemacht. Wenn ein Coupon Code zuvor ein Leerzeichen enthielt (vor oder nach dem eigentlichen Code), schlug Tauglichkeitsprüfung fehl. GitHub-38048
- Der Einweg-Coupon-Wert eines Erstkäufer wird jetzt wie erwartet wiederhergestellt, wenn das bestellen, auf das er angewendet wurde, abgebrochen wird.
- Der
GET V1/coupons/<couponId>
Endpunkt gibt jetzt die vollständige erwartete Antwort für manuell erstellte Gutscheine zurück, genau wie für automatisch generierte Gutscheine. Zuvor wurden einige Felder ausgelassen (z. B.usage_limit
,usage_per_customer
, undcreated_at
).
Cron
- Der
aggregate_sales_report_bestsellers_data
Cron-Auftrag erstellt keine sehr großen temporären MySQL-Tabellen mehr und wird jetzt erfolgreich abgeschlossen. Dieser Cron-Auftrag fügt jetzt Daten pro Store ein, nicht für alle Stores gleichzeitig. Zuvor konnte dieser Cron-Auftrag zuNo space left on device
führen.
- Die Anzahl der ausstehenden Datensätze in der
cron_schedule
wurde reduziert, indem verhindert wurde, dass Cron-Aufträge versuchen, unnötige Cron-Auftragssperren zu erhalten. Zuvor versuchten Cron-Jobs, Sperren zu erwerben, als es zu spät war, um den Job auszuführen. Cron-Aufträge incron_schedule
wurden nicht als verpasst markiert, obwohl sie bereits ihre geplante Zeit überschritten hatten. Magento Open Source hat diesen Fehler auch wiederholt im Fehlerprotokoll angezeigt:report.WARNING: Could not acquire lock for cron job: indexer_update_all_views
.
- Fehlerkorrektur - Der schwerwiegende Fehler „divide by zero“ in Cron-Ausdrücken wurde behoben. GitHub-37804
- Der
sales_clean_quotes
Cron-Prozess wurde optimiert, um schneller zu laufen, indem ein zusammengesetzter Index zustore_id
undupdated_at columns
in der Zitattabelle hinzugefügt wurde. Diese Änderung verbessert die Leistung von Cron-Aufträgen bei der Verarbeitung vieler Zitate.
- Administratorbenutzer können nun Ansicht, welche Aufgabe der
bin/magento cron:run
Prozess gerade durchführt. Der Titel des aktuell ausgeführten Prozesses listet nun die Gruppe und Auftragsnamen auf. GitHub-34321
KUNDE
- Magento Open Source zeigt jetzt die Felder Date of Birth, Tax/VAT Number, Gender, Telephone, Company und Fax auf der Seite „Kunden bearbeiten“ basierend auf den Konfigurationseinstellungen an. GitHub-36196
- E-Mails, die diakritische Zeichen oder Akzente enthalten (d. h. UTF8-E-Mail), werden jetzt für Kunden und Unternehmen sowie für bestellen Platzierung durch Gäste und registrierte Kunden unterstützt. Zuvor wurden in Magento Open Source keine Kundendatensätze gespeichert, die diakritische Zeichen enthielten, und folgender Fehler wurde angezeigt:
Something went wrong while saving the customer
.
- E-Mail-Absendernamen dürfen keinen Doppelpunkt mehr enthalten. Eine neue Validierungsregel verhindert jetzt das Speichern von Absendernamen, die Doppelpunkt-Zeichen enthalten, im Abschnitt E-Mail-Adressen speichern unter Admin Stores > General. Zuvor konnten Händler einen Absendernamen speichern, der einen Doppelpunkt enthielt, was zu Mailserver-Fehlern führte.
- E-Mail-Adressen von Kunden können jetzt diakritische Zeichen enthalten. Zuvor untersagte die Frontend-Validierung die Erstellung eines Benutzers mit diakritischen Zeichen in seiner E-Mail-Adresse. GitHub-12075
- Bestands- und Preiswarnungs-E-Mails werden jetzt in die Sprache übersetzt, die für die standardmäßige Store-Ansicht der Website konfiguriert ist. Bisher wurden diese E-Mails nicht übersetzt.
POST V1/order/notify-orders-are-ready-for-pickup
Sendet jetzt eine E-Mail, in der Kunden darauf hingewiesen werden, dass ein bestellen nur dann abholbereit ist, wenn der bestellen bereit ist. Die E-Mail wird jetzt nur ausgelöst, wenn die Anfrage ausnahmslos ausgeführt wurde.
Gerüste
- Das Debugging wurde verbessert, indem beim Ausgeben eines HTTP-Headers mit Varnish der Wert
UNCACHEABLE
hinzugefügt wurde. Zuvor wurden nurHIT
oderMISS
Werte ausgegeben. GitHub-37912
- Code zur Unterstützung der standardmäßigen Varnish-Komprimierung hinzugefügt. GitHub-38309
- Der
varnish:vcl:generate
Befehl enthält jetzt eineinput-file argument
. Dies unterstützt das Hinzufügen einer benutzerdefinierten VCL zu einer Git-Repository relativ zum Commerce-Stamm. GitHub-37363
- Die Unterstützung für Varnish 4.x und 5.x wurde aus der Codebasis entfernt. GitHub-38304
phpcodesniffer-composer-installer
incomposer.json
wurde auf Version 1.0.0 aktualisiert. GitHub-36913
- Zeichen, die nicht mit RFC3986 übereinstimmen, wurden aus der Codebasis entfernt. GitHub-38355
- Fehlerkorrektur - Ein falsches PHP-doc-Tag in der
Magento\Reports\Block\Adminhtml\Shopcart\Product\Grid
-Klasse wurde korrigiert. GitHub-38186
- Umgestalteter Code in der gesamten Code-Basis, die bei der Codierung erstellt wurde, schreibt vor, dass jeder Cache-Abschnitt, der in der
app/etc/env.php
-Datei enthalten ist, einen Frontend-Abschnitt enthalten muss. Diese Umgestaltung behebt potenzielle Probleme bei der Aktualisierung von Bereitstellungen von Magento Open Source vor 2.4.4. GitHub-38363
- Klarstellung der Fehlermeldung, die mit
StockItemValidator.php
verknüpft ist, wenn während eines API-Aufrufs eine Stock-ID mit einem Wert von 0 bereitgestellt wird. GitHub-31107
- Es wurde ein leeres Standard-Array zum
$tagGenerators
hinzugefügt,CompositeTagGenerator
Fehler während der Kompilierung der Injektion von Abhängigkeiten zu vermeiden. Zuvor führte die Ausführung desbin/magento setup:upgrade
-Befehls, wenn dieMagento_DirectoryGraphQl
- undMagento_StoreGraphQl
-Module deaktiviert waren, zu einem Fehler. GitHub-38165
- Die nicht verwendete
AlgorithmProviderFactory
Klasse wurde entfernt, ebenso wie Abhängigkeiten von dieser Klasse in Klassen wieJweAlgorithmManagerFactory.php
,JweContentAlgorithmManagerFactory.php
, undJwsAlgorithmManagerFactory
. GitHub-37783
- Die
var/log/system.log
Datei enthältmain.INFO
keine Fehlermeldungen mehr. Das Menüeintragsprotokoll wurde von der Ebene INFO nach DEBUG verschoben. Zuvor wurde dievar/log/system.log
Datei mit Nachrichten liken diesem überflutet:Add of item with id Magento_Theme::design_config was processed …
.
- Das Vorabladen von Redis schlägt nicht mehr fehl, wenn
exec()
false zurückgegeben wird. Dem Vorabladen wurde eine Verifizierungsoption hinzugefügt, um zu verhindernarray_combine
, dass ein zweites Argument empfangen wirdfalse
. Daher wird das Vorladen weiterhin ausgeführt, wennexec()
false
zurückgegeben wird. GitHub-37509
- Das
Magento_CatalogWidget
wurde überarbeitet, um$block
Escaping-Funktionen durch$escaper
Escaping-Funktionen zu ersetzen. GitHub-37107
Swaziland
wurde in der gesamten Code-Basis aufEswatini
aktualisiert. GitHub-37873
- Die neue nicaraguanische Währung (NIO) wurde zur Liste der verfügbaren Währungen hinzugefügt.
- Ein Variablenname in
CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php
wurde korrigiert. GitHub-38093
- Aufgelöste Zwischensummen-Rundungsfehler, die bei Transaktionen für Produkte aufgetreten sind, für die die Dezimalmenge aktiviert wurde. GitHub-37817
- Der Datumsfilter für das Admin-Kundenraster funktioniert jetzt gemäß dem angegebenen Gebietsschema erwartungsgemäß.
- Der
bin/magento setup:upgrade
-Befehl schlägt aufgrund des Datentyps der$schemaPatch
Variablen nicht mehr fehl. Zuvor wurde der Zeichenfolgenwert an dieget_class
-Funktion übergeben, was den Fehler verursachte. GitHub-37545
- Die Verbindung zur MySQL-Datenbank wird jetzt wiederhergestellt, wenn die Verbindung während einer Transaktion unterbrochen wird, wenn Sie
max_messages = 0
für Privatkunden festlegen. Zuvor wurde die Verbindung beendet.
- Das
magento/module-release-notification
-Kernmodul wurde im 2.4-Entwicklungs-Code mit folgendem Kommentar als veraltet gekennzeichnet:Starting from Magento 2.4.7, Magento_ReleaseNotification module is deprecated in favor of another in-product messaging mechanism
.
- Die Proxy-Code-Generierung generiert jetzt Proxy- und Factory-Dateien wie erwartet für Bereitstellungen, die im Produktionsmodus ausgeführt werden. GitHub-35252
- Der indische Bundesstaat Ladakh wird jetzt als Option in den Dropdown-Menüs Admin-Adresse State aufgeführt. GitHub-33698
- Der Event-Countdown-Ticker wird nun wie erwartet auf der Kategorieseite angezeigt.
- Das unzulässige
@author
-Tag wurde aus der Code-Basis entfernt, einschließlich der folgenden Module:Magento_user-variable-wee
,Magento_Catalog
undMagento_Customer
,Magento_Wishlist
,Magento_Review
Tax
und im gesamten Framework. GitHub-37245, GitHub-37246, GitHub-37249, GitHub-37263
- Das JSON-Serialisierungsprogramm im
User
wurde durch ein neues, präziseres Serialisierungsprogramm (JsonHexTag
) ersetzt. Zuvor stürzte Magento Open Source manchmal ab, wenn versucht wurde, Daten zu verwenden, die vom regulären Serialisierungsprogramm serialisiert wurden, wenn sie Elemente ohne Escape-Zeichen enthielten. GitHub-31377
- Beim Ausführen einer vollständigen Neuindizierung (
bin/magento indexer:reindex
) treten keine fehlerhaften Pipeline-Fehler mehr auf. AMPQ-Verbindungen werden nun geschlossen, bevor der Prozessmanager Prozesse gabelt.
- Der Warteschlangennachrichten-Validator validiert jetzt den Untertyp aller Array-Elemente. Zuvor hatte Magento Open Source eine Ausnahme ausgelöst.
- Die Warteschlangenverbindungskonfiguration pro Thema in
app/etc/env.php
funktioniert jetzt ordnungsgemäß. Zuvor wurde die Warnwarteschlange für Produkte nicht korrekt generiert, wenn eine neue Nachrichtenwarteschlange mit einem benutzerdefinierten Austausch erstellt wurde. Wenn die Warteschlangenverbindung für ein Thema inapp/etc/env.php
mit einem benutzerdefinierten Austausch konfiguriert wurde, wurde eine neue Bindung für alle Themen mit diesem benutzerdefinierten Austausch erstellt. Händler konnten keine Produktalarme verarbeiten.
- Zeitformate, die mit einem
/* mariadb-5.3 */
-Kommentar markiert sind, verursachen beim Upgrade von MariaDB-Server auf Version 10.5.1 oder höher keine Fehler mehr während derbin/magento setup:install
.
- Der AwsS3-Treiber funktioniert jetzt erwartungsgemäß als Ersatz für die standardmäßige Basisdateispeicherimplementierung. Zuvor konnten Daten beschädigt werden, wenn dieser Treiber für die Dateispeicherung konfiguriert wurde. GitHub-37844
bin/magento config:show
- undset
-Befehle, die$_ENV
-Variablen verwenden, unterstützen jetzt die Verwendung von Website- und Speicher-Codes, die Binnenmajuskeln oder Großbuchstaben enthalten.
- Klassen mit
!important
wie in Tailwind 3 zur Unterstützung des CSS-Layouts verwendet. GitHub-37568
- Der
trim-input.js
wurde eine fehlendejQuery
hinzugefügt. GitHub-37683
- Ereignisspezifische Details werden jetzt als zweites Attribut (
context
) derlog
übergeben. GitHub-37879
- Seitenverhältniswerte wurden zu Katalogbildern hinzugefügt und unnötige Skripte wurden aus dem UI-Framework entfernt. GitHub-37691
- Überarbeitete Fehlermeldungen, die durch eine ungültige XML-Konfiguration ausgelöst wurden, um mehr Informationen zu erhalten. GitHub-37788
- Veralteten Code im Zusammenhang mit der Erstellung dynamischer Eigenschaften in der gesamten Code-Basis umgestaltet.
- Die Leistung von Indexern für große Stores mit extrem aktiven Produktdatenbanken wurde verbessert. Indexer indizieren jetzt die neuesten Produktinformationen einmal für jeden Index und nicht mehrmals. Zuvor waren Produkte von der Website verschwunden, und die Produktdaten auf der Website könnten veraltet sein. GitHub-30012
mview_state
Datensatzstatus gibt nun den Status basierend auf der Changelog-Aktivität korrekt an, wenn eine Slave-Datenbankverbindung verfügbar ist. Zuvor blieben diese Datensätze in Cloud-Bereitstellungen in einemwaiting
Zustand, selbst wenn es keine neuen Einträge im Änderungsprotokoll gab.
- Es wurde Unterstützung für die
precision
-Option für das Währungsformat hinzugefügt, um die Funktionsparität mit der veraltetenZendCurrency
-Klasse beizubehalten.
- Cookie-Nachrichten wurden in beobachtbare Attribute konvertiert, und Entwicklerinnen und Entwickler können jetzt den Status bearbeiten, was zu Änderungen an der Trigger-Benutzeroberfläche führen kann. Zuvor waren Cookies schreibgeschützt und konnten nicht bearbeitet werden. GitHub-37308
- Administratoren können jetzt eine Rechnung generieren, wenn ihre Magento Open Source-Instanz mit dem S3-Speicher verbunden ist. Zuvor hat Magento Open Source diesen Fehler angezeigt:
Cannot create image resource. File not found
. GitHub-35706
- Magento Open Source protokolliert jetzt eine Ausnahmemeldung wie erwartet, wenn die Validierung der MwSt.-Nummer durch den VIES-Validierungsdienst fehlschlägt. GitHub-36065
- Der
Administrators
wurde aus der Abfrage entfernt, mit der die Rolle eines Administrators bei der Erstellung der Administratorrolle abgerufen wird. GitHub-36998
- Der
bin/magento setup:config:set
-Befehl schlägt nicht mehr fehl, wenn in derapp/etc/env.php
-Datei ein ungültiger Datenbankbenutzername enthalten ist. GitHub-37409
- Das Sortieren nach Spalte für reservierte Wörter in einer standardmäßigen Admin-UI-Komponente führt nicht mehr zu einem SQL-Fehler in
var/log/exception.log
. GitHub-37423
- Es wurden
AddDataForCostaRica.php
hinzugefügt, um Statusinformationen für Costa Rica bereitzustellen. GitHub-37382.
- Verbesserte Fehlermeldung für Szenarien, in denen User versucht, vom Administrator auf eine ungültig URL zuzugreifen. GitHub-35682.
Param $options[
Position]
für Währungssymbole funktioniert jetzt wie erwartet und unterstützt die Anpassung der Position des Währungssymbols. Zuvor, nach der Migration von Zend Framework 1, ignorierte dietoCurrency
Methode denposition
Parameter. Dieses Problem trat in der gesamten Admin-Oberfläche auf.
- Mutex wurde für Befehle implementiert, um Gleichzeitigkeitsbedingungen während der Aktualisierung durch gleichzeitige Anforderungen zu verhindern. Zuvor wurden gleichzeitige Anfragen (Race Conditions) für bestellen Abbrüche zur Duplizierung von Einträgen in der
inventory_reservation
Tabelle geführt.
- Die
populateWithArray
Funktion wandelt Objekteigenschaften nun korrekt in Snake Case um, sodass sie mit denAbstractModel
Gettern und Settern kompatibel ist. Zuvor war die Formatierung von Schlangenbuchstaben falsch, wenn der Datenattributname mehrere Großbuchstaben in einer Zeile enthielt.
- Der Wert für die automatische Inkrementierung in der
catalog_product_entity_varchar
-Tabelle wird nun nach dem Speichern eines Produkts korrekt inkrementiert. Zuvor stieg dieser Wert um zehn.
- Magento Open Source löst diese Dateisystemausnahme nicht mehr aus, wenn Sie versuchen, den JavaScript/CSS-Cache zu leeren:
No such file or directory
.
- Der Wert von
value_id
incustomer_entity_int
wird jetzt korrekt inkrementiert. Eine Aktualisierungs Abfrage wird ausgeführtinsert on duplicate key update
, wenn eine Entität aktualisiert wird, die diese Attribute enthält. Infolgedessen wachsen die im EAV-Modell verwendeten Spalten mit automatischer Inkrementierung jetzt linear. Zuvor wurden Werte beim automatischen Inkrementieren für Spalten aufgrund fehlgeschlagener Einfügeabfragen übersprungen. GitHub-28387
- Unnötiger Leerraum wurde aus
id
entfernt, die ihn nicht benötigen. (Dieser Fehler wurde durch eine Code-Änderung in Magento Open Source 2.4.6 eingeführt.)
- Store-Codes werden nicht mehr in der Store-URL angezeigt, wenn der Store im Einzelspeichermodus ist. GitHub-36831
- An den
around
Plugins wurden kleinere Aktualisierungen vorgenommen. GitHub-31443
- Die Farbfelder
Helper
wurden umgestaltet, um irreführende Importaliase zu entfernen. GitHub-31373
- Administratoren können nun Dateien
sitemap.xml
wie erwartet löschen oder umbenennen. Zuvor konnte ein Administrator User die Datei aus dem Admin löschen, sie verblieb jedoch im Dateisystem. GitHub-37468
- Coupons werden nicht mehr als verwendet gekennzeichnet, wenn die Zahlung für die Bestellung, für die sie angewendet wurden, fehlschlägt. Warteschlangennachrichten werden jetzt in der Reihenfolge verarbeitet, in der sie beim Starten des Verbrauchers veröffentlicht werden. Zuvor wurde die erste Nachricht aus der Warteschlange gezogen, um einfach zu überprüfen, ob Nachrichten in die Warteschlange gestellt waren. Anschließend wurde sie zurückgewiesen, wodurch die erste Nachricht zuletzt verarbeitet wurde.
- Magento Open Source löst keine Ausnahme mehr in der Protokolldatei aus, wenn ein(e) Benutzende® versucht, ein Versandlabel zu drucken. Wenn eine Erweiterung zuvor Antwortkopfzeilen ändert, die eine Anlage enthalten, hat das System eine Ausnahme in der Protokolldatei ausgelöst.
- Unterstützung für weitere HTML-Klassen wurde zu
elements.xsd
hinzugefügt. GitHub-36891
Allgemeine Fehlerbehebungen
- Der Name der
reponseBody
-Variablen wurde inapp/code/Magento/CatalogRule/Controller/Adminhtml/Promo/Catalog/NewConditionHtml.php
inresponseBody
geändert.GitHub-38093
- Durch die Planung von Produktaktualisierungen werden die Mehrfachauswahl-Attributdaten nicht mehr gelöscht. Zuvor wurden beim Planen einer Aktualisierung für ein Produkt die Attributdaten für die Mehrfachauswahl des Produkts fälschlicherweise gelöscht. GitHub-37675
- Das Speichern eines Produkts mit einer nicht standardmäßigen Geschäft Umfang führt nicht mehr dazu, dass unveränderte Attribute Geschäft-Gültigkeitsbereich werden, wenn sie mit geladen werden
ProductRepository
. GitHub-8897
- Den benutzerdefinierten Feldern Tauglichkeitsprüfung auf Produktdetailseiten wurden informative Fehlermeldungen hinzugefügt. GitHub-38006
- In Namensfeldern können nun Sonderzeichen verwendet werden. Zuvor war das kaufmännische Und-Zeichen (&) im Namensvalidator eingeschränkt, was das Hinzufügen oder Bearbeiten von Kunden blockierte, wenn der Kundenname ein kaufmännisches Und-Zeichen enthielt. GitHub-38080
- Admin-Benutzer mit eingeschränktem Zugriff auf einen bestimmten Store können jetzt eine Massenaktualisierungsaktion verwenden, um Produktüberprüfungen zu aktualisieren. Zuvor gab es in Magento Open Source diese Ausnahme:
report.CRITICAL: TypeError: array_intersect(): Argument #1 ($array) must be of type array, null given in app/code/Magento/AdminGws/Model/Models.php:439
.
- Die Funktion Kennwort anzeigen auf der Anmeldeseite der Storefront zeigt jetzt die erwarteten Kennwörter an. Zuvor wurden keine Kennwörter angezeigt. GitHub-37432
- Der Produktvergleich Liste ist nun immer Website-spezifisch für Gastkäufer und enthält keine Produkte, die von den anderen Websites hinzugefügt wurden, einschließlich Produkten, die beiden Websites zugeordnet wurden.
- CMS Inhalte-Blöcke, die Emojis enthalten, werden beim Speichern in der Datenbank nicht mehr nach dem Emoji abgeschnitten. Zuvor wurde Inhalte nach dem Emoji abgeschnitten, da die Standarddatenbankkonfiguration keine Vier-Byte-Zeichen unterstützte.
- Passwörter werden nun wie erwartet angezeigt, wenn das Show Password Kontrollkästchen im Log-in Seite aktiv ist.
- Die Zurücksetzen Passwort Token Systemattribut der Kundenentität (
rp_token
) Tauglichkeitsprüfung wurde während der Erstellung der Kunden Konto aus dem Attribut Tauglichkeitsprüfung entfernt, und diakritische Zeichen Tauglichkeitsprüfung sind nur in der resultierenden Kunden-E-Mail enthalten. Zuvor haben Magento Open Source den Kundendatensatz nicht gespeichert und diesen Fehler angezeigt:Something went wrong while saving the customer
.
- Sie können jetzt erfolgreich Änderungen an der Admin-Seiten und am Blockraster speichern, nachdem Sie eine Spalte gelöscht haben. GitHub-37525
- Kunden können sich jetzt erfolgreich mit einer neuen Kennwort von einer Device anmelden, nachdem sie ihre Kennwort auf einer anderen Device zurückgesetzt haben.
- Im Feld "Bundesland/Kanton der Admin-Kundenadresse" wird nun der zuletzt gespeicherte Wert wie erwartet beibehalten. Wenn Sie zuvor den Wert aus diesem Feld entfernt haben, Magento Open Source den gelöschten Wert weiterhin im Feld Bundesland/Kanton angezeigt. GitHub-36846
- Fehler treten nicht mehr bei Anforderungen nach einem RSS-Feed für Kategorien auf, wenn RSS Feed Top Level Category diese Option aktiviert ist. Zuvor führte das Durchsuchen der RSS-Feed Kategorie Seite zu Elasticsearch
CRITICAL
Fehlern in Protokolldateien, wenn RSS Feed Top Level Category diese Option aktiviert war.
- Der korrekte Wert wird nun gespeichert, wenn
gws_store_groups
Rolle Umfang während der Erstellung User Rolle geändert wird. Wenn der Rollenbereich zuvor als "All
" ausgewählt wurde, wurde dergws_store_groups
bei der Benutzererstellung als null gespeichert, jedoch nicht während der Rollenbearbeitung. Wenn der Rollenbereich alsCustom
ausgewählt wurde, wurde dergws_store_groups
Wert ebenfalls immer als null gespeichert.
- Sie können jetzt auf die Seite zum Zurücksetzen des Passworts zugreifen, indem Sie auf der Admin-Anmeldeseite auf den Link zum Zurücksetzen des Admin-Passworts klicken, wenn die Add Store Code to Urls aktiviert ist. Der Link zum Zurücksetzen des Admin-Kennworts hat zuvor die Anmeldeseite oder die 404-Seite geöffnet.
- Der Datumsbereich im Dashboard für Admin-Statistiken wird jetzt basierend auf der in den Konfigurationseinstellungen festgelegten Zeitzone berechnet und dann in UTC konvertiert, um Daten aus der Datenbank abzurufen.
- Der CMS-Hierarchiefilter funktioniert erwartungsgemäß, nachdem Sie eine Store-Ansicht gefiltert und dann auf Admin Content > Hierarchy Save geklickt haben. Zuvor wurde durch Klicken auf Save die Seite aktualisiert, aber der Kontext ging verloren und die ausgewählte Store-Ansicht wurde nicht mehr angezeigt.
- Durch Klicken auf die Schaltfläche Send invitation (Admin Marketing > Private sales > Invitation) wird jetzt eine POST-Anfrage zusammen mit dem Formularschlüssel gesendet und die Einladung erfolgreich gesendet. Wenn Sie diese Schaltfläche zuvor angeklickt haben, waren weder die HTTP-POST-Methode noch der Formularschlüssel vorhanden.
- Zero-Byte-Dateien können jetzt mit AWS S3 erfolgreich in den Remote-Speicher kopiert werden.
- Admin-Benutzer können jetzt über den Admin eine neue Kundenadresse hinzufügen, wenn dieser Kunde für eine andere Website erstellt wurde, deren Store-ID nicht mit der Website-ID übereinstimmt. Zuvor hat Magento Open Source diese Popup-Meldung angezeigt:
Something went wrong
. GitHub-36582
- Auf der Seite "CMS-Block-Editor“ wird jetzt der richtige Widget-
block_id
-Wert angezeigt. GitHub-29644
GraphQL
- Die
getCustomerWishlist
Abfrage führt nicht mehr zu einem internen Serverfehler bei der Abfrage von Listen, die konfigurierbare Produkte enthalten.
- Das
customerCart
Abfrage gibt nun alle angewendeten Rabatte für Paket Produkte wie erwartet zurück. Zuvor wurden die Gesamtrabatte, die auf ein Paket Produkt angewendet wurden, als Null zurückgegeben.
- Die
getCustomerWishlist
Abfrage führt nicht mehr zu einem internen Server-Fehler bei der Abfrage von Listen, die konfigurierbare Produkte enthalten.
- Die Deklaration des
is_subscribed
-Flags, des Resolvers, des Caches und der zugehörigen Tests wurden vomCustomerGraphQl
in dasNewsletterGraphQl
-Modul verschoben.
- Die
addProductsToCart
-Mutation meldet keine nicht mehr damit verbundenen Fehler inuser_errors
. Zuvor wurden Fehler im Zusammenhang mit dem Warenkorb zusammen mit den erwarteten Vorgangsfehlern inuser_errors
aufgenommen. GitHub-37908
- Der Produktfilter der
products
-Abfrage kann jetzt Ergebnisse für Teilübereinstimmungen sowie vollständige Übereinstimmungen zurückgeben. Das neuematch_type
-Attribut (PARTIAL, FULL) unterstützt die Angabe des Übereinstimmungstyps. Zuvor gab die Abfrage nur vollständige Übereinstimmungen zurück.
- Mutex wurde zur
addConfigurableProductsToCart
Abfrage hinzugefügt, um Gleichzeitigkeitsbedingungen während einer Aktualisierung zu verhindern. Wenn ein Händler zuvor zwei parallele Anfragen zum Hinzufügen desselben konfigurierbaren Produkts zu einem Warenkorb gesendet hat, wurden zwei separate Artikel mit derselben Produkt-SKU hinzugefügt. GitHub-37847
- Die Produktaggregation in GraphQL-Antworten enthält jetzt Werte ungleich null für Attribute, wenn Use in Layered Navigation auf Filterable (no results) gesetzt ist. Zuvor wurden nur Werte ungleich null zurückgegeben.
- Die Leistung der
setShippingAddressForEstimate
Abfrage für Vorgänge im Zusammenhang mit dem Warenkorb, die benutzerdefinierte Produktattribute beinhalten, wurde verbessert. Zuvor hat die Abfrage alle Produktattribute geladen, wenn Parameter als Variablen gesendet wurden.
- Das Feld
products
-ConfigurableProduct.configurable_options
gibt jetzt nur noch Werte zurück, für die mindestens ein Produkt aktiviert ist. Zuvor wurden in diesem Feld deaktivierte einfache Produkte zurückgegeben.
- Die Leistung der
GetCategories query
wurde verbessert, indem die Anzahl der unnötigen SQL-Abfragen, die sie generiert, reduziert wurde.
- Die Behandlung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
- Die
products
Abfrage gibt jetzt alle relevanten Details zur Storefront-Preisfindung zurück, wenn die dynamische Preisgestaltung auf „Nein“ festgelegt ist und Rabatte angewendet werden. Zuvor wurde die Preisspanne für Produkte nicht zurückgegeben. GitHub-35649
- GraphQL-Transaktionsnamen enthalten jetzt Abfragenamen der obersten Ebene nur noch in den New Relic-Protokollen. Zuvor enthielten Transaktionsnamen auch sekundäre Abfragenamen.
- Die Behandlung von Adressfehlern für GraphQL-Bibliothekskomponenten funktioniert jetzt erwartungsgemäß.
- Wenn die Sichtbarkeitseinstellung für ein Produkt auf
Catalog
festgelegt ist, wird die Einstellung jetzt durchproducts
Abfragen zu diesem Produkt korrekt aufgelöst. Zuvor wurde jeder bereitgestellte Filter auf die EinstellungVisibility: Catalog
umgeschaltet. GitHub-36591
- Die
customer
Abfrage gibt jetzt einproduct_sale_price
zurück, das die Steuer auf Bestellungen enthält, wenn der Produktpreis so konfiguriert wurde, dass die Steuer enthalten ist. GitHub-36946
- Produktattribute vom Typ
DateTime
werden jetzt demFilterRangeTypeInput
Filter in den Produktabfragen zugeordnet. Zuvor wurden diese AttributeFilterMatchTypeInput
zugeordnet. Infolge dieser Änderung erfordern Abfragen zum Filtern vonDateTime
-Attributenfrom
undto
Werte anstelle von Übereinstimmungswerten.
- Die
customer
-Abfrage gibt jetzt nur noch Kundenbewertungen zurück, die sich wie erwartet auf eine bestimmte Shop-Ansicht beziehen, wenn nach Shop-ID gefiltert.
- Die
categories
-Abfrage gibt keinen Fehler mehr zurück, wenn der Wert deritems.redirect_code
-Antwort einen Nullwert enthält. GitHub-36675
- Bei der
changeCustomerPassword
-Mutation wird jetzt die erwartete E-Mail-Adresse nach dem erfolgreichen Zurücksetzen eines Kennworts Trigger.
urlResolver
- undroute
-Abfragen geben jetzt ein Ergebnis zurück, wenn dieTarget Path
der URL-Umschreibung eine absolute URL ist. Zuvor hat dieurlResolver
-Abfrage NULL zurückgegeben, als Sie sie zum Abrufen von Weiterleitungsdaten verwendet haben.
- Die
products
-Abfrage gibt jetzt die richtigen Beschriftungen zurück. GitHub-29635
- Die
categoryList
Abfrage gibt nun wie erwartet einen ausgefülltenproduct
Abschnitt desoptions
Blocks für die untergeordneten Produkte Paket Produkts zurück. Zuvor wurden keine Informationen zu Paket untergeordneten Produkt zurückgegeben.
- Das
route
Abfrage gibt nun Routen für Kategorien und Produkte wie erwartet ohne internen Serverfehler zurück. GitHub-36544
- Die
products
-Abfrage ruft jetzturl_key
Werte ab, wenn mehrere Kategorien ausgewählt sind.
products
Abfragen geben jetzt nur noch Aggregationen für Produkte zurück, die dem angegebenen freigegebenen Katalog zugewiesen sind.
- Transaktionsnamen wurden zu New Relic GraphQL-Transaktionen hinzugefügt. GitHub-36874
- Die
get()
-Methode derOptionValueProvider
-Klasse gibt jetzt erwartungsgemäß einen Attributoptionenwert zurück, der auf dem angegebenenoption_id
basiert. Zuvor wurde ein Fehler zurückgegeben. GitHub-35910
- Die
products
Abfrage gibt jetzt alle verfügbaren Aggregationen (Filter) und ihre korrekt übersetzten Bezeichnungen zurück. Zuvor wurden Preis- und Kategorieaggregationsbeschriftungen nicht wie erwartet übersetzt. GitHub-36140
- Sie können jetzt eine
ProductCard
beim Abfragen vonrelated_products
,upsell_products
undcrossell_products
aufProductInterface
verwenden. GitHub-29769
- Die
products
-Abfrage gibt jetzt verwandte, Upsell- und Crosssell-Produkte in der Reihenfolge zurück, in der sie gespeichert wurden. GitHub-36461
- GraphQL-Abfragen geben jetzt zugehörige Produktdaten zurück, sortiert nach Position. GitHub-33010
category_url_path
wurde zuProductAttributeFilterInput
hinzugefügt. Dadurch wird unterstützt, dass alle Produkte für eine Kategorie in einer einzigen Abfrage angefordert werden können. GitHub-32460
- Es wurde ein Fehler korrigiert, bei dem die -Methode, die den aktuellen Speicher in einer GraphQL-Mutation festlegt, vor der -Methode ausgeführt wurde, die die Validierung verarbeitet. GitHub-31336
Bild
- Das Upload-Formular für das Symbol „Admin“ unterstützt jetzt
.ico
Dateitypen. GitHub-34858
Import/Export
- Der Produktimport analysiert nun die Werte mit dem richtigen Trennzeichen. Zuvor verwendete der Importprozess den senkrechten Strich (“|„), um Mehrfachauswahlwerte zu analysieren, bis das ermittelte Wertetrennzeichen nicht gleich dem Standardwert war. Der Importvorgang ist daraufhin fehlgeschlagen.
- 301-Weiterleitungen werden jetzt automatisch erstellt, wenn
URL Key
Werte durch den CSV-Import aktualisiert werden.
- Versandtabellen-Tarife werden jetzt wie erwartet in der CSV-Datei zum Importieren von Tabellenraten aktualisiert. Die Upload-Datei für die Tabellenrate wird vorübergehend gespeichert, bis der Cron-Vorgang für den asynchronen Konfigurationsprozessor ausgeführt wird. Dieser Cron-Job wählt den neuen Speicherort der Datei aus und verarbeitet sie entsprechend. Zuvor wurden die Tabellenraten nicht wie erwartet aktualisiert, da der asynchrone Prozessor am falschen Speicherort nach der Datei gesucht hat.
- Das Raster "Dateien exportieren" zeigt nun alle exportierten Dateien unabhängig vom Zeitstempel an. Zuvor wurden im Raster nicht alle exportierten Dateien mit demselben Zeitstempel angezeigt. GitHub-36951
- Produkte mit anpassbaren Optionen können nun erfolgreich importiert werden. Zuvor gingen Optionsdaten während des Imports verloren. GitHub-37598
- Sonderzeichen in exportierten CSV Dateien werden nun in Excel wie erwartet dargestellt. GitHub-37921
- Das Importieren von Bestandsquellen und Kundenadressen mit der Customers and Addresses (single file) Option ist nun erfolgreich abgeschlossen.
- Der Produktimport schlägt nicht mehr aufgrund von Speichermangel fehl. Zuvor schlug der Import beliebiger Produkte in eine Datenbank, die bereits etwa zehn Millionen Produkte enthielt, aufgrund von Speichermangel fehl.
- Bei Validierungsprüfungen wird der Importvorgang jetzt erwartungsgemäß angehalten, wenn keine gültigen Daten zum Importieren vorhanden sind, und Magento Open Source zeigt jetzt diesen Fehler an:
There are no valid rows to import
. Zuvor wurde die Validierung unter diesen Bedingungen erfolgreich durchgeführt, aber der Importvorgang schlug mit der folgenden Meldung fehl:entity values are mixed
. GitHub-32905
- Beim Importieren von URL-Schlüsseln mit demselben Produkt werden vorhandene standardmäßige Store-Ansichtsschlüssel nicht mehr überschrieben oder gelöscht. URL-Neuschreibungen werden jetzt nur für Store-Ansichten neu generiert, wenn kein überschriebener
url_key
vorhanden ist. Zuvor wurde beim Importieren von URL-Neuschreibungen mit demselben URL-Schlüssel der vorhandene standardmäßige URL-Schlüssel der Store-Ansicht überschrieben. (key_store
URL-Neuschreibungen wurden gelöscht, aber die URL-Neuschreibungen auf der Standard-Store-Ansichtsebene für das Produkt waren dennoch aufkey_store
festgelegt.)
- Die Anzahl der Produkte ändert sich beim Import nicht mehr unerwartet. Die Cache-Leerung wird jetzt auf einen Zeitpunkt nach dem Importvorgang verschoben.
- Der Status geplanter Importaktionen gibt nun präzise den Erfolg oder Misserfolg des Importvorgangs an. Zuvor wurden alle Aktionen als erfolgreich protokolliert.
- Magento Open Source berücksichtigt jetzt beim Import von Kundendatensätzen die Disable Automatic Group Change Based on VAT ID. Zuvor wurde der
disable_auto_group_change
Wert in den Importdateien ignoriert. GitHub-36409
Magento\Framework\Convert\Excel
verarbeitet jetzt erfolgreich Zahlen, denen ein Leerzeichen vorangestellt ist. Die Excel-XML kodiert Felder jetzt alsString
. Zuvor kodierte der Excel-Writer diese Werte alsnumber
, was zu ungültigen Dateien führte. GitHub-33422
- Händler können jetzt das Gebietsschema angeben, in dem Importdaten angezeigt werden und wie Datenvalidatoren diese Daten analysieren sollen. Wenn kein Gebietsschemawert angegeben ist, verwendet Magento Open Source das standardmäßige Konfigurationsgebietsschema (nicht die standardmäßige Store-Ansicht), um die Daten zu analysieren. In Admin verwenden Import- und Exportprozesse weiterhin das Gebietsschema der Admin-Benutzeroberfläche, um Daten zu importieren, zu analysieren und zu formatieren.
- Beim Importieren von Produkten mit
country_of_manufacture
, die von einem Admin-Benutzer mit einer anderen Gebietsschema-Einstellung als dem Admin-Benutzer erstellt wurden, der die Produkte importiert, wird kein Validierungsfehler mehr ausgegeben. Zuvor konnte dieser Importvorgang zu einem Validierungsfehler für dascountry_of_manufacture
führen.
- Exportierte Produkte haben jetzt den richtigen
manage_stock
, wenn deruse_config_manage_stock
gleich1
ist. Zuvor war dieser Standardwert falsch.
- Magento Open Source zeigt jetzt im geplanten Importraster eine informative Fehlermeldung an, wenn ein Bild während eines geplanten Importvorgangs nicht erfolgreich importiert wurde. Zuvor wurde keine Fehlermeldung angezeigt.
- Der Produktimport wird nicht mehr unterbrochen, wenn Produktbilder fehlen. Wenn zuvor beim Import eines Drittanbieterdienstes mit einer CSV-Datei ein Produktbild fehlte, wurde Magento Open Source dieser Fehler angezeigt:
Maximum error count has been reached or a system error is occurred!
.
- Der Produktimportvorgang gibt keinen Tauglichkeitsprüfung Fehler mehr aus, wenn ein Attributwert in einer
configurable_variations
Spalte ein Komma enthält.
- Die Dekodierung wurde vom Exportprozess ausgeschlossen. Der Text der CSV Exportdatei bleibt nach dem Import unverändert. Daher ändert sich die Beschreibung nach einem erneuten Import nicht. Zuvor wurden HTML Tags nach dem Export und Import von Produkten im Page Builder Bearbeiter entfernt.
- Nicht standardmäßige Konfigurationen (Website oder Geschäft Umfang), die als Umgebung hinzugefügt werden, unterbrechen den
app:config:import
Prozess nicht mehr mit einem Rekursionsfehler.
- Katalogsuche und Preisindizierer im Speichermodus aktualisieren werden nach dem Import nicht mehr ungültig. Zuvor wurde die Version des Elasticsearch-Indexerdokuments geändert, wenn neue und vorhandene Produkte importiert wurden.
- Produktberichte werden jetzt in das
var
exportiert. Zuvor wurden diese Berichte in das Stammverzeichnis des Dokuments exportiert, das in Cloud-Instanzen ein schreibgeschütztes Verzeichnis ist.
- Leere Mehrfachauswahlfelder für Kundenadressen unterbrechen oder stoppen den Exportvorgang nicht mehr.
Index
- Verbesserte Leistung des
catalogrule_product
Indexers, wenn kein Katalog Regel festgelegt ist. GitHub-34784
- Probleme mit der Leistung des Preisindexers wurden behoben. Die Indexerleistung verschlechtert sich nicht mehr allmählich. Der Indexer wurde umgestaltet, um die Verarbeitungsgeschwindigkeit des Indexers zu erhöhen, indem geändert wird, wie temporäre Tabellen erstellt werden. Diese temporären Tabellen werden nun neu erstellt, anstatt von aufwändigeren DELETE-Anweisungen adressiert zu werden.
- Die Leistung des Preisindexers wurde verbessert. Dem Preisindexer wurde ein Indexhinweis hinzugefügt, der die Laufzeiten von MySQL-Abfragen verbessert, die während der Indizierung ausgelöst werden.
- Alle Indexer verwenden jetzt dieselben Farben, um den Indexerstatus darzustellen. GitHub-34648
- Die Leistung des Produktindexers für Katalogregeln in Bereitstellungen, in denen Regeln nicht allen Websites zugewiesen sind, wurde verbessert.
- Das Erstellen eines benutzerdefinierten Produkttyps bei festgelegten Indexern führt nicht mehr dazu Update on schedule , dass die Aufgabe der Indexaktualisierung
cron
fehlschlägt. GitHub-36471
bin/magento indexer:reindex customer_grid
schlägt nicht mehr mit einem MySQL-Fehler fehl, wenn das Kundenraster neu erstellte benutzerdefinierte Kundenattribute enthält. GitHub-36233
- Wenn Sie den Indexermodus für mehrere Indexer ändern (d. h. einen Massenaktionen-Indexermodus ändern), wird der Modus eines Indexers jetzt nur mehr geändert, wenn sich der aktuelle Modus von dem angewendeten Modus unterscheidet. Dies verbessert die Leistung, indem unnötige Zugriffe zur Datenbank vermieden werden. GitHub-36823
- Die Indizierung von Produkten mit vielen Attributoptionen wurde verbessert. GitHub-36386
Infrastruktur
- Dem Admin Usage Enable Controller wurde eine fehlende
return
-Anweisung hinzugefügt. Zuvor gab es keinereturn
-Anweisung, und der Controller inFrontendController
Klasse wurde falsch verarbeitet. GitHub-31374
- MySQL-
CREATE TEMPORARY TABLE ... LIKE
wurde durch überarbeiteteCREATE TEMPORARY TABLE
ersetzt, um die Kompatibilität mit MySQL 8.x sicherzustellen. GitHub-37926
- Magento Open Source enthält in der Fehlermeldung, die angezeigt wird, wenn eine fehlerhafte HTTP-Anfrage an den Server gesendet wurde, nicht mehr den vollständigen Pfad zum Stammverzeichnis des Servers. Als zweites Argument werden jetzt nur noch Zeichenfolgen an die
explode
-Methode übergeben.
restricted_classes.php
hatZend_Validate_File_Upload
ersetzt. Zuvor stürzte der Validator beim Hochladen einer Importdatei ab, die größer ist als der inphp.ini
konfigurierte Wert. GitHub-37281
- Die E-Mail-Vorlagen-Engine kann jetzt bestimmte verschachtelte Anweisungen korrekt verarbeiten (z. B.
{{if}}{{depend}}...{{/depend}}{{/if}}
). GitHub-36438
product
Abfragen mit Aggregationsdaten geben jetzt die richtigen Beschriftungswerte für boolesche Produkteigenschaften zurück. GitHub-29123
- ukrainische Regionen in die
directory_country_region
Tabelle aufgenommen. GitHub-35187
- CSS-Dateien sind nicht mehr beschädigt, wenn sie zusammengeführt werden, wenn
var/tmp
undpub/static
auf unterschiedlichen Dateisystemen sind und CSS Merging Enabled aktiviert ist. Temporäre Dateien wurden im selben statischen Verzeichnis wie die Zieldatei erstellt, um sicherzustellen, dass sich beide Dateien im selben Dateisystem befinden. Daher ist der Aufruf zum Umbenennen atomar. GitHub-29172
- Fehlerkorrektur - Beim Aufrufen einer Memberfunktion
getId()
aufint
tritt jetzt kein Fehler mehr auf, der gelegentlich eine Ausnahme auslöst, wenn ein Kunde in Admin angezeigt wird.
- Typenprüfungen werden jetzt für den Array-Typ im Design-Design-Konfigurations-Prozessor erzwungen. GitHub-34440
Inventory management
- Produkte werden jetzt nach einer Gutschrift, die eine Rückgabe der Produktmenge enthält, automatisch in den Lagerstatus zurückversetzt. Zuvor mussten Händler den Lagerstatus eines Produkts manuell ändern, wenn ein Produkt nicht vorrätig war, aber eine Gutschrift den Lagerbestand dieses Produkts zurückgab.
- Die Leistung des Inventar-Indexers im asynchronen Modus wurde verbessert, indem redundante Anfragen zur Neuindizierung von standardmäßigen Quellelementen entfernt wurden.
- Es wurden Probleme mit dem Inventar-Indexer behoben, die sich auf die Genauigkeit der Storefront-Bestandsanzahl von konfigurierbaren Produkten auswirkten. GitHub-36421
- Die Aktualisierung von Bestandsquellenelementen über REST
V1/inventory/source-items
funktioniert jetzt schneller. Der Aufruf Trigger keinen Neuindizierungs- oder Cache-Bereinigungsvorgang mehr für unveränderte Inventarprodukte.
- REST
V1/products/<sku>
Trigger jetzt eine automatische Neuindizierung von Aktien, wenn der Lagerstatus eines Produkts aktualisiert wird. Zuvor wurde für das Produkt, das aktualisiert wird, kein Neuindex der Aktien ausgelöst.
- Der konfigurierbare Produktbestandsstatus wird jetzt in der Storefront erwartungsgemäß aktualisiert, wenn untergeordnete Produkte von
V1/inventory/source-items
aktualisiert werden.
- Der
POST <store_code>/V1/inventory/source-items
REST-Aufruf validiert jetzt die Payload für Leerzeichen in zurückgegebenen Inventarquellenelementen und sendet bei Bedarf eine Fehlermeldung zur Validierung.
- Händler können jetzt Käuferinnen und Käufer benachrichtigen, dass eine Bestellung zur Abholung bereit ist, wenn die No Manage Stock für ein Produkt aktiviert ist. Zuvor hat Magento Open Source beim Aktivieren dieser Einstellung die folgende Fehlermeldung angezeigt:
Your order is not ready for pickup
.
- Händler können jetzt eine Gutschrift für Bestellungen erstellen, aus denen ein einfaches Produkt gelöscht wurde, das mit einem konfigurierbaren Produkt verknüpft ist. Zuvor konnten Händler die Gutschrift nicht erstellen, und Magento Open Source hat eine
TypeError
Ausnahme ausgelöst.
- Die Anzahl der Admin-Rasterquellen gibt jetzt gültige Datensätze zurück, nachdem ein Filter angewendet wurde. Zuvor gab die
getSourcesCount
-Methode immer die Gesamtzahl der Quellen zurück, nachdem ein Filter angewendet wurde.
- Die Kategorieseite wird nicht mehr zum Admin-Dashboard umgeleitet, wenn Sie Produkte mit der Option „Nach unten verschieben“ sortieren. Das Problem wurde behoben, indem die SQL-Join-Anweisung erst dann in die bedingte Anweisung eingefügt wurde, wenn sichergestellt wurde, dass sie bereits nicht enthalten ist. Zuvor wurde die Seite mit der folgenden Meldung zum Admin-Dashboard weitergeleitet:
Invalid security or form key. Please refresh the page
.
AUTO_INCREMENT
derinventory_source_item
Tabelle wird nicht mehr mit jedemUPDATE
erhöht. Zuvor wurde dieAUTO_INCREMENT
dieser Tabelle durch jede Aktualisierung erhöht, was letztendlich dazu führte, dass derAUTO_INCREMENT
außerhalb des Bereichs lag, wenn ein neuer Datensatz zurinventory_source_item table
hinzugefügt wurde. Admin-Benutzer erhielten daher die folgende Fehlermeldung, als sie versuchten, ein neues Produkt über die Admin-Numeric value out of range...
zu erstellen: .
- Admin-Benutzer können jetzt über die Admin ein Produkt zu einem Kundenwagen für einen bestimmten Store-Ansichtsumfang mit Inventory management hinzufügen. Zuvor wurde die Lager-ID nicht ordnungsgemäß bestimmt und Admin-Benutzer konnten das Produkt nicht zum Warenkorb hinzufügen.
- Die Synchronisierung zwischen Inventar und Katalog beruht nicht mehr auf der Synchronize with Catalog. Zuvor wurden Produkte nur dann ordnungsgemäß synchronisiert, wenn diese Einstellung aktiviert war.
- Magento Open Source gibt nach dem Neuladen der Seite keinen Fehler mehr aus, wenn ein Käufer eine Produktmenge von einer Bestellung abzieht, die in den verfügbaren Produktbereich fällt, während er die Versandquelle auswählt.
- Der Status Konfigurierbarer Produktbestand wird jetzt ordnungsgemäß aktualisiert, wenn ein konfigurierbares Produkt und der Wert der untergeordneten
Stock Availability
durch eine Masseninventaraktualisierung aktualisiert werden. Bisher war es nicht möglich, ein konfigurierbares Produkt und seine untergeordneten Produkte per Massenaktualisierung wieder in den Bestand zurückzubringen.
- Der Datentyp für nicht standardmäßige Quellen wurde aktualisiert, um
DECIMAL (12, 4)
bis zu acht ganzzahlige Ziffern zu unterstützen, was der gleichen Grenze entspricht, die für Standardmaterial implementiert wurde. Dieser Wert ist jetzt mit den Admin-Produktseiten Synchronisation, die die Eingabe Tauglichkeitsprüfung von bis zu achtstelligen Eingaben für alle Arten von Warenbestand-Quellen unterstützen. Zuvor wurde die Eingabe für das Quantity Feld (für nicht standardmäßige Quellen) nur mit bis zu sechs Ziffern unterstützt.
- Sowohl die Standard- als auch die Nicht-Standard-Quelle zeigen jetzt die richtigen Informationen für die verkäufliche Produktmenge an, wenn eine nicht standardmäßige Quelle, die in der Storefront bestellt wurde, für den Versand verarbeitet wird. Zuvor hat Magento Open Source einen falschen Lagerstatus für Produktquellen angezeigt.
\Magento\Catalog\Model\Product::getIsSalable()
gibt jetzt den Lagerstatus basierend auf dem im Produktobjekt (\Magento\Catalog\Model\Product::getStoreId()
) definierten Umfang zurück. Zuvor hatgetIsSalable()
den Lagerstatus basierend auf dem aktuellen Umfang zurückgegeben, unabhängig vom Produktobjekt.
Protokollierung
- Admin-Benutzer können jetzt die Protokolle für Massenaktionen, die von Integrationen erstellt wurden, im Abschnitt Massenaktionsprotokoll des Admin-Bereichs einsehen.
Login
- Das Zurücksetzen eines Kennworts in einem Browser und das anschließende Anmelden über einen anderen Browser führen nicht mehr zu einer Ausnahme. GitHub-36447
- Kunden werden nun nach der erwarteten Aktivierung einer Konto zum Log-in Seite weitergeleitet. Zuvor wurden Kunden automatisch angemeldet.
Newsletter
- Commerce prüft jetzt, ob die Newsletter-Abonnementfunktion aktiviert ist, bevor neue Abonnenten für einen Newsletter zugelassen werden. GitHub-33040
Bestellungen
- Produkte, die aus dem Admin-Warenkorb in die Liste der zu bestellenden Artikel verschoben wurden, werden jetzt wie erwartet aus dem Warenkorb gelöscht. GitHub-37538
- Händler können jetzt wie erwartet Gutschriften für die teilweise Rücksendung von Bestellungen erstellen, die teilweise durch Belohnungspunkte bezahlt wurden. Zuvor wurde beim Erstellen einer partiellen Rücksendung durch einen Händler der Bestellstatus fälschlicherweise als „Geschlossen“ identifiziert, und auf der Seite „Admin-Auftrag“ wurden keine Gutschriftenoptionen angezeigt.
- Magento Open Source wendet nun den korrekten Rabattbetrag auf teilweise stornierte Bestellungen an. Zuvor wurde der Rabattbetrag, wie er in der Spalte
base_discount_cancelled
berechnet wurde, bei einer Änderung eines Auftrags falsch berechnet. Die Unterstützung für negative Werte wurde den Rechnungen für reduzierte Bestellungen hinzugefügt.
- Magento Open Source sortiert jetzt benutzerdefinierte Attribute von Kundenadressen basierend auf der Sortierreihenfolge, die angegeben wurde, als der Administrator die Bestellung in Admin erstellt hat.
- Die Seite „Admin-Kundenauftragsraster“ wird jetzt erwartungsgemäß geladen, wenn ein Händler eine Suche auf dieser Seite initiiert. Wenn ein Händler zuvor versuchte, Bestellungen aus dieser Tabelle zu suchen, fror der Seite ein und Magento Open Source zeigte einen
Request-URI Too Long
Fehler in der Browser-Konsole an.
- Die Leistung der
OrderRepository::get()
Methode wurde verbessert, indem die Anzahl der Ladevorgänge für bestellen aus der Datenbank verringert wurde. Zuvor wurde bei dieser Methode ein bestellen mehrmals geladen. GitHub-36636
- Händler können jetzt Gutschriften für Bestellungen erstellen, die einige Artikel mit einer Gesamtsumme von Null enthalten, wenn andere bestellen Artikel zur Rückerstattung verfügbar sind. Bisher konnten Händler nicht mehrere Rückerstattungen durchführen, wenn ein Kunde einen Rabatt von 100 % auf einige Artikel im bestellen hatte.
- Links zwischen untergeordneten und übergeordneten Produkten werden jetzt auf der bestellen Seite angezeigt, wenn das untergeordnete Produkt vom Administrator erneut bestellen wird. GitHub-37028
- Die Emulation beginnt jetzt während
send()
Aufrufen, sobald die Emulation während desgetInfoBlockHtml()
-Aufrufs abgeschlossen ist, und es werden keine Fehler protokolliert. Zuvor wurde diesystem.log
-Datei mit diesem Fehler überschwemmt:main.ERROR: Environment emulation nesting is not allowed
. GitHub-35603
- Händler können jetzt Gutschriften für Bestellungen generieren, die einige Artikel mit einer Gesamtsumme von null enthalten, wenn andere Bestellartikel zur Rückerstattung verfügbar sind. Zuvor konnten Händler nicht mehrere Rückerstattungen durchführen, wenn ein Kunde einen Rabatt von 100 % auf einige Artikel in der Bestellung hatte.
- Links zwischen untergeordneten und übergeordneten Produkten werden jetzt auf der Bestellseite angezeigt, wenn Sie das untergeordnete Produkt von der Administratorseite neu bestellen. GitHub-37028
- Der Kopfbereich des bestellen Seite enthält nun die erwarteten Informationen über die gesendete Rechnung, Gutschrift und Sendung. GitHub-27474
- Gutschriften für Aufträge, die nur ein konfigurierbares Produkt enthalten, werden nun korrekt generiert. Zuvor wurde die
isLast()
Funktion nicht wie erwartet zurückgegebentrue
. GitHub-36722
- Die Leistung des
aggregate_sales_report_bestsellers_data
Cronjobs wurde durch Optimierung der Hauptdaten Abfrage verbessert.
- Der Bestellstatus ist jetzt korrekt, wenn eine teilweise Rückerstattung für eine bestellen erfolgt ist, die Paket Produkte enthält. Zuvor wurde bestellen Status als "Abgeschlossen" aufgeführt, nachdem eine teilweise Rückerstattung ausgestellt wurde, Linear die verbleibende bestellen jedoch nicht abgeschlossen war. GitHub-37377
- Käufer können ein Produkt nicht mehr mit einem benutzerdefinierten Preis bestellen, wenn ein bestellen zum ersten Mal vom Administrator mit dem einmaligen benutzerdefinierten Preis generiert wird. Wenn ein bestellen zuvor einen Artikel mit benutzerdefinierten Preisen enthielt, wurde dieser benutzerdefinierte Preis für andere Bestellungen angewendet, die mit der Funktionen für die erneute bestellen aufgegeben wurden.
- Käufer können falsche bestellen Status nicht mehr auf der bestellen Seite speichern. Der Bestellstatus wird nicht mehr von Alle Applikationen in "Verarbeitung" geändert, wenn ein Artikel versandt wird. Bisher haben Magento Open Source den aktuellen bestellen-Status nicht überprüft, bevor bestellen Status gespeichert wurde, nachdem ein Erstkäufer einen Kommentar eingegeben hatte. GitHub-36562
- Das Umsatzraster bestellen wird nun wie erwartet asynchron mit allen Bestellungen synchronisiert. GitHub-36562
- Die Funktionen zum Filtern nach Kaufdatum im Abschnitt Kundenaufträge der Seite funktioniert jetzt wie erwartet. Zuvor trat ein JavaScript-Fehler auf, wenn die Zeitzonen-Konversion Logik einen Fehler ausgab, wenn dieselbe Zeitzone für die Methode angegeben wurde.
- Das Admin-Dashboard zeigt nun beim ersten Laden die korrekte Auftragsstatistik an. Bisher wurden im Dashboard falsche bestellen Informationen angezeigt, nach Aktualisierung der Zeitraum jedoch die richtigen Informationen.
- Admin-Benutzer werden jetzt wie erwartet zum bestellen Seite umgeleitet, nachdem sie bei der Erstellung einer neuen bestellen vom Administrator eine Geschäft Ansicht ausgewählt haben.
- Der
GET V1/orders/<OrderID>
Endpunkt gibt nun Informationen sowohl zu den konfigurierbaren als auch zu den einfachen Produkten in der bestellen zurück, unabhängig vom Lagerstatus der einfachen Produkte. Admin-Benutzer können jetzt nur dann Bestellungen aufgeben, wenn die ausgewählten Artikel (Produkte) auf Lager oder verkäuflich sind. Zuvor hat diese API nur Informationen zu den Produkten zurückgegeben, die auf Lager waren.
- Die Gutschriftenseite stürzt nicht mehr ab, wenn der kostenlose Versand aktiviert ist, wenn der Versandpreis Steuern enthält und Steuerberechnungen nach Rabatten angewendet werden. Zuvor hatte Magento Open Source eine
Division by zero
Ausnahme ausgelöst. GitHub-36800
- Die Verwendung des
rest/V1/orders/{id}/comments
Endpunkts zum Posting eines Kommentars zu einer bestellen, ohne bestellen Status anzugeben, wirkt sich nicht mehr auf die Anzeige der bestellen aus. Zuvor wurde bestellen Status in densales_order
Tabellen undsales_order_grid
als NULL protokolliert, und weder das Seite "Meine Bestellungen" noch das bestellen-Raster "Admin" zeigten die bestellen an. GitHub-34180
Page Builder
- Bilder behalten nun das korrekte Seitenverhältnis bei, wenn die Größe in Page Builder geändert wird. GitHub-37493
- Page Builder zeigt nun bei Bedarf Fehlermeldungen an, wenn Sie versuchen, ein Bild zu Upload, das größer als die angegebene maximale Dateigröße ist. Zuvor hat Commerce eine Popup-Warnmeldung für hochgeladene Bilddateien angezeigt, die kleiner waren als die angegebene Maximalgröße.
- CMS-Seitenproduktregler enthalten jetzt die übergeordneten Produkte aller untergeordneten Produkte, die für die Aufnahme in den Regler ausgewählt wurden. Zuvor wurden übergeordnete Produkte aus dem Schieberegler ausgeschlossen.
- HTML-konvertierte Inhalte werden jetzt wie erwartet in E-Mail-Vorlagen angezeigt, wenn das
Magento_AsyncConfig
deaktiviert ist. Zuvor enthielten E-Mail-Vorlagen nur unbearbeitete HTML.
- Die Leistung von Page Builder-Speichervorgängen im Chrome-Browser wurde verbessert.
- Wenn Sie ein Produkt aus dem Page Builder-Karussell zu einem Warenkorb hinzufügen, wird die Artikelmenge von Seiten mit zwei verschiedenen Widgets, die dieselben Produkte anzeigen, nicht mehr dupliziert.
- Page Builder fügt das
tabindex
HTML-Attribut nicht mehr zu Hyperlink-Tags hinzu,a
wenn Sie einen Hyperlink bearbeiten und dann eine Vorlage speichern.
- Das Produkt-Widget und die Page Builder-Vorschau verarbeiten jetzt HTML-Sonderzeichen ordnungsgemäß. Zuvor hat das Produkt-Widget SKUs, die das
&
enthalten, nicht korrekt angezeigt.
- Page Builder Textelement Inhalte wird nun wie erwartet aktualisiert, wenn Sie den kompletten Inhalte Block im Vorschau Modus auswählen und aktualisieren.
- Das Kopieren und Einfügen von Text von einer Page Builder Text-Bearbeiter in eine andere funktioniert jetzt wie erwartet. Zuvor konnte die Seite, in die Sie Text einfügen wollten, nicht gespeichert werden, und Magento Open Source hat folgenden Konsolenfehler angezeigt:
[ERROR] Page Builder was rendering for 5 seconds without releasing locks.
.
column-block
Page Builder Content-Typ, die in älteren Versionen von Page Builder erstellt wurde, wird nun korrekt angezeigt.
- Das Filtern nach der Beschreibung der Produktmetadaten während der Produkterstellung wurde vom Administrator verbessert. Wenn Page Builder zuvor aktiviert war, wurde die Beschreibung der Produktmetadaten basierend auf der Standard-Maske
{{name}} {{description}}
. Die standardmäßige Meta-Beschreibungsmaske für Produkte besteht nun aus{{name}}
. GitHub-36107
- Trigger Beim Hinzufügen eines dynamischen Bausteins ohne Inhalt tritt kein Fehler mehr auf.
- Probleme mit der Anzeige von Spalten im Page Builder-Inhalt wurden behoben. Zuvor wurde
column-line
Content-Typ-Inhalt nicht gerendert. GitHub-3949
Zahlung
- Magento Open Source verarbeitet jetzt 502-Fehler von PayPal korrekt, indem es die Auftragserstellung bei diesem Fehler verhindert. Zuvor wurden Bestellungen trotz eines 502-Fehlers von PayPal erstellt, der zu Inkonsistenzen zwischen Magento Open Source Datensätzen und PayPal Lead.
- PayPal Express Checkout-Transaktionen enthalten jetzt untergeordnete Produkt-SKUs und vollständige Produkttitel. Die
Magento/Paypal/Model/Cart.php
Datei erfasst nun untergeordnete Produkt-SKUs mit ihrem übergeordneten Produkttitel, um den Produkttitel mit dem untergeordneten Produktnummer zu identifizieren. GitHub-36808
- Die Card Security Code Does Not Match Konfigurationseinstellung wird nun wie erwartet während des Payflow Pro-Zahlungsvorgangs verarbeitet. Zuvor wurde dieser Bewertungsprozess nie abgeschlossen, wodurch der Checkout blockiert wurde.
- Die Option "Vault-Zahlungsmethode" wird nicht mehr in der arbeitsablauf "Admin Checkout" angezeigt, wenn die Erstkäufer nicht über ein Vault-Token verfügt. GitHub-36273
- Die Venmo Button können jetzt versteckt werden, wenn die PayPal Schaltflächen aktiviert sind. Zuvor war es nicht möglich, Button Venmo von den Seiten Warenkorb, Mini-Warenkorb, Produktdetails oder Checkout zu entfernen.
- Käufer können jetzt eine Versandart auswählen, während sie während der Checkout Coupon Code anwenden. Zuvor haben Magento Open Source unter diesen Bedingungen einen Fehler ausgegeben und dem bestellen den Pauschalversand zugewiesen.
- Probleme mit der Storefront-Verarbeitung der Zahlungsmethoden PayPal und PayPal Kredit wurden behoben.
- Es wurden Probleme mit Fallback-URLs für Bestellungen behoben, die mit Ideal-Zahlungen bezahlt wurden, wenn die lokale Zahlung aktiviert war.
- Käufer können keine PayPal bestellen mehr erstellen, ohne einen Nachnamen hinzuzufügen.
Braintree
- Braintree Zahlungsinformationen werden jetzt pro Geschäft gespeichert, und Käufer sehen jetzt nur Karte Informationen, die in der Geschäft gespeichert wurden, in der sie einkaufen. Zuvor konnten Käufer während der Checkout gespeicherte Karte-Informationen aus allen Filialen sehen. GitHub-34253
- Käufer können jetzt eine bestellen auschecken, die an mehrere Adressen versendet wird, indem sie eine Braintree Zahlungsmethode verwenden, wenn der Tresor für Karte-Zahlungen deaktiviert ist. GitHub-37615
- Teilweise fakturierte Bestellungen werden jetzt erwartungsgemäß im richtigen Konto in Bereitstellungen erfasst, in denen Händler zwei verschiedene Händlerkonto-IDs für dieselbe Währung in ihrem Braintree-Konto haben.
- Magento Open Source gibt bei der Erstellung einer zweiten Teilrechnung für eine von Braintree bezahlte Bestellung keinen Fehler mehr aus, wenn die Enable Vault for Card Payments aktiviert ist. Wenn ein Händler zuvor versuchte, eine zweite Rechnung zu erstellen, gab Magento Open Source diesen Fehler aus:
Your payment could not be taken. Please try again or use a different payment method. Payment method token is invalid
- Die Option "Braintree Vault-Zahlungsmethode“ ist im Checkout-Workflow nicht mehr automatisch deaktiviert, wenn ein Käufer seine Rechnungsadresse aktualisiert. Zuvor wurde die Auswahl der Zahlungsmethode aufgehoben, wenn der Käufer die Schaltfläche "My billing and shipping address are the same" deaktiviert hatte.
- Es wurden Probleme beim Auschecken mit PayPal bis Braintree nach dem Upgrade von Adobe Systems Commerce 2.4.5-p2 behoben. GitHub-37242
- Telefonnummern werden jetzt wie erwartet mit Adressen in den Feldern der Google Pay-Modal-Versandadresse gerendert. Zuvor fehlten Telefonnummern.
- Bestellungen werden jetzt erfolgreich mit Braintree aufgegeben, wenn die Braintree-Antwort einen leeren Wert für
threeDSecureInfo/eciFlag
enthält. Zuvor ist beim Auschecken ein PHP-Fehler aufgetreten, wenn dieser Wert leer war.
- Magento Open Source gibt keinen Fehler mehr aus, wenn ein Käufer beim Auschecken mit Google Pay aus dem Mini-Warenkorb einen Coupon auf der Bestellüberprüfungsseite anwendet. Zuvor wurden Käufer zu einer 404-Seite umgeleitet.
- Käufer können jetzt mit Braintree Payments und Magento Open Source 2.4.6 mit unsichtbarem ReCAPTCHA v2 oder v3 den Checkout abschließen. GitHub-37241
- Käufer können nicht mehr auf die PayPal Button klicken, um ein konfigurierbares Produkt zu erwerben, ohne zuvor die erforderlichen Optionen auszuwählen. Bisher konnten Käufer auf die PayPal Button klicken und wurden anschließend mit einer Fehlermeldung zurück zum Produktseite geleitet:
- Die PayPal Button wird nun wie erwartet auf den Warenkorb- und Mini-Warenkorb Seiten angezeigt. Bisher wurde diese Button nicht in der Warenkorb Seite angezeigt und auf der Mini-Warenkorb Seite dupliziert.
Leistung
- Mehrfachklicks im Drop-down-Menü " Massenaktionen" der Seite "Verkäufe > Bestellungen " generieren nicht mehr mehrere POST-Anfragen. GitHub-37997
- Nur
200
- oder404
werden zwischengespeichert, wenn ein Käufer zu einer Seite navigiert, die eine 301-Umleitung Trigger, es sei denn, die Kopfzeile des Cache-Steuerelements der Seite enthältprivate
. Zuvor wurde ein HTTP-Status 200 mitprivate
im Cache-Control-Header zwischengespeichert, und ein HTTP-Status 301 wurde zwischengespeichert, es sei denn, er enthieltprivate
im Cache-Control-Header. GitHub-36492
- Nicht verwendetes
Magento\Catalog\Controller\Adminhtml\Product\Initialization\Helper
ausMagento\Catalog\Model\ProductRepository
entfernt. Zuvor hatProductRepository
diesen Helper geladen, der einAdminhtml
-Controller ist. GitHub-37864
- Verbesserte Leistung der Seitenladegeschwindigkeit, wenn viele Optionen zu gebündelten Produkten hinzugefügt werden. GitHub-29409
- Der Prozess der Zuordnung von Produkten zu Kategorien aus der Products in Category Tab wurde optimiert. Die Assign Schaltflächen "und Remove " im Add Product by SKU Tab sind jetzt deaktiviert, bis die Produkte vollständig im Raster geladen sind. Bisher konnten Administratoren keine Produkte Produktnummer in Katalogen hinzufügen, die Millionen von registrierten Produkten enthielten.
- Die Leistung der Mutation bei der
addProductToCart
Ausführung mit vielen benutzerdefinierten Produktattributen wurde verbessert. Wenn diese Mutation zuvor mit vielen Produktattributen (ca. 1000) ausgeführt wurde, haben Magento Open Source versucht, alle Produktattribute zu laden.
- Leistungsprobleme beim Laden von Produktattributen, die von Warenkorb Regeln verwendet werden, wurden behoben. Es werden jetzt nur noch Produktattribute für aktive Warenkorbregeln geladen.
- Der
bin/magento setup:perf:generate-fixtures setup/performance-toolkit/profiles/ee/small.xml
-Befehl wird jetzt erfolgreich ausgeführt, wenn er mehrmals ausgeführt wird. Zuvor wurde dieser Fehler bei mehrmaliger Ausführung ausgegeben:Coupon with the same code already exists
.
Beförderung
- Die Auswirkungen der Fixed amount discount for whole cart Preisregel werden bei Anwendung mit der Apply to shipping amount nun wie erwartet proportional auf die Produkte und Versandbeträge verteilt. Zuvor waren die Rabattberechnungen falsch.
- Die Discard Subsequent Rules wird jetzt erwartungsgemäß angewendet. Wenn diese Einstellung aktiviert ist, können andere Regeln mit niedriger Priorität nur auf ein anderes Produkt angewendet werden. GitHub-35707
reCAPTCHA
- Unsichtbares reCAPTCHA v3 funktioniert jetzt für die Sign in-Schaltfläche der Checkout-Seite erwartungsgemäß. Zuvor war es nicht möglich, sich einzuloggen, und Commerce gab JavaScript Fehler aus.
- Das Google reCAPTCHA im Checkout arbeitsablauf funktioniert jetzt wie erwartet für Schecks, Zahlungsanweisungen und benutzerdefinierte Zahlungsmethoden.
- Adobe Systems Commerce-Formulare können nicht mehr gesendet werden, bevor das Google ReCAPTCHA-Kontrollkästchen geladen wird.
- Das reCAPTCHA-Widget steht nun vor der Place Order Button auf der Zahlungs Seite. Zuvor wurde das Widget oben auf der Seite angezeigt.
Berichte
- Die Auswertung „Bestellungen“ (REPORTS > Sales > Orders) enthält jetzt die korrekten Bestellwerte, wenn Bestellungen von Geschäften generiert werden, die keine Standardwährungen verwenden. Zuvor enthielt dieser Bericht falsche Werte. GitHub-36742
- Irreführende Informationen im Umsatz- bestellen Berichtsformular wurden aus Gründen der Übersichtlichkeit überarbeitet.
- Admin-Benutzer können jetzt über die Berichtseite „Transaktionsabbrüche“ mit E-Mails nach Datensätzen suchen, die
+
(Pluszeichen) enthalten. GitHub-36560
Suche search-heading
- Die Vorschläge für die automatische Vervollständigung im Mini-Such-Frontend des Headers funktionieren jetzt erwartungsgemäß. Zuvor wurde dieses Feld bei aktivierter Funktion nicht durch automatische Vervollständigung ausgefüllt. GitHub-37557
- Die Leistung von Abfragen in der Admin-Suchleiste wurde durch das Hinzufügen eines Indexers verbessert. Zuvor war die Abfrage umso länger auszuführen, je größer die
search_query
Tabelle war.
- Die alphabetische Sortierung von Produkten nach Namen funktioniert nun fehlerfrei für Namen, die Türkisch Zeichen enthalten.
- Das Use in Search Results Layered Navigation Produktattribut Eigenschaft wird jetzt nur angezeigt, wenn Use in Search die Einstellung auf Yes eingestellt ist.
- Die erweiterte suchen Preis und Produktnummer Filter funktionieren jetzt korrekt, wenn sie zusammen in einer erweiterten suchen angewendet werden. GitHub-37581
- Es wird nicht mehr nach leeren suchen Feldern gesucht. Dadurch verringert sich die Größe der
search_query
Tabelle. Bisher ergaben falsche Abfragen oder Abfragen leerer suchen Felder einen riesigen Datensatz, was die Größe dersearch_query
Tabelle vergrößerte und zu Problemen mit/tmp
führte.
- Storefront-Filter funktionieren jetzt wie erwartet, wenn Katalogeinträge mit benutzerdefinierten Dropdown-Attributen sortiert werden.
- Suchergebnisse zeigen jetzt relevante Ergebnisse basierend auf der Suchgewichtung der Attribute wie erwartet an.
- Mögliche Werte werden nun im informativen Text unter dem
Storefront Properties
Eingabefeld desSearch Weight
-Attributs unter Admin Stores > Attributes > Product beschrieben. GitHub-36646
Lieferung
- Die Regeln für den Warenkorbpreis funktionieren jetzt wie erwartet, wenn ein Produkt-Bundle zum Warenkorb hinzugefügt wird, wenn dynamische Preisattribute deaktiviert sind. Der kostenlose Versand und die korrekte Tabellenrate werden unabhängig davon angewendet, ob das dynamische Attribut aktiviert oder deaktiviert ist. Zuvor wurde gratis Versand nicht wie erwartet angewendet.
- Magento Open Source wechselt nun Seite wie erwartet zu einer neuen Sendung, nachdem eine Teilsendung für eine bestellen erstellt wurde. Bisher haben Magento Open Source nach dem Erstellen einer Teilsendung keine vollständige Sendungs-Seite für die restlichen Produkte der bestellen erstellt. GitHub-38063
- Der Gesamtbetrag für den Versand eines bestellen an mehrere Adressen wird nun korrekt berechnet. Wenn ein Angebot zuvor mehr als eine Lieferadresse enthielt, hat der Gesamtsammler den Versandbetrag für die angegebene
$quote->getShippingAddress()
Adresse aktualisiert, anstatt ihn wie erwartet zu übergeben$shippingAssignment
. GitHub-37283
- Magento Open Source löst bei Checkout mit mehreren Lieferadressen keine Ausnahme mehr aus, wenn der Administrator User die Log-in als Kundenfunktion verwendet hat.
- Produkte werden jetzt auf der Seite Pakete erstellen korrekt aufgelistet, wenn Sie Produkte zu einem Paket hinzufügen, nachdem das Versandlabel erstellt wurde.
- Die
cart
Abfrage gibt jetzt diskrete Versandrabatte als separate Versandrabatte mit eindeutigen Rabattkennzeichnungen zurück. Die neueapplied_to
-Rabatteigenschaft unterstützt die Unterscheidung zwischen Rabatten, die auf einen Warenkorb-Artikel angewendet werden. Zuvor wurden alle Versandrabatte zu einem hartcodierten Shipping Discount zusammengefasst.
- Wenn ein Administrator bzw. eine Administratorin eine neue Bestellung erstellt, werden die entsprechenden Felder automatisch durch die Rechnungs- und Versandadressen der ursprünglichen Bestellung ausgefüllt, sobald der Administrator bzw. die Administratorin auf die Schaltfläche Reorder klickt (Admin Sales > Orders > View ). Werden dieselben Adressen im Adressbuch des Käufers gespeichert, so enthält die Neubestellung immer eine aktualisierte Version dieser Adressen. Zuvor wurde das Feld „Lieferadresse“ mit den aktualisierten Daten vorab ausgefüllt, das Feld „Rechnungsadresse“ jedoch nicht.
- Das Textfeld "Shipping Policy" ist jetzt im Bereich „Admin Store-Ansicht“ sichtbar, wenn Apply custom Shipping Policy aktiviert ist und eine benutzerdefinierte Versandrichtlinie verfügbar ist. GitHub-36425
- Die
cart
-Abfrage gibt jetzt einenselected_shipping_method
zurück, der einem deravailable_shipping_methods
Provider- und Methodencodes entspricht. Wenn eine der ausgewählten Versandmethoden zuvor einen Unterstrich enthielt, stimmten diese Träger-/Methodencodes nicht überein. GitHub-36606
- Die
setShippingAddressesOnCart
-Mutation gibt keinen Fehler mehr aus, wenn der zweite Wert im Straßen-Array null ist. Zuvor wurde diese Ausnahme ausgelöst:The address failed to save. Verify the address and try again
. GitHub-35160
Sitemap
- Die XML-Sitemap funktioniert jetzt in einer mehrstöckigen Bereitstellung erwartungsgemäß. Zuvor enthielten die Sitemaps nicht die zugewiesenen Standardseiten für jeden Store. GitHub-35001
- Händler können jetzt ein Produkt erstellen und speichern, wenn der Website-
id != 1
und der Einzelspeichermodus aktiviert ist. Zuvor ist die Speicheraktion mit dieser Meldung fehlgeschlagen:SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails
. GitHub-35009
Steuer
- Rechnungen zeigen jetzt die richtige Zwischensumme an, wenn Steuern konfiguriert und FTP aktiviert ist.
- Magento Open Source zeigt jetzt den richtigen Wert für den Regular Price an, wenn eine benutzerdefinierte Option für ein Produkt mit einem Special Price Wert ausgewählt ist, wenn Price Display Settings auf „Steuer einschließen“ gesetzt ist.
- Die Steuer ist jetzt wie erwartet im Versandpreis des Checkout-Workflows enthalten, wie in den Konfigurationseinstellungen angegeben.
- Der Wert der
cart
Abfrageapplied_taxes
Antwort enthält jetzt erwartungsgemäß alle individuellen Steuerregeln. Zuvor wurde der gesamte Steuerwert zurückgegeben, wenn mehrere Steuerregeln konfiguriert waren.
- Das Symbol „Reduzieren/Erweitern“ für den Additional Settings Abschnitt während der Erstellung von Steuerregeln funktioniert jetzt erwartungsgemäß. Zuvor funktionierte nur das Symbol „Erweitern“. GitHub-37922
- Sie können jetzt den Wert von „Land und Region des Steuersatzes“ auf der Seite „Steuerregel bearbeiten“ wie erwartet bearbeiten. Zuvor wurden Änderungen auf dieser Seite nicht gespeichert.
- Der Steuerbetrag im Bereich „Warenkorbschätzung“ wird jetzt wie erwartet aktualisiert, wenn die Versandmethode aktualisiert wird. Zuvor wurde der Steuersatz nicht aktualisiert, nachdem ein Käufer während des Checkouts das Land gewechselt hatte.
- Der
tax class
für neu erstellte einfache Produkte wird jetzt auf den Wert des übergeordneten Produkts festgelegt, wenn neue Varianten eines vorhandenen konfigurierbaren Produkts im Bereich „Store-Ansicht“ erstellt werden. Zuvor wurde dieser Wert auf „Ohne“ festgelegt. Infolgedessen wurden diese Produkte im Warenkorb nicht besteuert, und den Kunden wurden zu wenig Steuern berechnet. GitHub-37180
Test
- Der
AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders
-Test wurde verbessert, um Fehler zu vermeiden, die durch das vorzeitige Ausfüllen des E-Mail-Felds verursacht wurden.
StorefrontVerifyProductAfterPartialReindexOnSeveralWebsitesTest
wurde überarbeitet, um die Zuverlässigkeit zu verbessern. GitHub-38359
- Der
AdminSimpleProductwithTextandVisualSwatch
wurde behoben, indem ein zusätzlicher Schritt eingeführt wurde, der die bei der Suche zu verwendenden Attribute explizit festlegt.
- Fehlerkorrektur beim
SortbyTest
. GitHub-37792
- Verweise auf nicht vorhandene Klassen in Modultests wurden entfernt. GitHub-37636
- Der
AdminCreateOrderWithVirtualProductFromDefaultSourceWithBackorders
-Test wurde verbessert, um Fehler zu vermeiden, die durch das vorzeitige Ausfüllen des E-Mail-Felds verursacht wurden.
- Der
Magento\GraphQl\Catalog\ProductSearchTest::testFilterProductsBySingleCategoryId
wurde überarbeitet, um eine zufällige Kategorienreihenfolge inproducts
Abfrageantworten zu verarbeiten.
\Magento\Test\Integrity\Di\CompilerTest::testConstructorIntegrity
Test verifiziert nun alle PHP-Klassen von Modulen, die von registriert wurdenComponentRegistrar()
.
- Leistungsprobleme mit großen Arrays in
TableNameSniff
wurden behoben.
CollectionTest::testGetDateRangeFirstPart()
berücksichtigt jetzt die Sommerzeit.
UI Framework
- Das Attribut
crossorigin
wurdelinkTypes
fürHEAD
Elemente hinzugefügt.GitHub-32509
- Das Uploader Bild funktioniert jetzt wie erwartet in dynamischen Zeilen. Bilder werden nun korrekt hochgeladen, wenn sie als multinationales Array gesendet werden. GitHub-37957
- Datei Upload Stile werden im Design "Luma" nicht mehr dupliziert. GitHub-32373
- Straßenfelder im Straßenfeld Kunden Konto Adressformular werden nun korrekt gespeichert. Diese Felder werden nun anhand der im Formular angegebenen Schlüssel korrekt sortiert. GitHub-37973
- Die Werte für Cumulative Layout Shift (CLS) für Produktdetailseiten wurden verbessert. (Dieser Kennzahl quantifiziert die visuelle Stabilität Seite Layouts.) GitHub-35410
- Die Messaging von Fehlern, die beim Rendern von Vorlage auftreten, wurde verbessert. Magento Open Source zeigt jetzt eine informative Nachricht an. Bisher Magento Open Source HTML Leaks angezeigt, wenn ein PHP-Fehler auftrat.
- Benutzerdefinierte Kundenattribute (Typ
File attached
) funktionieren jetzt korrekt mit Bildern, die gelöscht und anschließend hochgeladen wurden. Bisher konnten benutzerdefinierte Attribute, die hochgeladen, dann gelöscht und dann erneut hochgeladen wurden, nicht in der Storefront gespeichert werden.
- Korrektur eines Syntaxfehlers in der Kalenderdatei Vorlage. GitHub-37725
- Admin-Benutzer können jetzt das Logo der Storefront ändern, wenn der Einzelspeichermodus aktiviert ist. Zuvor wurde in Magento Open Source das standardmäßige Fallback-Logo angezeigt. GitHub-35952
- Mixins-Konfigurationswerte sind nicht mehr leer, und jQuery-Mixins funktionieren jetzt unabhängig von der Ladeposition. Zuvor wurden jQuery-Mixins nicht konsistent über Browser hinweg geladen.
- Passwörter werden nun wie erwartet angezeigt, wenn das Show Password Kontrollkästchen im Log-in Seite aktiv ist.
- Magento Open Source zeigt jetzt korrekte Preise für Bundle-Produkte mit Sonderpreisen an.
- Der Link zur GitHub-Anfragenliste in der Vorlagendatei für die Storefront-Fußzeile wurde aktualisiert. GitHub-37214
- Das Widget Kürzlich angezeigt zeigt jetzt den korrekten Steuerbetrag in gruppierten Produktpreisen an. GitHub-35881
- Admin-Benutzer können jetzt die anpassbaren Optionen, die für das einfache Produkt erstellt wurden, wie erwartet per Drag-and-Drop verschieben. GitHub-36051
- Die bestellen der Produkt-Dropdown-Attributtypen entspricht nun der bestellen der Bilder im konfigurierbaren Produktseite. GitHub-37285
- Systemmeldungen werden jetzt schneller geladen. Nur die angezeigten Nachrichten werden geladen. Bisher wurden alle Nachrichten aus der Datenbank geladen, was sehr zeitaufwendig war.
- Das Entfernen des Breadcrumb-Knotens durch Festlegen von
remove=true
über die Layout-XML führt nicht mehr dazu, dass der Seitentitel auf der Kategorieseite entfernt wird. Zuvor wurde durch das Entfernen von Breadcrumbs der Seitentitel von der Kategorieseite entfernt.
- Das Formular zur Kundenregistrierung wird jetzt erwartungsgemäß geladen, wenn es Kundenattribute mit mehreren Auswahlen enthält. Zuvor gab es in Magento Open Source diese Ausnahme:
[2023-03-05T05:57:40.032602+00:00] report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62
. GitHub-37189
- Willkommensnachrichten, die einfache Anführungszeichen enthalten, werden jetzt korrekt und ohne Konsolenfehler in der Storefront gerendert. Wenn eine Begrüßungsnachricht zuvor ein einfaches Anführungszeichen enthielt, wurde die Begrüßungsnachricht beim Storefront-Rendering nicht geladen. In Magento Open Source wurden auch Konsolenfehler angezeigt.
- Magento Open Source gibt keinen Fehler mehr aus, wenn Sie versuchen, auf der Admin-Auftragsseite schnell die Ansicht zwischen Kommentarverlauf und Rückgabe zu ändern. Zuvor hat Magento Open Source diesen allgemeinen Fehler angezeigt:
A technical problem with the server created an error
.
- Admin-Benutzer mit Berechtigungen, die auf eine Website beschränkt sind, können jetzt Website-spezifische Produktattribute aktualisieren, die auf eine
all stores view
Umfang festgelegt sind.
- Das Lupen-Widget wird jetzt wie erwartet auf der Produktseite geladen.
- Mehrzeilige anpassbare Optionen werden jetzt in PDF-Dokumente für Rechnungen, Sendungen und Gutschriften ordnungsgemäß wiedergegeben. Bisher wurde mehrzeiligem Text ein unerwarteter Seite Umbruch vorausgegangen, und wenn der Text die Seite überschreitet, wurde der Text abgeschnitten.
- Admin-Benutzer können jetzt über den Admin eine neue Kundenadresse hinzufügen, wenn dieser Kunde für eine andere Website erstellt wurde, deren Store-ID nicht mit der Website-ID übereinstimmt. Zuvor hat Magento Open Source diese Popup-Meldung angezeigt:
Something went wrong
. GitHub-36582
- Fehlermeldungen im Zusammenhang mit dem Senden von Kommentaren auf der Seite „Bestelldetails“ sind jetzt informativer. Wenn ein Käufer zuvor auf Submit comment geklickt hat, ohne den Bestellstatus zu ändern oder Text in den Kommentarbereich einzugeben, hat Magento Open Source folgende Meldung angezeigt:
The comment is missing. Enter and try again
.
- Das Kalendersymbol wird jetzt wie erwartet in den Datumsbereich Feldern der Admin Marketing -> Cart Price Rules angezeigt, nachdem ein Datum für ein Feld ausgewählt wurde. Nachdem Sie zuvor ein Datum für ein Feld ausgewählt haben, wurde das Kalendersymbol nicht mehr in anderen Feldern angezeigt, und Magento Open Source zeigte Platzhaltertext an. GitHub-36499
- Kundenregistrierungsformulare, die Mehrfachauswahlfelder enthalten, werden jetzt erfolgreich geladen. Zuvor wurde dieses Formular nicht geladen, wenn es Felder mit Mehrfachauswahl enthielt, und der folgende Fehler wurde ausgelöst:
report.CRITICAL: Exception: Deprecated Functionality: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /magento2ee/app/code/Magento/CustomAttributeManagement/Block/Form/Renderer/Multiselect.php on line 53 in /lib/internal/Magento/Framework/App/ErrorHandler.php:62
. GitHub-37189
- Wenn Sie im Vollbildmodus der Produktgalerie auf eine Videominiatur klicken, wird das Video jetzt wie erwartet angezeigt. Zuvor wurde das Video nicht angezeigt und in der Browser-Konsole wurde ein JavaScript Fehler angezeigt. GitHub-36456
- Es wurde ein Variable zur Copyright-Zeile hinzugefügt, der jedes Jahr automatisch aktualisiert wird. GitHub-36776
- Das auf der Produktseite Regler Bild funktioniert jetzt wie erwartet im mobilen Ansicht. Zuvor wurde nur das erste Bild erfolgreich angezeigt. GitHub-37232
URL-Neuschreibungen
- URL-Neuschreibungen werden jetzt basierend auf der Sichtbarkeitskonfiguration auf Store-Ebene in Bereitstellungen mit mehreren Stores generiert. Zuvor wurden URL-Neuschreibungen für nicht standardmäßige Stores nicht generiert, wenn die Produktansicht unter dem Standard-Store Bereich auf nicht sichtbar“ festgelegt war.
Category::getUrl()
ruft keine 301-Umleitung mehr ab. GitHub-38152
- Magento Open Source generiert keine Produkt-URL-Rewrites mehr für Stammkategorien und für Produkte, die in Multi-Geschäft-Setups auf Not Visible Individually gesetzt sind, wenn fehlende URL-Rewrites für benutzerdefinierte Stores generiert werden.
- Kanonische URL-Tags spiegeln jetzt die Änderungen wie erwartet wider, nachdem die Eigenschaft für den URL-Schlüssel der Kategorie aktualisiert wurde. Zuvor wurde die veraltete Kategorie-URL verwendet, was sofort die Umleitung zur neuen URL auslöste.
- Produkt-URL-Neuschreibungen für Kategorien werden jetzt wie erwartet für alle Store-Ansichten generiert, wenn ein Produkt zu einer Kategorie hinzugefügt wird. GitHub-32910
- Magento Open Source gibt keinen Fehler mehr aus, wenn Sie versuchen, eine 301/302-Umleitung für eine Produkt-URL zu erstellen, wenn Neuschreibungen von Kategorie-/Produkt-URL aktiviert ist. Wenn ein Produkt erstellt und einer Kategorie zugewiesen wird, werden automatisierte URL-Neuschreibungen erstellt: eine für die direkte URL und eine für das Produkt über den Kategoriepfad. Wenn eine neue Neufassung der Produkt-URL erstellt wird, werden die Korrelationen zwischen Produkt, Kategorie und Store überprüft. Diese Prüfung basiert jetzt auf korrelierten Entitätseigenschaften (Kategorie und Produkt). Zuvor wurde diese Prüfung für bereits vorhandene URL-Neuschreibungen durchgeführt.
- Kategorie-URL-Neuschreibungen werden jetzt für alle Store-Ansichten generiert, wenn eine neue Kategorie aus einer CSV-Datei importiert wird.
- Die Suffix-Konfigurationen für Produkt-URLs und Kategorie-URLs stimmen jetzt mit den Suffixen in der
url_rewrite
überein. Zuvor traten Wettbewerbsbedingungen beim Aktualisieren von URL-Suffix-Konfigurationen auf, und die konfigurierten URL-Suffixe und dieurl_rewrite
-Tabelle stimmten nicht überein.
- Magento Open Source rendert die Kategoriestruktur jetzt beim Erstellen von Kategorie-URL-Neuschreibungen auf allen Ebenen. Zuvor wurden nur die ersten drei Kategorieebenen angezeigt. GitHub-36973
- Kategorie-URL-Neuschreibungen sind jetzt während des Imports einer neuen Kategorie in der CSV-Datei vorhanden.
- Multi-Store-CMS-Seiten ohne URL-Neuschreibungen werden jetzt erwartungsgemäß weitergeleitet. Zuvor wurden angeforderte CMS-Seiten mit mehreren Geschäft ohne URL Umschreibungen an die Geschäft Startseite umgeleitet, die ursprünglichen CMS-Seiten jedoch nicht.
Web-API-Framework
- Magento Open Source Admin > > wird keine Warnung mehr angezeigt
Integration not secure
, wenn die Callback URL Felder und Identity link URL leer sind. Integrations Extensions System GitHub-36407
- Die
taxes
itemized_taxes
Attribute , , undadditional_itemized_taxes
die Erweiterung wurden zuMagento\Sales\Api\Data\OrderInterface
. Diese Attribute ermöglichen es Ihnen, Steuern mit Bestell-REST-Aufrufen zu sparen.
- Die Tier Prices REST-API unterstützt jetzt Dezimalmengen. Zuvor hat diese API keine Dezimalgrößen zugelassen, selbst wenn die Use Decimal Quantity aktiviert war.
- Der REST-
V1/orders/{id}/comments
-Endpunkt ändert den Status einer Bestellung nicht mehr, wenn versucht wird, dem Status einer ausstehenden Bestellung einen Kommentar hinzuzufügen. Jetzt wird ein informativer Fehler ausgegeben. Zuvor hat dieser Endpunkt beim Hinzufügen eines Kommentars den Bestellstatus geändert.
- Der REST-API-
GET
undPOST V1/products/attributes
Endpunkt geben nicht mehr denselben Wert für dasis_filterable
-Attribut sowohl für dieFilterable(with results)
- als auch fürFilterable(no results)
-Optionen der Use in Layered Navigation-Option zurück. Zuvor gab dieser Endpunkt denselben Wert zurück, da dieis_filterable
-Attributeigenschaft vom TypBoolean
war, was das Festlegen dieser Eigenschaft aufFilterable(no results)
nicht zuließ. GitHub-37979
- Das fehlende
media_gallery_entries
wurde zum REST-V1/configurable-products/sku/children
-Endpunkt hinzugefügt. Zuvor fehlte dieser Funktion der Code, der zum Speichern und Anzeigen vonmedia_gallery_entries
benötigt wurde. GitHub-37607
- Die REST-
V1/carts/mine/estimate-shipping-methods
-Methode validiert jetzt alle Ebenen der Payload-Felddaten und gibt einen 400-HTTP-Code für ungültige Daten zurück. Zuvor wurde nur die erste Ebene der API-Payload validiert, und wenn ungültige Daten in nicht validierten Ebenen der Payload zurückgegeben wurden, gab Magento Open Source einen Status-Code von 500 zurück.
- Asynchrone Massen-REST-API-Vorgänge zum Aktualisieren von Produkten mit Stufenpreisen und verschiedenen Attributsätzen wurden jetzt erfolgreich abgeschlossen. Zuvor konnten Produkte mit unterschiedlichen Attributsätzen nicht auf diese Weise aktualisiert werden, und Magento Open Source hat folgenden Fehler angezeigt:
The product was unable to be saved. Please try again
.
- Der
POST /V1/products/tier-prices
-Endpunkt gibt jetzt eine informativere Fehlermeldung zurück, wenn bei der Erstellung des Stufenpreises ein ungültiger Kundengruppenname verwendet wird. Zuvor hat Magento Open Source einen Fehler wie den folgenden zurückgegeben:Notice: Undefined index: XXXXX in ~/public_html/vendor/magento/module-catalog/Model/Product/Price/Validation/TierPriceValidator.php on line 474"
. GitHub-36431
- Sie können jetzt eine autorisierte asynchrone Massen-API-Anfrage ausführen, um Kunden mit einer nicht standardmäßigen Gruppen-ID zu erstellen. Zuvor wurde bei diesen Anfragen die Gruppen-ID auf den Standardwert zurückgesetzt.
- Kunden, die mit der Bulk API erstellt wurden, erhalten jetzt E-Mails zur Kundenregistrierung in der Sprache, die auf der ihnen zugewiesenen Website konfiguriert ist. Zuvor wurden alle E-Mails an das Standardgebietsschema gesendet, nicht an das Gebietsschema der Website, der der Kunde zugewiesen ist.
- Der
POST V1/guest-carts
-Aufruf sendet keine Gastbestellungen mehr, wenn Allow Guest Checkout deaktiviert ist.
- Magento Open Source gibt jetzt erfolgreich das
content
-Attribut (base64-Bild-Code) inGET V1/products/sku/media
Produktmedien-API-Antworten zurück. Dascontent
-Attribut war zuvor nicht in der Antwort enthalten.
Systemanforderungen
Unser Technologie-Stack basiert auf PHP und MySQL. Weitere Informationen finden Sie unter Systemanforderungen.
Installations- und Upgrade-Anweisungen
Sie können Magento Open Source 2.4.7 mit Composer installieren.