Notes de mise à jour d’Adobe Commerce version 2.4.5
Adobe Commerce apporte des améliorations à la qualité de la plateforme, aux méthodes de paiement, aux performances de mise en cache de GraphQL et à l’accessibilité. Elle comprend des mises à jour des modules Google intégrés et de l’outil de compatibilité de mise à niveau et introduit la prise en charge B2B de Live Search.
Cette version comprend plus de 400 correctifs et améliorations de qualité.
Autres informations de mise à jour
Bien que le code de ces fonctionnalités soit fourni avec les versions trimestrielles du code principal d’Adobe Commerce, plusieurs de ces projets (par exemple, B2B, Page Builder et Progressive Web Applications (PWA) Studio) sont également publiés indépendamment. Les correctifs de bugs pour ces projets sont documentés dans les informations de mise à jour distinctes spécifiques au projet disponibles dans la documentation de chaque projet.
Correctifs inclus dans cette version
Adobe Commerce 2.4.5 inclut la résolution de tous les problèmes qui ont été résolus par les correctifs suivants, fournis pour Adobe Commerce :
-
Braintree_disabled_partial_capture_for_applepay_googlepay.zip
. Ce correctif résout l’impossibilité pour les utilisateurs de créer des factures partielles lorsqu’ils utilisent Apple Pay ou Google Pay via Braintree comme mode de paiement. Voir l’article de la base de connaissances Adobe Commerce 2.4.4 : Impossible de créer des factures partielles -
AC-2655_2.4.4.patch.zip
. Ce correctif résout un problème en raison duquel les acheteurs ne peuvent pas ajouter un produit à leur panier lorsque l’option Autoriser les pays n’est pas sélectionnée. Consultez l’article Les utilisateurs ne peuvent pas ajouter de produit au panier si rien n’est sélectionné dans Autoriser les pays de la base de connaissances .
Points forts d’Adobe Commerce 2.4.5
Recherchez les points forts suivants dans cette version.
Améliorations de la sécurité
Cette version comprend 20 correctifs de sécurité et améliorations de la sécurité de la plateforme. Ce correctif de sécurité a été rétroporté dans Adobe Commerce 2.4.3-p3 et Adobe Commerce 2.3.7-p4.
Aucune attaque confirmée liée à ces problèmes ne s’est produite à ce jour. Cependant, certaines vulnérabilités peuvent potentiellement être exploitées pour accéder aux informations sur les clients ou prendre le contrôle de sessions d’administration. La plupart de ces problèmes nécessitent qu’un attaquant obtienne d’abord l’accès à l’administrateur. Par conséquent, nous vous rappelons de prendre toutes les mesures nécessaires pour protéger votre administrateur, y compris, mais sans s’y limiter, les mesures suivantes :
- PLACER SUR LA LISTE AUTORISÉE IP en cours de traitement
- Authentification à deux facteurs
- Utilisation d'un VPN
- Utilisation d’un emplacement unique plutôt que d’une
/admin
- Bonne hygiène des mots de passe
Consultez le Bulletin de sécurité d’Adobe pour connaître la dernière discussion sur ces problèmes résolus.
Améliorations de la sécurité supplémentaires
Les améliorations apportées à la sécurité dans cette version améliorent la conformité aux dernières bonnes pratiques de sécurité, notamment :
-
La prise en charge de reCAPTCHA a été ajoutée aux formulaires Partage de liste de souhaits, Création d’un nouveau compte client et Carte cadeau .
-
Les ressources ACL ont été ajoutées à l'inventaire.
-
La sécurité des modèles d'inventaire a été améliorée.
-
Le
MaliciousCode
filtre a été mis à niveau pour utiliser laHtmlPurifier
bibliothèque.
Platform améliorations
-
Déploiements locaux Adobe Commerce : Adobe Commerce 2.4.5 a été testé et confirmé comme compatible avec Elasticsearch 7.17 (~7.17.0 avec contrainte). Les marchands hébergeant Adobe Commerce sur site peuvent utiliser Elasticsearch ou OpenSearch 1.2.
-
Déploiements hébergés dans le cloud Adobe Commerce : ElasticSearch 7.11 ou version ultérieure n’est pas pris en charge sur les déploiements hébergés dans le cloud Adobe Commerce 2.4.5. OpenSearch est le moteur de recherche par défaut pour les déploiements cloud Adobe Commerce 2.4.5.
Adobe Commerce 2.4.5 prend désormais en charge
-
du compositeur 2.2
-
TinyMCE (5.10.2). Les versions antérieures de TinyMCE (v5.9.2 ou antérieure) permettaient l’exécution arbitraire de JavaScript lorsqu’une URL spécialement conçue ou une image avec une URL spécialement conçue était mise à jour.
-
de jQueryUI (1.13.1)
-
PHPStan
(^1.5.7 avec contrainte) GitHub-35315
Le schéma d'intégration DHL a été mis à jour de la v6.0 vers la v6.2. Cette mise à niveau n’entraînera pas de changement du comportement du produit.
Les bibliothèques JavaScript obsolètes ont été mises à jour vers leurs dernières versions et les dépendances obsolètes ont été supprimées. Ces modifications sont rétrocompatibles.
Mises à jour des dépendances du compositeur
Les dépendances du compositeur suivantes ont été mises à jour vers les dernières versions avec contrainte :
colinmollenhour/credis
(1.13.0) ?guzzlehttp/guzzle
(^7.4.2)laminas/laminas-captcha
(mise à jour avec une contrainte ^2.12)laminas/laminas-db
(^2.15.0)laminas/laminas-di
(^3.7.0)laminas/laminas-escaper
(~2.10.0)laminas/laminas-eventmanager
(^3.5.0)laminas/laminas-feed
(^2.17.0)laminas/laminas-mail
(^2.16.0)laminas/laminas-mvc
(^3.3.3)laminas/laminas-server
(^2.11.1)laminas/laminas-servicemanager
(^3.11.0)laminas/laminas-validator
(^2.17.0)league/fly
(2.4.3)monolog/monolog
(^2,5)phpmd/phpmd
(^2.12.0)phpstan/phpstan
(^1.5.7)phpunit/phpunit
(~9.5.20)php-cs-fixer
(^3.4.0)webonyx/graphql-php
(14.11.6)
Les dépendances laminas/laminas-session
, laminas/laminas-text
et laminas/laminas-view
ont été supprimées.
Autres mises à niveau et remplacements
-
Le schéma d'intégration DHL a été mis à jour de la v6.0 vers la v6.2.
-
L'URL de passerelle par défaut pour l'expédition USPS a été mise à jour pour utiliser
https
au lieu dehttp
. -
La bibliothèque
Froogaloop
a été remplacée par la bibliothèque VimeoPlayer.js
(2.16.4). -
La bibliothèque
grunt-eslint
(NPM) a été mise à niveau vers la dernière version. -
Les bibliothèques
jQuery Storage
ont été remplacées parjulien-maurel/js-storage
. -
Les outils d'analyse de code statique
php-cs-fixer
etphpcs
sont désormais compatibles avec PHP 8.x. -
Dépendance
glob.js
(mise à niveau avec contrainte vers ~7.2.0) -
Dépendance
serve-static.js
(mise à niveau avec contrainte ~1.14.2) -
Dépendance
underscore.js
(NPM) (1.14.2) -
moment-timezone-with-data.js
(0.5.34) -
La bibliothèque
jquery/jquery-cookie
a été remplacée parjs-cookie/js-cookie
. -
Les bibliothèques
jarallax.js
etjaralax-video.js
ont été mises à jour afin d’utiliser la dernière version de l’API REST Vimeo.
Améliorations des performances et de l’évolutivité
Optimisation de l’indexeur de prix
Les performances de l’index de Principal ont été améliorées en réduisant le nombre d’index principaux de 3 à 1 pour la table catalog_product_index_price_tmp
. Cette amélioration a réduit le nombre d’enregistrements créés dans l’indice des prix en réduisant la multiplication des eSKU qui résultait de catalogues partagés. Le temps d’indexation a été considérablement réduit.
Mises à jour de l’accessibilité
L’objectif de cette version était de créer une expérience de storefront sur Venia (PWA) plus perceptible, plus exploitable, plus compréhensible et plus robuste. Ces améliorations comprennent :
- Les informations récapitulatives des résultats de recherche sont maintenant annoncées aux utilisateurs de lecteurs d’écran
- Les lecteurs d’écran sont désormais informés du chargement d’une nouvelle page vue
- Amélioration du contraste et de l’accessibilité du clavier
Adobe Sign
Les commerçants peuvent désormais permettre aux clients de signer électroniquement des contrats personnalisés, tels que des documents de garantie, des contrats d’achat et des conditions générales, lors du passage en caisse d’Adobe Commerce.
Intégration d’Adobe Commerce avec Adobe IMS
Les commerçants Adobe Commerce qui disposent d’une Adobe ID et souhaitent une connexion rationalisée aux produits Adobe Commerce et Adobe Business peuvent intégrer l’authentification Commerce au workflow d’authentification Adobe IMS. Une fois cette intégration activée pour votre boutique Commerce, chaque utilisateur administrateur doit utiliser ses informations d’identification Adobe, et non ses informations d’identification Commerce, pour se connecter. Voir Présentation de l’intégration du service Adobe Identity Management (IMS).
Marques et modifications de style
L’administrateur a été mis à jour pour s’aligner sur la stratégie de marque d’Adobe. Les modifications affectent les en-têtes, pieds de page, mises à jour des couleurs de la grille de données et éléments de navigation.
B2B
Nous avons optimisé les données de base de données normalisées nécessaires à l’implémentation de la fonctionnalité de catalogues partagés. Cette réduction de la multiplication des eSKU améliore les performances, car moins de lignes de base de données doivent être stockées. Auparavant, Adobe Commerce dupliquait chaque SKU du catalogue pour chaque catalogue partagé. Adobe Commerce crée désormais des eSKU uniques pour ceux qui sont directement affectés à un catalogue partagé.
L’activation de la nouvelle option de configuration Affectation directe du prix du produit dans le catalogue partagé activée améliore également les performances de l’indexeur de prix de produit.
Cette version comprend plusieurs correctifs. Voir Notes De Mise À Jour B2B.
Google Analytics
Google a mis à jour les mécanismes de suivi et d’intégration d’AdWords et d’Analytics dans les applications web grâce à l’intégration à GTag. Cette intégration de la fonctionnalité Google dans les pages de site web étend les possibilités de suivi et de gestion du contenu par le biais des services Google. Adobe Commerce dispose d’un ensemble de modules intégrés, notamment Google AdWords, Analytics, Optimizer et TagManager, qui exploitent l’ancienne API pour l’intégration aux services Google. Dans cette version, nous avons réimplémenté cette intégration à l’aide de l’approche GTag Voir Migration de analytics.js vers gtag.js (Universal Analytics).
GraphQL
Les améliorations apportées aux performances de GraphQL sont les suivantes :
-
Les développeurs et les administrateurs obtiennent une reconstruction plus rapide du schéma GraphQL de storefront unifié lors du déploiement ou lors de la modification des attributs en production. Les acheteurs constatent également que les vitesses de chargement des pages sont considérablement plus rapides lorsque le schéma GraphQL doit être reconstruit, quelle que soit la raison.
-
Ajout de la possibilité de consommer la date/l’heure d’expiration du jeton d’autorisation via l’utilisation de jetons web JSON (JWT) dans l’API GraphQL.
-
La commande
bin/magento config:set graphql/session/disable 1
permet aux commerçants de désactiver complètement la création de cookies de session pour toutes les opérations de GraphQL. Par défaut, Adobe Commerce crée ces cookies et s’en sert pour obtenir l’autorisation, ce qui affecte les performances. À l’avenir, nous vous recommandons d’utiliser des jetons comme seule forme d’autorisation pour les requêtes GraphQL. Il est déconseillé d’utiliser des cookies de session seuls ou conjointement avec des jetons d’autorisation. Voir Autorisation GraphQL. -
Les cookies de session sont désormais lancés dans les opérations GraphQL à l’aide de proxy de classe uniquement lorsque cela est nécessaire.
-
L’utilisation de la session a été supprimée des processeurs d’en-tête
http
dans GraphQL tels que le magasin, le client ou la devise.
Consultez le Guide du développeur de GraphQL pour plus d’informations sur ces améliorations.
Inventaire
La sécurité des modèles d'inventaire a été améliorée.
Recherche en direct
Cette version introduit la prise en charge des groupes de clients B2B et la tarification personnalisée. Live Search respecte désormais les affectations de produits aux groupes de clients et le prix défini pour un groupe de clients/catalogue partagé spécifique.
Page Builder
Page Builder v.1.7.2 est compatible avec Adobe Commerce 2.4.5.
La disposition Colonnes de Page Builder comprend les améliorations suivantes :
-
Les colonnes sont désormais exposées, ce qui permet aux utilisateurs de contrôler les paramètres des colonnes sur le storefront.
-
Le redimensionnement des colonnes prend désormais en charge le renvoi à la ligne déclenché par les actions des utilisateurs.
Paiements
Apple Pay est désormais disponible pour tous les commerçants exécutant des déploiements avec les services de paiement activés. Ce mode de paiement ne nécessite pas que les acheteurs saisissent leurs informations de carte de crédit ou de débit. Apple Pay est disponible sur la page des détails du produit, dans le mini panier, dans le panier et dans le workflow de passage en caisse. Les commerçants peuvent activer cette fonctionnalité.
PayPal
-
Les commerçants d'Espagne et d'Italie peuvent désormais proposer PayPal Pay Later aux acheteurs.
-
Les aperçus des boutons PayPal, Crédit et Payer plus tard sont désormais disponibles dans l’administration pour les pages passage en caisse, mini panier, panier et produit. Les aperçus révèlent à quoi ressembleront ces boutons lorsqu’ils seront activés et rendus sur le storefront.
Braintree
-
Braintree a arrêté l'intégration de la protection contre les fraudes KOUNT. Il a été supprimé de la base de code Adobe Commerce.
-
L’option Toujours demander les 3DS a été ajoutée à l’administrateur.
PWA Studio
PWA Studio v.12.5.x est compatible avec Adobe Commerce 2.4.5.
Les nouvelles fonctionnalités de cette version sont les suivantes :
-
Les données sur le comportement des acheteurs sont collectées sur le storefront PWA Studio pour les services Web Analytics. Les commerçants peuvent désormais s’abonner et prolonger ces événements si nécessaire.
-
Les commerçants peuvent désormais sélectionner un service à déployer à partir de l’administration (Google Tag Manager).
Pour plus d’informations sur les améliorations et les correctifs, voir Versions de PWA Studio. Consultez Compatibilité des versions pour obtenir la liste des versions de PWA Studio et de leurs versions principales d’Adobe Commerce compatibles.
Outil de compatibilité de mise à niveau
Les améliorations incluent :
-
La validation de signature de méthode identifie désormais les modifications incompatibles dans une méthode ou une signature de constructeur.
-
La validation des schémas de base de données identifie désormais les modifications et les incompatibilités de schéma.
-
La validation de la configuration DI vérifie désormais les références aux classes principales non-API supprimées ou obsolètes dans les
di.xml
et les préférences pour les classes et interfaces principales. -
L’UCT identifie désormais les obsolescence de code et fournit des recommandations spécifiques pour résoudre chaque problème.
Problèmes résolus
Nous avons corrigé des centaines de problèmes dans le code principal de Adobe Commerce 2.4.5.
Installation, mise à niveau, déploiement
- Vous pouvez maintenant renommer un correctif de données et ajouter l’ancien nom de classe en tant qu’alias dans la
patch_list
table de base de données. Adobe Commerce vérifie maintenant si les alias de correctif de données existaient déjà dans la base de données avant d’appliquer le correctif. Auparavant, Adobe Commerce générait une erreur dans ces conditions.
- Adobe Commerce ne lève plus d’exception lorsque vous essayez de remplacer l’URL d’administration par une URL personnalisée à partir de l’administration. Auparavant, après avoir modifié l’URL d’administration, vous ne pouviez pas vous connecter. GitHub-35416
- Les commerçants peuvent désormais effectuer une mise à niveau d’un déploiement Adobe Commerce 2.4.2 avec Klarna vers Adobe Commerce 2.4.3. GitHub-33760
- Le chemin d’accès à Adobe Commerce Analytics n’est plus codé en dur. Auparavant, ce chemin d’accès codé en dur entraînait des conflits lorsque plusieurs instances Adobe Commerce étaient installées sur un serveur. GitHub-29373
Accessibilité
- Le bouton Sac à provisions fournit désormais une indication programmatique ou textuelle de son état. Les utilisateurs et utilisatrices de lecteurs d’écran sont informés que si vous cliquez sur ce bouton, d’autres contenus seront développés, ou le contenu associé sera développé ou réduit. Auparavant, ce bouton ne fournissait aucune indication programmatique ou textuelle de son état.
- Les éléments textuels ou les images de texte de l'option de carte de crédit des informations de paiement respectent désormais le rapport de contraste des couleurs minimal requis de 4,5:1 par le WCAG 2.0 pour un texte standard de 18 pt (24 px) ou de 14 pt (19 px) en gras. Auparavant, ils n’atteignaient pas le rapport de contraste attendu.
- Carnet d’adresses > Communication > Informations de compte les indicateurs de focus personnalisés fournissent désormais un rapport de contraste d’au moins 3:1 par rapport à la couleur d’arrière-plan.
- Le texte des boutons Filtrer et Trier respecte désormais le rapport de contraste des couleurs minimal requis de 4,5:1 par le WCAG 2.0 pour un texte standard de 18 pt (24 px) ou de 14 pt (19 px) en cas de mise en gras. Auparavant, les boutons de navigation pour les carrousels ne satisfaisaient pas à ces exigences de contraste minimales.
- Les lecteurs d’écran n’annoncent le mot « Venia » qu’une seule fois lors de la navigation vers les en-têtes et pieds de page Venia. Auparavant, le même mot était annoncé deux fois de suite.
- Les boutons qui déclenchent des listes déroulantes fournissent désormais aux lecteurs d’écran des informations indiquant leur statut développé ou réduit et les noms accessibles.
- Les utilisateurs et utilisatrices de lecteurs d’écran sont informés lorsqu’une nouvelle page vue est rendue. Auparavant, lorsqu’un titre de page était modifié, le changement de titre n’était pas annoncé.
Adobe Stock
- Les utilisateurs peuvent désormais se déconnecter d’Adobe Stock.
Lots de produits
- Vous pouvez désormais utiliser le point d’entrée
PUT /V1/products
pour mettre à jour les attributs de prix de produit pour un site web spécifique. Auparavant, si certains attributs de produit étaient remplacés pour une vue de magasin spécifique, vous ne pouviez pas mettre à jour un attribut de prix pour ce produit dans cette même vue de magasin.
- Adobe Commerce calcule désormais correctement le total du panier pour un produit groupé lorsque la règle Sous-sélection de produit est appliquée.
Cache
- Le cache de page complet n’est plus affiché comme désactivé dans l’Administration lorsque le cache d’Adobe Commerce est vidé et que le
use_stale_cache
est activé.
- Les marqueurs de déploiement New Relic fonctionnent désormais comme prévu lorsque le cache est vidé. GitHub-32649
Panier et passer en caisse
- Le pop-up de recherche d’adresse à l’étape de facturation du workflow de passage en caisse ne provoque plus d’erreurs DOM.
- La mutation
addProductsToCart
fonctionne désormais correctement avec plusieurs produits. Auparavant, cette requête renvoyait le premier produit avec un sous-total précis, mais renvoyait un sous-total de 0 pour les autres produits.
- Les exceptions d’autorisation sont désormais gérées pour les produits restreints ajoutés par SKU. Un message approprié est désormais envoyé aux acheteurs sur le storefront et le champ Quantité dans la table d’erreur est désactivé. Auparavant, Adobe Commerce avait généré une exception comme celle-ci :
There has been an error processing your request
.
- La requête SQL qui met à jour les devis concernés après la désactivation d’une règle de prix de panier a été optimisée afin d’éviter de verrouiller l’ensemble de la table des devis.
- Les acheteurs avec partage de compte global ne sont plus tenus de se reconnecter à un site web secondaire dans un déploiement multisite lorsque le passage en caisse des invités est désactivé. Les données client sont désormais chargées lorsque l’acheteur accède au sous-domaine. L’acheteur n’est plus invité à se reconnecter et le contenu du panier précédent s’affiche.
- Les valeurs des listes déroulantes d'adresses dans le workflow de passage en caisse ne changent plus pour les articles restants d'un devis lorsqu'un seul article d'adresse de quantité est supprimé dans un passage en caisse à plusieurs adresses. Auparavant, lorsqu’un produit était supprimé d’un devis lors d’un passage en caisse à plusieurs adresses, la valeur de la liste déroulante d’adresses était remplacée par la valeur par défaut pour tous les produits.
- La requête
cart
ne renvoie plus de réponses nulles lorsqu’un produit est en rupture de stock. Un nouvel élémenterrors
contenant le message d’erreur a été ajouté à la réponse. Auparavant, lorsque vous exécutiez une requête avec un produit en rupture de stock, Adobe Commerce affichait une valeur denull
sous la sectionitems
dans la réponse. Voir requête de panier.
- Les méthodes d’expédition sont désormais disponibles comme prévu lorsqu’un acheteur invité crée un compte après avoir ajouté un produit à son panier avant de passer en caisse. Auparavant, lorsqu’un invité ajoutait un produit au panier avant de créer un compte, aucune méthode d’expédition n’était disponible lors du passage en caisse. Après avoir ajouté d’autres produits au panier, les méthodes d’expédition sont devenues disponibles.
- Les acheteurs peuvent désormais ajouter des produits à leur panier lorsqu’aucune option dans le champ Autoriser les pays n’a été sélectionnée.
- Le contenu du panier et le statut de connexion sont désormais rechargés comme prévu après l’expiration d’une session lorsque Activer la persistance est défini sur Oui. GitHub-35182
- Les sous-totaux de mini panier sont désormais correctement mis à jour lorsqu’un acheteur navigue de la page d’expédition à la page de panier dans le workflow de passage en caisse pour une commande avec plusieurs adresses d’expédition. Auparavant, le sous-total était doublé.
- Le mini panier affiche désormais les produits ajoutés précédemment après une temporisation de session lorsque l’option Activer la persistance est activée . GitHub-35183
- Les commerçants peuvent maintenant créer un avoir dans lequel Rembourser l'expédition (Incl. Taxe) est défini sur -0,01 et peut désormais définir ce montant sur 0. Auparavant, l'avoir ne pouvait pas être créé dans ces conditions.
Règle de prix du panier
- La portée de l’attribut
Parent Only
est désormais correctement utilisée dans la condition de règle de panier.
Catalogue
- Les clés d’URL de produit restent désormais inchangées lors de la mise à jour du nom du produit via
PUT /V1/products/
pour une vue de magasin. Auparavant, une nouvelle clé d’URL était générée en fonction du nouveau nom de produit et attribuée au produit, ce qui remplaçait la clé d’URL dans cette vue de magasin.
- Les produits de montée en gamme basés sur des règles ne s’affichent plus deux fois sur la page des produits.
- L’ajout d’un produit à une catégorie à partir du widget de produit Page Builder défini sur le mode carrousel ne déclenche plus de rechargement de page.
- Les produits définis sur Non visibles individuellement n’apparaissent plus dans les résultats de la recherche avancée du catalogue.
- Les attributs de bundle dynamique sont désormais correctement mis à jour dans la page Mise à jour en masse des attributs . Auparavant, l’attribut SKU dynamique restait défini sur Oui même s’il était désactivé sur la page Mise à jour en masse.
- Les règles de catalogue sont désormais correctement appliquées à l’aide d’indexeurs incrémentiels plutôt que d’une réindexation complète.
- Vous pouvez désormais basculer entre les vues liste et grille des listes de produits à plusieurs pages. Auparavant, lorsque vous accédiez à la dernière page d’une vue de liste de produits comportant plusieurs pages avant de passer à la vue grille, Adobe Commerce affichait cette erreur :
Unfortunately there are no products in this category on our website currently
.
- Les rapports du journal d’action d’administration affichent désormais les ID de produit et les informations de statut mis à jour comme prévu.
- Les Triggers sont maintenant restaurés comme prévu dans la table
catalogrule_product_price
après une réindexation complète. Auparavant, les déclencheurs étaient supprimés du tableaucatalogrule_product_price
après une réindexation complètecatalogrule_rule
oucatalogrule_product
.
- Les règles de catégorie utilisées pour affecter des produits aux catégories ne changent plus de manière aléatoire.
- Adobe Commerce ne renvoie plus d’erreur lorsqu’une règle de catégorie affecte un produit à une catégorie qui est ensuite triée dans un déploiement multisite.
- Les catégories ne peuvent plus être mises à jour globalement par un administrateur dont l’accès est limité à la portée. Auparavant, lorsque plusieurs sites web utilisaient la même catégorie mais des produits différents et qu’un administrateur disposant d’une autorisation limitée à un magasin modifiait les produits de la catégorie, la sélection de produits était également modifiée pour les autres magasins.
- La page des détails du produit affiche désormais le prix correct lorsqu’une devise autre que la devise par défaut pour un paramètre régional spécifié est utilisée. Auparavant, les nombres n’étaient pas localisés comme prévu sur le storefront.
- Les produits peuvent désormais être activés à l’aide d’une mise à jour planifiée.
- Le même message d’erreur s’affiche désormais par l’API et sur le storefront lors de la tentative de récupération des prix de niveau d’un produit avec des enregistrements en double. Auparavant,
PUT /V1/products/tier-prices
renvoyait un message d’erreur incorrect.
- Adobe Commerce fournit désormais des messages d’erreur de validation lorsque vous tentez d’ajouter une clé d’URL de produit avec un trait d’union à la fin. Un texte d’info-bulle informatif est également disponible.
- Le nouveau champ
ConfigurableWishlistItem.configured_variant
a remplacé le champConfigurableWishlistItem.child_sku
. Ce dernier champ déclenchait une erreur interne lorsqu’une liste de souhaits d’un client contenait un produit configurable non configuré.
- Les réécritures d’URL sont désormais générées uniquement pour les magasins sélectionnés lors de la mise à jour en masse des attributs afin de modifier la visibilité du produit. Auparavant, la mise à jour en masse des attributs créait une réécriture d’URL pour le mauvais magasin.
- Lorsque le paramètre
Synchronize widget products with backend storage
est activé, Adobe Commerce ajoute les données de produit récemment vues dans le tableau de la base de donnéescatalog_product_frontend_action
. Il inclut l’identifiant client ou visiteur lors de l’ajout d’enregistrements. La sectionrecently_viewed_product
de la réponse est désormais vide si l’ID de client et l’ID de visiteur sont nuls. Par conséquent, lorsque la requête Ajaxcustomer/section/load
est envoyée, Adobe Commerce peut filtrer correctement les produits récemment consultés en fonction de l’identifiant du client ou du visiteur. Auparavant, la réponse incluait toutes les données disponibles dans la table de la base de donnéescatalog_product_frontend_action
, car il n’existait aucune vérification pour un ID de client ou de visiteur vide.
- Les règles de catégorie avec un attribut
Quantity
pour les produits configurables fonctionnent désormais correctement lorsque l’évaluation est implémentée. Auparavant, lorsque les produits avaient des valeurs différentes pourrow_id
etentity_id
dans le tableaucatalog_product_entity
en raison des mises à jour de l’évaluation, la fonctionnalité Visual Merchandiser Faire correspondre le produit par règle ne filtrait pas correctement les produits.
- Les administrateurs peuvent désormais modifier les options de produit configurables dans le panier d’un acheteur à partir du panneau de diapositives d’administration. Auparavant, le panneau de diapositives ne fonctionnait pas correctement.
- Le cache de page est maintenant effacé comme prévu pour le produit parent configurable lorsque des modifications apportées à un produit enfant sont enregistrées. Auparavant, comme le cache n’était pas effacé, les modifications n’étaient pas sélectionnées sur la page du produit de configuration de storefront. GitHub-34508
- Les listes de produits sont désormais correctement rendues dans l’interface d’administration. Auparavant, la liste de produits ne s’affichait pas et Adobe Commerce affichait cette erreur :
Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists
. GitHub-33145
- Les prix des produits sont désormais identiques sur la page des détails du produit et dans la recherche storefront dans les déploiements multi-magasin après le changement de l’étendue du prix du catalogue de site web à global. Auparavant, la page Résultats de la recherche catalogue affichait le prix global et la page de détails du produit affichait le prix site web. GitHub-34074
- La navigation en couches affiche désormais les produits aux prix les plus élevés comme prévu lorsque Calcul de l’étape de navigation par prix est défini sur Manuel.
- Vous pouvez désormais modifier la limite de produits par page affichée dans une catégorie lorsque la fonction Mémoriser la pagination de catégorie est activée. Auparavant, la
form_key
et l’interface utilisateur des cookiesform_key
différentes et Adobe Commerce affichait cette erreur :Invalid Form Key. Please refresh the page
.
- L’indexeur EAV traite désormais les ID de produit en tant que type
int
afin d’éviter d’éventuels problèmes de performances.
- Un nouveau cache de produit est maintenant généré après l’ajout d’une nouvelle image avec un nom contenant « . » à un produit, puis enregistrez le produit et nettoyez le cache d’images. GitHub-32699
-
Adobe Commerce affiche désormais un message d’erreur comme prévu lorsque vous tentez de créer un attribut à partir de la page produit sans remplir le champ Admin . GitHub-33099
-
Les évaluations de produit sont désormais correctes sur toutes les listes de produits du catalogue lorsque la page d’accueil contient plusieurs listes de catalogues. GitHub-33867
Contenu CMS
- Les commerçants ne peuvent plus modifier une mise à jour planifiée active à partir de la page de modification d’entité.
- Un administrateur disposant d’autorisations restreintes peut désormais afficher une page CMS dans la hiérarchie de CMS après une mise à jour planifiée.
Produits configurables
- Adobe Commerce affiche désormais le prix correct d’un produit configurable avec une option sélectionnée après avoir modifié sa quantité sur la page des détails du produit. Auparavant, le prix était réinitialisé à sa valeur initiale après modification de la quantité.
- La requête
products
récupère désormais les prix des produits configurables qui reflètent précisément le paramètre de configuration Afficher les produits en rupture de stock. Auparavant, la requête ne renvoyait pas de prix précis.
- Les options configurables sont désormais liées aux produits configurables créés dans l’interface d’administration à l’aide de
POST /V1/configurable-products/configurable1/child
.
- Les attributs à sélection multiple sont désormais correctement enregistrés lors de la modification du produit. Auparavant, Adobe Commerce enregistrait l’option par défaut pour les attributs non sélectionnés, ainsi que pour les attributs sélectionnés lors de l’enregistrement d’un produit.
- Adobe Commerce affiche désormais les attributs configurables comme prévu lors de la création d’attributs de
select
globaux via un script de correctif. Auparavant, les attributs globaux éligibles étaient masqués.
- La mutation
addConfigurableProductsToCart
peut désormais être utilisée pour ajouter des produits configurables avec des options personnalisées. Auparavant, Adobe Commerce générait cette erreur :Magento 2.3.4 graphql Notice: Undefined index: option_value in /var/www/html/mg234/vendor/magento/module-configurable-product-graph-ql/Model/Resolver/ConfigurableCartItemOptions.php on line 62
. GitHub-28860
-
Adobe Commerce affiche désormais correctement le statut du stock d’un produit configurable, les configurations disponibles et le prix affiché lorsque la disponibilité de l’un des produits enfants du produit configurable est modifiée par une mise à jour planifiée. Auparavant, lorsqu’un produit configurable avait deux enfants et que la disponibilité d’un produit enfant était désactivée avec une mise à jour planifiée, le statut de stock du produit parent s’affichait incorrectement comme En rupture de stock lorsque la mise à jour était active. Une fois la mise à jour terminée, le prix affiché et la disponibilité de ses configurations étaient incorrectement calculés.
-
Vous pouvez désormais commander à nouveau des produits configurables avec des options personnalisées facultatives. Auparavant, les tentatives de réorganisation échouaient et le signifiant affichait cette erreur :
Some of the selected options are not currently available
. GitHub-35409
- La mutation
addConfigurableProductsToCart
fonctionne désormais comme prévu avec plusieurs produits. Auparavant, des informations incorrectes sur les produits étaient renvoyées ou un message d’erreur non valide était renvoyé. GitHub-30948
Client
- Adobe Commerce affiche désormais correctement les attributs système EAV prédéfinis en fonction des paramètres du site web sur le storefront. Auparavant, les attributs du client au niveau du site web qui étaient activés pour un site web et désactivés pour un autre s’affichaient comme activés pour les deux sites web.
Segment client
- Les règles de produits associés spécifiques au segment client fonctionnent désormais comme prévu. Le problème a été résolu en appelant une méthode pour ajouter une relation visiteur-segment pour un site Web spécifique. Auparavant, les segments correspondant à cette règle étaient récupérés uniquement sur la base des clients et des sites web enregistrés.
Téléchargeable
- Vous pouvez désormais supprimer les exemples de liens et de fichiers d’un produit téléchargeable. GitHub-31887
Messagerie électronique
- Les e-mails émis par le système sont maintenant envoyés avec succès aux destinataires avec ".- » dans leur adresse e-mail.
- Les clients reçoivent désormais des rappels par e-mail concernant leurs paniers abandonnés selon le bon calendrier. La nouvelle fonction SQL
TIMESTAMPDIFF(DAY, ,)
a remplacé la fonctionTO_DAYS()
et calcule la différence dans les horodatages en fonction de la date et de l’heure. Auparavant, les rappels par e-mail n’étaient pas envoyés par planning en raison du calcul incorrect de deux valeurs date et heure d’abandon de panier (tout fuseau horaire) et d’heure du serveur (UTC).
- Adobe Commerce affiche désormais un message d’erreur sur la page Expédition lorsqu’un acheteur saisit un format d’e-mail non valide après avoir cliqué sur Passer une commande. Auparavant, le message d’erreur s’affichait sur la page Paiement . [GitHub-33590](https://github.com/magento/magento2/issues/33590)
Frameworks
- La commande
bin/magento setup:config:set
ne remplace plus les préfixes d’ID de cache déjà définis dansapp/etc/env.php
.
- La commande
bin/magento setup:static-content:deploy -s compact
inclut désormais les styles des thèmes enfants comme prévu. Auparavant, les fichiers CSS du thème n’étaient pas présents sur le storefront après le déploiement.
- Un nouveau reniflement a été ajouté pour vérifier si les barres obliques fermantes sont utilisées dans les éléments
void
.
- Adobe Commerce ne renvoie plus d’erreur SQL après l’affectation d’une nouvelle source à un produit et la modification de sa quantité. GitHub-35262
- L’ordre de tri des attributs fonctionne désormais comme spécifié dans le fichier
di.xml
après la mise à jour.
- La fonction
updateCartCurrency
définit désormais une chaîne au lieu d’un objet dans l’objet de panier. Auparavant, Adobe Commerce ne chargeait pas de guillemet à l’aide degetQuote
, car la fonctionupdateCartCurrency
définissait un objet au lieu d’une chaîne dans l’objet panier. GitHub-34199
- Les avis d’obsolescence ne se produisent plus dans les tests unitaires en raison de
\DateTimeFormatter::formatObject()
. Cette méthode fonctionne désormais comme prévu avec les valeurs numériques pour$format
.
- Adobe Commerce n’affiche plus d’erreur de
preg_replace()
sur l’administrateur. Le troisième argument ($subject
) est désormais de typearray|string
au lieu debool
.
- La méthode
isFreeShipping
renvoie désormais un entier plutôt qu’une valeur booléenne.GitHub-35164
- Adobe Commerce ne renvoie plus l’erreur suivante lorsque vous créez un module externe pour une méthode de classe
vendor/magento/module-backend/Model/Menu.php
:Error: Call to undefined method ReflectionUnionType::getName()
. GitHub-35292
- Adobe Commerce renvoie désormais une erreur 404 au lieu d’une erreur 500 lorsque vous accédez à
/checkout/sidebar/updateItemQty/?item_qty=error
dans le storefront. Auparavant, cette erreur était générée :Warning: A non-numeric value encountered in /vendor/magento/module-checkout/Controller/Sidebar/UpdateItemQty.php on line 69
. GitHub-34380
- Adobe Commerce ne déclenche plus d’erreur
trim(): Passing null to parameter #1 ($string) of type string is deprecated
lorsque la connexion AMPQ est configurée sans configuration SSL.
- Correction de la définition de la base de données
longblog
enlong blob
. GitHub-35108
- Le texte K.O. contenant des guillemets simples peut désormais être traduit. GitHub-34319
- Une
TypeError
dansmagento2/app/code/Magento/Security/Model/AdminSessionsManager.php
a été corrigée deint
àstring
. GitHub-34415
.htpasswd
a été ajouté à des emplacements interdits dans le fichier de configurationnginx
. GitHub-35150
- Le temps de chargement des pages de liste de produits de catégorie a été amélioré en ajoutant
Magento_Ui/js/core/app
en tant quedeps
àapp/code/Magento/Ui/view/frontend/requirejs-config.js
. GitHub-34847
- La méthode
ProductRepository.php:get
renvoie désormais une seule fois les clés de cache. Auparavant, ils étaient renvoyés deux fois. GitHub-34958
- Ajout d’un message d’erreur à une nouvelle exception créée dans le gestionnaire d’exceptions pour les tâches cron. GitHub-34941
- Les fichiers Lisez-moi des modules
GraphQl-GroupedProductGraphQl
ont été mis à jour. GitHub-34951
- Les pages de commande d’impression, de facture ou d’avoir de storefront n’affichent plus le logo Luma par défaut au lieu du logo qui a été spécifié pour être affiché sur le site Web. GitHub-34942
Correctifs généraux
- Définir la taille de session maximale sur 0 (Admin Store > Settings > Configuration - Advanced) ne déconnecte plus l’administrateur. GitHub-35312
- Les paramètres de configuration des attributs d’adresse du client sont désormais correctement chargés en fonction du site web auquel le client est affecté lorsque vous ajoutez une nouvelle adresse de client provenant de l’administrateur qui est affectée à un site web autre que celui par défaut.
- La création de catégorie est désormais bloquée pour un administrateur restreint sur la page Catégorie et la page Modifier le produit. Auparavant, la création de catégorie était bloquée sur la page de catégorie, mais était toujours possible via la page de modification de produit.
- Adobe Commerce ne renvoie plus d’exception lorsque vous ajoutez un produit groupé via Page Builder.
- Les catégories peuvent désormais être sélectionnées à partir de l’arborescence des catégories en tant que condition d’un segment client.
- Vous pouvez désormais créer un compte client sur un appareil iOS en insérant l’apostrophe (’) dans le prénom, le deuxième prénom ou le nom de famille. Auparavant, seule l’apostrophe droite était autorisée, et l’utilisation de l’apostrophe inclinée par défaut iOS 11+ entraînait une erreur
Name is not valid!
.
- La requête
products
renvoie désormais des informations sur les produits qui reflètent précisément la configuration « Afficher les produits associés ». Les champsrelated_products
,upsell_products
etcrosssell_products
de l’interface produit de GraphQL sont désormais résolus conformément aux configurations Afficher les produits associés, Afficher les produits de montée en gamme et Afficher les produits de vente croisée, respectivement.
- L’attribut Définir le produit comme nouveau à partir de la date affiche désormais la date correcte à laquelle l’attribut Définir le produit comme nouveau est défini par le biais d’une mise à jour en masse du produit. Auparavant, la mention Définir le produit comme étant la nouvelle date de début s’affichait comme 1er janvier 1970.
- Les utilisateurs dotés de rôles restreints ne se voient plus automatiquement accorder l’accès aux nouveaux modules.
- Les règles Target basées sur des catégories affichent uniquement les produits de la catégorie déclarée dans la règle. Auparavant, les règles Produits associés affichaient des produits appartenant à des catégories qui étaient affectées à des produits et non définies dans la règle.
- Les conditions des règles de produit associé fonctionnent désormais comme prévu avec les produits contenant des attributs de
multiselect
.
- Les commerçants peuvent désormais ajouter un attribut de prix de niveau (
tier_price
) aux comparaisons de produits. Auparavant, la page de comparaisons de produits se bloquait lorsque le paramètre Comparable sur storefront de cet attribut était activé. GitHub-35244
- Adobe Commerce affiche désormais un message d’erreur lorsque vous définissez un domaine de cookie non valide (Store > Configurations > Web > Default Cookie Settings Cookie Domain). Auparavant, le site web s’était bloqué. GitHub-35048
- Adobe Commerce ne renvoie plus d’erreur lorsqu’un administrateur dont les rôles sont limités à un seul site web ajoute un produit aux éléments de contenu à l’aide de PageBuilder. Auparavant, Adobe Commerce générait une erreur SQL.
- La validation a été ajoutée à la deuxième ligne de l’adresse postale sur les pages Modifier et Ajouter une adresse . Les longueurs de texte minimale et maximale spécifiées sur la seconde sont désormais appliquées.
- Adobe Commerce ne renvoie plus l’erreur suivante lors de la création d’une règle de catalogue dans l’administration après la mise à niveau :
A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later
.
- Adobe Commerce ne renvoie plus d’erreur lorsque vous activez la case à cocher Vérifier ici pour lier un flux RSS à votre liste de souhaits avant de cliquer sur Partager la liste de souhaits. GitHub-34998
- Le titre de la case à cocher Afficher le mot de passe (connexion du client, enregistrement du client, modification du client (section Modifier le mot de passe) et formulaires de définition d’un nouveau mot de passe du client) peut désormais être traduit. GitHub-34857
- Mise à jour des libellés et des descriptions des commentaires dans
app/code/Magento/NewRelicReporting/etc/adminhtml/system.xml
. GitHub-31947
- Suppression des fichiers
csp_whitelist.xml
inutiles. GitHub-30607
Cartes cadeaux
products
requêtes renvoient désormais correctement les données de produit qui contiennent des produits de carte cadeau avec une clé d’URLgift-card
.
GraphQL
- Un attribut
price_range
manquant a été ajouté au type deBundleItemOption
GraphQL. GitHub-35010
- La requête
products
ne renvoie plus d’attributs sous la forme d’une agrégation lorsque le paramètre Utiliser dans les résultats de recherche Navigation superposée est désactivé. GitHub-33318
- Un champ
price_including_tax
a été ajouté àCartItemPrices
. GitHub-29057
- Les
new_from_data
etnew_to_datefields
deProductInterface
ne sont plus obsolètes. GitHub-34783
- La requête
categories
ne renvoie plus d’exception lors de la récupération d’une liste de catégories dont l’une contient une image introuvable sur le système de fichiers. Auparavant, Adobe Commerce avait généré l’exception suivante :Category image not found
. GitHub-34266
- La requête
products
renvoie désormaiscategory_uid
sous la forme d’une agrégation comme prévu. GitHub-32557
- La mutation
updateCartItems
supprime désormais les produits comme prévu lorsque le stock de produits a atteint la quantité maximale. GitHub-30220
- La requête
urlResolver
résout désormais correctement le délimiteur de chemin (/) lorsque plusieurs pages d’accueil portent le même identifiant. Auparavant, la requête ne résolvait pas le délimiteur et renvoyait la valeur null. GitHub-33615
- Les requêtes
customer
récupèrent désormais les options de sélection multiple de produits groupés comme prévu lors de l’interrogation de commandes. GitHub-34717
- Les sessions Adobe Commerce ne se terminent plus après qu’une requête GraphQL a été effectuée. Auparavant, le plug-in
ClearCustomerSessionAfterRequest
déconnectait l’acheteur. GitHub-34550
- La requête
products
ne renvoie plus de valeursprice_range
pour les produits configurables qui sont affectés par des variantes désactivées. GitHub-33629
- Les fourchettes de prix de produit configurables dans
products
réponses aux requêtes sont désormais correctement calculées lorsque le paramètre de configuration Afficher les produits en rupture de stock est activé. Auparavant, les options désactivées étaient prises en compte dans le calcul des prix minimum et maximum.
- La requête
products
renvoie désormais correctement filtré plusieurs catégories lors du tri par position.
setShippingAddressesOnCart
requêtes valident désormais les identifiants de zone géographique. Auparavant, Adobe Commerce générait une erreur lorsque vous utilisiez l’ID de région au lieu du code de région.
products
requêtes renvoient désormais uniquement les catégories associées au magasin transmis dans la requête.
- La requête
categoryList
renvoie désormais des résultats qui reflètent la catégorie racine du magasin interrogé lorsque le magasin est spécifié dans l’en-tête. Auparavant, les catégories de la catégorie racine par défaut étaient incluses dans les résultats même si un autre magasin était spécifié dans l’en-tête.
- La requête
products
ne renvoie plus d’attributs sous forme d’agrégation lorsque le paramètre Utiliser dans la navigation par couches des résultats de recherche est désactivé. GitHub-33318
- La requête
cart
renvoie désormais un seul mode de paiement pour les commandes gratuites. Auparavant, tous les modes de paiement actifs étaient renvoyés dans la réponse de la requête. GitHub-34036
- Ajout d’un module externe avant l’appel
collectQuoteTotals
pour s’assurer que les crédits de magasin ne sont pas appliqués plusieurs fois.
- La mutation
generateCustomerTokenAsAdmin
récupère désormais les jetons client comme prévu. Auparavant, les jetons n’étaient pas renvoyés et cette erreur était renvoyée :Customer email provided does not exist
.
- Le schéma GraphQL est désormais valide lorsqu’un attribut de produit
type
personnalisé est défini. Auparavant, le schéma n’était pas valide, car l’attributtype
sur les types de produits était remplacé par l’attributtype
personnalisé. GitHub-34929
- Les clients ajoutés ou mis à jour avec la mutation
createCustomer
,createCustomerV2
,updateCustomer
ouupdateCustomerV2
sont désormais ajoutés avec des abonnements à des newsletters actifs. Auparavant, les clients étaient désabonnés des newsletters même lorsque la requête contenait des paramètres d’entrée appropriés. GitHub-33599
- La requête
products
pour une vue de magasin spécifique renvoie désormais uniquement les catégories qui se trouvent dans la catégorie racine du site web spécifique dans un déploiement multisite. Auparavant, la requête renvoyait des catégories des catégories racines d’autres sites web. GitHub-34570
- La requête
products
renvoie désormais uniquement la sous-catégorie de l’ID de catégorie fourni. Auparavant, toutes les catégories étaient renvoyées. GitHub-35220
- La requête
customerOrders
répond désormais comme prévu lorsque l’objetgift_message
est spécifié dans la réponse, mais qu’il n’existe aucun message cadeau. Auparavant, la requête renvoyait le message suivant :Can't load gift message for order is returned
. GitHub-28957
- Correction d’un bug avec l’indexeur de
catalog_category_product
en raison duquel la requêteproducts
renvoyait des catégories d’un autre magasin. GitHub-31253
- La mutation
generateCustomerToken
crée désormais une entrée dans lecustomer_log
comme prévu après la génération d’un jeton client. GitHub-33378
Google Analytics
- Le module Google Tag a été ajouté à la base de code, qui prend en charge la transition vers Google Analytics 4 en juillet 2023. Vous pouvez actuellement utiliser et collecter de nouvelles données dans vos propriétés Google Universal Analytics, mais Google Universal atteindra sa fin de vie en juillet 2023. GitHub-35204, GitHub-35376
Image
- Les images des pages de détails du produit ne scintillent plus et restent centrées comme prévu. Auparavant, une fois qu’une page détaillée du produit avait terminé le chargement d’une image, l’image se déplaçait visiblement vers le bas.
Importer/exporter
- La position du produit lié, de montée en gamme et de vente croisée dans le fichier CSV d’exportation est désormais correcte après la suppression d’un produit de vente croisée de l’administrateur avant la régénération du fichier CSV. Auparavant, les positions sur les produits de vente croisée n’étaient pas recalculées après la suppression d’un produit de vente croisée, et l’ordre de position du produit était incorrect.
- Adobe Commerce recherche désormais une vue personnalisée avant de filtrer les colonnes lors de l’exportation des rapports. Auparavant, les rapports exportés ne prenaient pas en compte les vues personnalisées et les colonnes exportées étaient incorrectes.
- Adobe Commerce importe désormais avec succès les images dont les noms de fichier sont longs. Auparavant, Adobe Commerce n’importait pas l’image et générait cette erreur :
Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s):
.
- Les attributs d’ID de catégorie sont désormais disponibles dans les filtres d’exportation planifiés.
- Regrouper les produits qui contiennent un point d’interrogation (?) dans l’option , le titre peut maintenant être importé grâce aux améliorations apportées à query builder dans
populateExistingOptions
méthode . Le titre de l’option s’affiche également correctement. Auparavant, après l’importation initiale, les importations successives provoquaient un comportement corrompu et doublaient les options. Les acheteurs n’ont pas pu ajouter le produit au panier non plus.
- Ajout de la validation des noms de catégorie lors de l’importation. Auparavant, Adobe Commerce ne validait pas les noms de catégorie, ce qui entraînait des erreurs lorsque les noms de catégorie dépassaient 255 caractères.
- Les enregistrements existants de la table
catalog_url_rewrite_product_category
sont maintenant supprimés avant d'en insérer de nouveaux. Auparavant, l’erreur suivante se produisait lors de l’importation de produits multi-magasin :SQLSTATE[23000]: Integrity constraint violation
. GitHub-34210
Infrastructure
- Un plug-in de menu contextuel obsolète a été supprimé de la liste des plug-ins.
- La logique liée à la barre d’outils de l’éditeur TinyMCE dans le module Page Builder a été mise à jour suite à l’introduction de la logique
delayedRender
pour la barre d’outils dans TinyMCE.
- Les conditions de concurrence n’interrompent plus la création de l’écouteur d’événement
contentUpdated
. GitHub-32068
- La fonction
getTypeID
renvoie désormais l’ID du type de produit, et non l’ID du produit. GitHub-35458
-
Le curseur de l’interface utilisateur jQuery et le mappage
SelectMenu
ont été corrigés dansvendor/magento/module-theme/view/base/requirejs-config.js
. -
Les observateurs placés sur
sales_order_state_change_before
prennent désormais en charge la récupération des données de l’objet order. L’argumentevent
sales_order_state_change_before
a été mis à jour. GitHub-26789
indexer:reset
a été refactorisé pour appeler$indexer->invalidate()
. GitHub-34988
- Vous pouvez désormais utiliser le signe des deux-points dans une valeur d’attribut
htmlClass
, qui prend en charge l’utilisation de composants supplémentaires tels que l’interface utilisateur de Tailwind. GitHub-34430
Exploitation forestière
- Les actions de client, d’adresse client et de commande sont désormais correctement enregistrées dans le rapport d’action Admin. Auparavant, Adobe Commerce n’enregistrait pas les actions si le gestionnaire n’avait pas été spécifié dans les
postDispatch
paramètres de configuration.
MFTF
Groupes d’action
Les actions répétitives ont été remplacées par des groupes d’actions dans les tests suivants :
AdminConfigurableProductChildrenOutOfStockTest
GitHub-32378AdminCreateStoreViewTest
GitHub-34631
Nouveaux tests
AdminUnlockAdminUserEntityTest
GitHub-34836
StorefrontNewsletterSubscriptionWithEnabledNeedToConfirmConfigTest
GitHub-33344
Tests restructurés
AdminCancelTheCreatedOrderWithCashOnDeliveryPaymentMethodTest
GitHub-33692
Newsletter
- Les clients connectés ne sont plus marqués comme invités dans Admin > Marketing > Abonnés à la newsletter.
- L’e-mail de confirmation d’inscription à la newsletter comporte désormais l’adresse e-mail correcte, spécifique au magasin, dans le champ De si le client est affecté à une boutique autre que celle par défaut et s’il s’est abonné ou désabonné de l’administrateur. Auparavant, le client ou la cliente recevait un e-mail avec l’e-mail par défaut dans l’en-tête De. GitHub-34963
- L’URL de désabonnement dans le modèle d’e-mail de newsletter fonctionne désormais comme prévu. GitHub-33310
Ordre
- Vous pouvez désormais créer un nouveau client à partir d’une nouvelle commande avec des attributs de client personnalisés masqués du storefront. Auparavant, Adobe Commerce n’enregistrait pas les valeurs correctes pour l’attribut du client personnalisé.
- Les détails des clients invités sont désormais enregistrés après la modification d’une commande. Auparavant, certains détails du client étaient perdus, notamment
customer_firstname
etcustomer_lastname, x_forwarded_for
.
- Les commerçants ne peuvent plus créer d'avoir avec une quantité totale décimale lorsque la quantité décimale est désactivée au niveau d'un produit ou d'un paramètre global. Auparavant, les commerçants pouvaient créer un avoir pour la quantité totale décimale lorsqu'elle n'était pas applicable.
- Le filtrage par date fonctionne désormais correctement pour les factures, les expéditions, les avoirs, les pages CMS et les grilles de blocs CMS lorsque le fuseau horaire défini dans les préférences diffère du fuseau horaire défini sur un ordinateur local. Auparavant, l’analyse de la date était incorrecte et les résultats filtrés incluaient des données en dehors de la période définie.
- Adobe Commerce ne modifie plus les adresses e-mail personnalisées affectées aux commandes lorsque vous modifiez l’adresse e-mail principale affectée au client sur la page de modification du compte d’administrateur. Auparavant, lorsque vous modifiiez l’adresse e-mail principale d’un client, la nouvelle adresse e-mail était affectée à chaque commande créée pour ce client. GitHub-34397
- Adobe Commerce affiche désormais les enregistrements du magasin demandé sur la page de grille des avoirs dans les déploiements exécutant PHP 7.4. Auparavant, Adobe Commerce générait l’erreur suivante après la création d’un avoir et la tentative d’affichage :
The store that was requested wasn't found. Verify the store and try again
.
- Adobe Commerce affiche désormais les avoirs sur la page grille d'avoir pour les commandes créées à partir des vues de magasin dont le nom est précédé de chiffres. Auparavant, Adobe Commerce affichait l’erreur :
The store that was requested wasn't found. Verify the store and try again. Exception in /var/www/html/vendor/magento/module-store/Model/StoreRepository.php:75
. GitHub-35122
- Adobe Commerce affiche désormais les frais de livraison gratuits (0) sur les totaux des pages de facture Admin et Storefront. Auparavant, lorsque l’expédition était égale à zéro pour une commande, Adobe Commerce n’affichait pas le montant total d’expédition sur le total d’expédition de la page de facture.
- Adobe Commerce affiche désormais le statut correct de la commande lors du passage en caisse lorsque le crédit de la boutique cliente est utilisé.
- La colonne
increment_id
du tableausales_order
a été augmentée. Auparavant, les modules tiers qui supposaient quesales_order.increment_id
avait une longueur de 50 caractères n’enregistraient que les 32 premiers caractères d’uneincrement_id
. GitHub-34521
Modes de paiement
- Les administrateurs peuvent désormais passer une commande auprès de l'administrateur à l'aide du mode de paiement PayPal PayflowPro. Auparavant, Adobe Commerce affichait cette erreur :
No such entity with cartId = 0
.
- La page de vérification des paiements du workflow de passage en caisse affiche désormais le nom correct du mode de paiement lorsque le paiement est effectué avec Venmo, PayPal Later ou PayPal.
- La requête
cart
ne renvoie plus tous les modes de paiement actifs pour les commandes gratuites. GitHub-34036
Braintree
- Les commerçants peuvent désormais soumettre un remboursement partiel pour les commandes payées avec Apple Pay via Braintree. Il s’agissait d’un problème connu dans Adobe Commerce 2.4.4.
PayPal
- Adobe Commerce affiche désormais le nom correct du client dans une commande d’invité payée avec PayPal. Auparavant, le nom du client s’affichait en tant qu’invité.
- Le résolveur de la mutation createPaypalExpressToken a été mis à jour afin d’utiliser correctement la valeur spécifiée dans le champ d’entrée use_paypal_credit. Auparavant, il tentait d’utiliser un champ de
paypal_credit
non valide. GitHub-35180
Performances
- Les performances du chargement dynamique des blocs ont été améliorées. Auparavant, les segments de visiteurs n’étaient pas mis en cache par site web, ce qui entraînait des requêtes redondantes vers la base de données pour les mêmes données.
- La gestion du cache Redis a été améliorée grâce à l'ajout d'une durée de vie (date d'expiration) pour les caches de données de produits associés aux produits configurables. Auparavant, ces caches n’étaient pas évincés en raison de valeurs de durée de vie manquantes si la politique d’éviction de clé Redis était configurée sur une politique d’éviction volatile.
- Le nouvel attribut d’adresse client/client
Grid Filter Condition Type
contrôle la manière dont un filtre d’attribut est mis en correspondance avec les valeurs d’attribut dans la base de données. Les options incluentPartial Match
,Prefix Match
etFull Match
.
- L’indexeur de texte intégral de la recherche catalogue a été déplacé en dehors de la boucle des magasins, ce qui simplifie la réindexation. GitHub-33984
- Correction d’un problème lié aux
array_merge
dans les boucles. GitHub-33929
Tarification
- Les attributs de prix qui n’ont aucune valeur dans la portée par défaut (mais qui sont définis au niveau de la vue du magasin) sont désormais indexés correctement. Auparavant, les expressions SQL qui récupéraient les valeurs des attributs de prix dans la table EAV ne prenaient pas en compte le scénario dans lequel la valeur n’était pas définie dans la portée par défaut.
- Le prix indiqué sur la page des détails du produit est désormais identique au prix indiqué dans le workflow de passage en caisse pour les prix de niveau qui diffèrent selon la quantité sélectionnée (par exemple, un produit dont le prix est différent en fonction de l’achat de 2 articles au lieu de 5 articles). Auparavant, le prix de passage en caisse reflétait le prix de la quantité de produit la plus faible.
Promotions
- La valeur Heures d’utilisation d’une remise n’est plus incrémentée deux fois lorsqu’un client invité passe une commande avec une remise et enregistre ensuite un compte.
ReCAPTCHA
- Le bouton Envoyer sur les pages Connexion et Créer un compte est désormais inactif jusqu’à ce que ReCaptcha soit complètement chargé.
Autorisations de retour de marchandises (RMA)
- Le point d’entrée
GET /V1/returnsAttributeMetadata
fonctionne désormais correctement lorsque l’ID de jeu d’attributs par défaut de l’entitérma_item
diffère de l’ID d’installation par défaut. Auparavant, ce point d’entrée renvoyait un résultat vide si ces identifiants étaient différents.
- La case à cocher Utiliser la valeur par défaut, qui permet d’activer RMA sur la page de modification du produit, fonctionne désormais comme prévu pour le magasin par défaut. Auparavant, la case à cocher était désactivée immédiatement après l’enregistrement du produit.
Récompenses
- Les points de récompense peuvent désormais être remboursés lorsque la fonctionnalité de crédit de magasin est désactivée.
- Les performances de passage en caisse ont été améliorées lorsque des points de récompense sont appliqués. Lorsque la
entity
est nulle, la requête de base de données ne sera pas exécutée, car l’interrogation de la tablemagento_reward_history
n’est pas obligatoire dans ces circonstances.
- Les avoirs pour les commandes de clients ne vérifient plus les
customer_id
, ce qui ignore l'interrogation de la table de base de donnéesmagento_reward_history
pour les points de récompense. Cette modification a amélioré les performances.
Rôles
- La page Store > Configuration > Services affiche désormais comme prévu les informations de l’API Web Adobe Commerce lorsque l’accès à la ressource est défini sur Personnalisé dans l’onglet Ressources de rôle. GitHub-35506
Rechercher search-heading
- Le filtrage des produits par échantillon de couleur sur la navigation superposée affiche l’image correcte des produits après la correction.
- Les requêtes Elasticsearch fonctionnent désormais comme prévu lorsqu’
int
est configuré en tant qu’attribut detype
principal consultable. Auparavant, Adobe Commerce avait généré une exceptionElasticsearch\Common\Exceptions\BadRequest400Exception
.
- Vous pouvez désormais utiliser des synonymes de recherche avec le paramètre Termes minimum à faire correspondre dans les requêtes Elasticsearch. Auparavant, si ce paramètre était spécifié dans les paramètres et que des termes de recherche étaient ajoutés pour des mots-clés spécifiques, la recherche ne renvoyait aucun résultat.
- Adobe Commerce affiche désormais un nombre précis de suggestions de résultats de recherche sur le storefront dans les déploiements où les suggestions de recherche et le paramètre Afficher le nombre de résultats pour chaque suggestion sont activés. Auparavant, le nombre affiché en regard des mots-clés était nul.
- Les produits triés par attributs personnalisés sur la page Catalogue s’affichent désormais dans l’ordre prévu. Auparavant, les produits étaient triés en fonction de leur ID de valeur d’option d’attribut, qui reflète l’ordre dans lequel ils ont été ajoutés à l’attribut. GitHub-33810
- Le filtrage des produits par échantillon de couleur dans la navigation superposée affiche désormais les images correctes du produit. Auparavant, la clé de
PageCache
de navigation superposée n’incluait pas de paramètres de filtre pour les produits configurables.
- Correction des erreurs PHP sur le
catalogsearch/advanced/result
etcatalogsearch/advanced/index
pages. Auparavant, Adobe Commerce affichait cette erreur lorsqu’un tableau était transmis dans une chaîne de recherche avancée :Warning: trim() expects parameter 1 to be string, array given | magento/module-catalog-search
. GitHub-33586
Expédition
- Adobe Commerce ne renvoie plus d’erreur lors du chargement des taux d’expédition UPS si aucun mode d’expédition autorisé n’est sélectionné. Auparavant, lorsqu’un acheteur saisissait une adresse de livraison dans le workflow de passage en caisse dans ces conditions, aucune autre méthode de livraison n’était affichée et Adobe Commerce affichait une erreur sur le storefront. GitHub-34411
- Les prix des produits virtuels sont désormais exclus dans le tableau de calcul du montant d'expédition des taux. Auparavant, les frais d’expédition de ces produits n’étaient pas calculés correctement.GitHub-35185
- Les taux d’expédition de table à prix nul s’affichent désormais correctement dans le bloc Résumé de la commande du workflow de passage en caisse pour les commandes auxquelles un coupon de remise a été appliqué. Auparavant, la méthode d’expédition n’était pas affichée.
Évaluation
- Adobe Commerce ne nettoie plus le cache de toutes les pages après l’application d’une mise à jour d’évaluation pour une règle de vente dans laquelle les pages mises en cache restent inchangées.
- Le tableau de bord de l’évaluation du contenu n’affiche plus les mises à jour permanentes inactives.
- La modification de la date de fin d’une mise à jour d’évaluation à partir du tableau de bord intermédiaire applique maintenant correctement ces modifications à la mise à jour intermédiaire et à ses entités. (Une file d’attente a été introduite pour traiter les modifications des mises à jour de l’environnement intermédiaire.)
- Les commerçants peuvent désormais supprimer une date de fin pour une mise à jour planifiée ou supprimer et recréer une mise à jour. Auparavant, lorsqu’une date de fin était supprimée, une entité restait planifiée à cette heure. Adobe Commerce supprime désormais la mise à jour obsolète pour la restauration supprimée.
- Les mises à jour planifiées actives pour une page CMS sont désormais visibles comme prévu dans la section Modifications planifiées de la page CMS.
- La valeur de l’attribut
custom_design_to
est désormais mise à jour comme prévu lorsqu’une mise à jour planifiée est modifiée. Auparavant, deux mises à jour de conception de catégorie distinctes sans heure de fin étaient traitées comme une seule. Lorsque l’une des mises à jour planifiées a été supprimée alors que la première était en cours d’exécution, la valeur de l’heurecustom_design_from
est devenue supérieure aux valeurs de l’heurecustom_design_to
dans la prochaine mise à jour planifiée.
- Les Forms sont désormais renseignées avec les données comme prévu après la modification d’une mise à jour planifiée.
- Le correctif de données
vendor/magento/module-catalog-staging/Setup/Patch/Data/MigrateCatalogProducts.php
n’échoue plus lorsque la base de données inclut le produit avec des options personnalisées et que l’attributspecial_from_date
est défini.
- Les modifications sont désormais enregistrées lors d’une seconde mise à jour planifiée lorsque les modifications sont ajoutées par la mise à jour en cours d’exécution. Auparavant, les modifications n’étaient pas enregistrées et les commerçants devaient saisir à nouveau et enregistrer les modifications.
- Le journal des actions en bloc affiche désormais des informations sur les mises à jour planifiées
to be moved
ayant échoué. Auparavant, les informations sur ces échecs n’étaient disponibles que dans le fichiercron.log
.
- Les commerçants sont désormais limités à l’utilisation de prix séparés par des virgules lors de la modification d’un prix de produit dans une mise à jour planifiée, quels que soient les paramètres régionaux. Auparavant, les prix qui contenaient des virgules dans une mise à jour planifiée étaient divisés par 1 000 selon le paramètre régional.
- Les problèmes liés à l'expédition nationale de DHL dans les déploiements exécutant PHP 8.1 ont été résolus en exigeant des étiquettes imposables pour les expéditions internationales uniquement.
Taxe
- La taxe sur les produits fixe (FPT) s’affiche désormais correctement pour les produits du panier. Auparavant, si plusieurs produits du panier avaient les options Taxe fixe sur les produits (FPT) et Appliquer la taxe à FPT activées, tous les FPT étaient affectés au dernier produit du panier et réinitialisés pour d’autres produits.
- Le total de la taxe sur les produits fixe (FPT) pour la section de résumé de la commande du workflow de passage en caisse est désormais calculé correctement.
- Adobe Commerce met désormais à jour le prix du niveau Hors taxe pour un produit simple sur la page produit comme prévu une fois que la quantité du produit simple a changé.
- La validation a été ajoutée à la page de configuration du magasin pour vérifier si le pays sélectionné dans la liste déroulante figure sur la liste des pays de l’UE. Le bouton Valider le numéro de TVA est désormais visible uniquement pour les pays de l’UE. Auparavant, le bouton était visible pour tous les pays, y compris le Royaume-Uni.
- Les prix de niveau sont désormais calculés correctement lorsque Afficher les prix des produits dans le catalogue est défini sur Hors taxe ou Inclure et exclure la taxe. Auparavant, la page des détails du produit affichait les prix de niveau avec les taxes en dépit du paramètre .
- Les taxes sont désormais appliquées correctement pour les commandes à toute adresse valide dans les vitrines en utilisant le paramètre régional portugais. GitHub-34271
- La requête
cart
n’inclut plus la taxe lors du renvoi dessubtotal_with_discount_excluding_tax
. GitHub-33905
- Les requêtes API Web pour les données de commande (
GET /V1/orders/
) ne renvoient plus de valeurs négatives pour les totaux des lignes.
Test
- Correction des erreurs avec
Magento.GraphQl.CatalogGraphQl.ProductSearchTest.testSearchSuggestions
lors de l’exécution avec la configuration AWS Elasticsearch.
-
Le test d’intégration
testCreateProductOnStoreLevel
n’entraîne plus de transaction imbriquée sur la base de données. -
L'exception suivante ne se produit plus lors de l'exécution de tests WebAPI pour la fonction Envoyer un ami lorsque l'image du produit n'est pas définie sur PHP 8.1 :
exception main.ERROR: /var/www/html/lib/internal/Magento/Framework/DataObject.php:131 strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated
. GitHub-34864
Traductions et paramètres régionaux
- Vous pouvez désormais utiliser l’outil Traduire en ligne pour modifier le même élément plusieurs fois. Auparavant, seule la première modification apportée à l’aide de cet outil était incluse.
- Le sélecteur de vue de magasin ne bloque plus le volet de traduction lorsque vous modifiez le texte ou les libellés de l’administrateur. Vous pouvez désormais modifier ces fonctionnalités à partir du volet de traduction et l’interface affiche ces modifications lorsque vous cliquez sur Envoyer.
- Le format de date et d’heure d’administration pour les paramètres régionaux portugais brésilien et français est désormais valide.
- Ajout d’un accent grave (`) au programme de validation des noms afin que le compte client puisse être créé pour les prénoms ou les noms qui incluent cet accent.
- Le texte du bouton Ajouter au panier de la page Détails du produit reste désormais traduit dans la langue spécifiée dans les paramètres régionaux associés. Les fichiers de traduction sont désormais convertis en fichiers JavaScript correspondants en fonction des zones, des thèmes et des paramètres régionaux lors de la
translate_strategy=embedded
. Auparavant, le texte était rétabli à l’anglais après l’ajout du produit au panier.
- Les synonymes de recherche respectent désormais la portée de magasin qui leur est attribuée. Auparavant, un synonyme attribué à un magasin spécifique pouvait faire l’objet de recherches dans n’importe quel autre magasin.
- Les problèmes liés à la langue philippine (Philippines) ont été résolus. GitHub-33996
Interface utilisateur
- Les noms de produits longs de la grille Catalogue > Produits sont désormais entourés de mots au lieu d’être affichés sur une seule ligne.
- La plage de date de naissance minimale et maximale est désormais enregistrée en tant qu’horodatage correct, puis convertie d’un horodatage valide en un format de date valide.
- L’indisponibilité de
magento.com
n’entraîne plus de problèmes de performances lors de la connexion de l’administrateur. Un délai d’expiration a été ajouté à la demande de récupération de notification de publication.
- Les résultats des filtres Commande administrateur, Client et Grille de produits persistent désormais comme prévu lorsqu’ils s’affichent dans le navigateur Chrome.
- Vous pouvez désormais créer un client à partir de l’Administration lorsque
Magento_LoginAsCustomerAdminUi
est activé et que Store View To Login To est défini sur manual selection (Sélection manuelle). Auparavant, Adobe Commerce générait cette erreur :(Magento\Framework\Exception\LocalizedException): Unable to get Customer ID
. GitHub-33096
- La flèche Suivant est désormais désactivée comme prévu lorsqu’un acheteur atteint la dernière image miniature de la galerie d’images du produit.
- Le champ de saisie Recherche par mot-clé comporte désormais un élément
aria-label
au lieu d’un espace réservé sur la page Catalogue > Produit.
- Le lien Politique de confidentialité dans le pied de page d’administration renvoie désormais à la nouvelle politique de confidentialité d’Adobe.
- Les administrateurs peuvent désormais accéder aux options du menu Administration lorsque le regroupement JavaScript est activé en mode production. GitHub-35325
- Les administrateurs peuvent désormais définir la date d’expiration de l’utilisateur actuel au-delà de 2038 et enregistrer l’utilisateur. Auparavant, l’utilisateur dont la date d’expiration avait été modifiée ne pouvait pas se reconnecter après s’être déconnecté.
- Adobe Commerce affiche désormais un message d’erreur informatif lorsqu’un administrateur tente d’enregistrer une adresse avec un nombre excessif de lignes dans Admin Store > Attributes > Customer Address. L’administrateur peut maintenant supprimer les informations d’adresse supplémentaires et enregistrer l’adresse. Auparavant, Adobe Commerce validait les lignes supplémentaires mais n’enregistrait pas les données.
- La configuration de la vue Liste des produits dans la base de données et le stockage local a été mise à jour. Les vues de grille personnalisées sont désormais enregistrées lors du rechargement de la page et des modifications d’affichage.
- Vous pouvez désormais basculer entre les vues de magasin lorsque les restrictions de site web sont activées. Auparavant, le sélecteur d’affichage des magasins rencontrait des problèmes qui empêchaient le changement d’affichage des magasins.
- Le formulaire de chargement de l’icône favicon prend désormais en charge les types de fichiers
.ico
. Auparavant, lorsque vous tentiez de charger un fichier favicon avec ce type d’extension dans l’Administration, Adobe Commerce affichait cette erreur :Warning: imagecreatefromstring(): one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully in /var/www/html/vendor/magento/module-media-storage/Model/File/Validator/Image.php on line 64
. GitHub-34858
- Correction des problèmes d’affichage du menu déroulant Sélectionner dans la grille d’administration. GitHub-35386
Réécritures d’URL
- Les URL d’un produit dans une vue de magasin spécifique uniquement sont désormais supprimées du tableau
url_rewrite
et d’Admin après le changement du statut de visibilité du code d’attribut pour la vue de magasin spécifique en Non visible individuellement. Auparavant, toutes les URL étaient supprimées pour le produit dans le tableauurl_rewrite
. GitHub-34937
Vidéo
- Vous pouvez désormais utiliser les paramètres d’URL YouTube à l’aide de Page Builder pour ajouter une nouvelle vidéo. Auparavant, ces paramètres étaient automatiquement supprimés de l’URL.
- Vous pouvez désormais définir une vidéo Vimeo pour qu’elle s’exécute en arrière-plan dans un élément
banner
lorsque la CSP est définie surrestrict mode
. Auparavant, Adobe Commerce générait une erreur JavaScript.
Framework d’API web
- Mutex a été implémenté pour les commandes afin d’empêcher les conditions de concurrence lors de la mise à jour par des requêtes simultanées. Auparavant, les conditions de concurrence lors d’appels simultanés de l’API REST entraînaient un remplacement des informations de statut d’expédition dans la table Admin Items Ordered .
- L’héritage du rôle d’image du produit est désormais conservé, sauf s’il est explicitement défini dans la payload lors de la mise à jour d’un produit dans une vue de magasin spécifique via l’API REST.
- Le schéma Swagger (
/rest/schema
) utilise désormais des identifiants d’opération uniques.
- Les règles de prix de panier créées via le point d’entrée
POST /V1/salesRules/
conservent désormais les valeurs de code de coupon existantes après avoir modifié le statut de désactivé en activé. GitHub-35298
- Les règles de prix de panier créées via le point d’entrée
POST /V1/salesRules/
contiennent désormais des valeurs defrom_date
et deto_date
valides. GitHub-35265
CartItemInterface
inclut désormaiscustomizable_options
. GitHub-31180
- Les requêtes PUT et DELETE en bloc de l’API REST fonctionnent désormais comme prévu lorsque le module
Magento_ReCaptchaWebapiRest
est activé. GitHub-35348
- L’API Bulk Rest fonctionne désormais avec l’option
bySku
pour les produits configurables. Auparavant, il renvoyait une erreur 500.
- Le point d’entrée
/V1/products/base-prices
fonctionne désormais comme prévu avec Mode Prix de catalogue - Site web. GitHub-30132
- La création d’un barème de prix spécial avec le point d’entrée
POST /V1/products/special-price
fonctionne désormais comme prévu. Auparavant, le point d’entrée renvoyait cette erreur :Future Update already exists in this time range. Set a different range and try again
.
Liste de souhaits
- La mise à jour d'une quantité d'article à partir de la page de liste de souhaits met désormais à jour la quantité sur la page des détails du produit comme prévu. Adobe Commerce sélectionne désormais la valeur mise à jour dans l’URL du produit et remplit le champ
qty
de la page des détails du produit à partir de la liste de souhaits elle-même.
Problèmes connus
Problème : les libellés des règles de vente intermédiaires peuvent ne pas correspondre après une mise à niveau vers Adobe Commerce 2.4.6 ou une version ultérieure à partir des versions de produit antérieures à la version 2.4.5. Solution : appliquez ACSD-50625_2.4.5-P1.patch pendant la mise à niveau avant l’étape de mise à jour des métadonnées. Consultez l’article de la base de connaissances salesRules labels issues with upgrade from versions < 2.4.5.
Étapes générales de la résolution de ce problème :
- Téléchargez le correctif requis. Consultez l’article de la base de connaissances salesRules labels issues with upgrade from versions < 2.4.5.
- Suivez les étapes de mise à niveau décrites dans la phase Gestion des packages du processus de mise à niveau Effectuez une mise à niveau.
- Appliquez ce correctif pendant la mise à niveau après la phase de gestion des packages et avant la phase de mise à jour des métadonnées. Consultez Comment appliquer un correctif de compositeur fourni par Adobe.
- Terminez le processus de mise à niveau.
Problème : les utilisateurs administrateurs ne peuvent pas commander ni commander à nouveau des clients auprès de l’administrateur lorsque Braintree est activé. Lorsque l’utilisateur administrateur clique sur Commander ou Réorganiser, Adobe Commerce n’envoie pas la commande et le system.log
affiche le message d’erreur suivant : report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174
. Solution : BUNDLE-3137-composer.patch
est désormais disponible. Pour une discussion sur ce problème et l’accès au correctif🔗 consultez l’article de la base de connaissances L’administrateur ne peut pas créer de commande/réorganiser un paiement Braintree activé. Les commerçants cloud doivent télécharger les correctifs cloud pour Commerce v1.0.18. Un correctif sera également inclus dans Adobe Commerce 2.4.5-p1.
Problème : les éléments d’infrastructure RabbitMQ (échanges, files d’attente) peuvent ne pas être initialisés après une nouvelle installation (et non une mise à niveau) d’Adobe Commerce 2.4.5. Cette configuration incorrecte de RabbitMQ peut entraîner une erreur fatale lors de l’exécution d’opérations asynchrones ou de la génération d’un profil de performances. Les déploiements dans le cloud ne sont pas affectés. Solution : les commerçants effectuant une nouvelle installation d’Adobe Commerce 2.4.5 sur site doivent exécuter bin/magento setup:upgrade --keep-generated
après avoir utilisé bin/magento setup:config:set
pour configurer RabbitMQ ou installer Adobe Commerce en transmettant RabbitMQ options de configuration à la commande setup:install
. Voir RabbitMQ.
Contributions de la Communauté
Nous sommes reconnaissants envers l’ensemble de la communauté Magento Open Source et souhaitons saluer leurs contributions à cette version.
L’équipe d’ingénierie de communauté Magento Contributors tient à jour une liste des principaux contributeurs individuels et partenaires par mois, trimestre et année. Depuis cette page Contributeurs, vous pouvez suivre les liens vers leurs relations publiques fusionnées sur GitHub.
Contributions des partenaires
Le tableau suivant présente les contributions des partenaires. Ce tableau répertorie le partenaire qui a contribué à la demande d’extraction, le numéro de la demande d’extraction externe et le numéro de problème GitHub qui lui est associé (le cas échéant).
Contributions des contributeurs individuels
Le tableau suivant identifie les contributions des membres de notre communauté. Ce tableau répertorie le membre de la communauté qui a contribué à la demande d’extraction, le numéro de demande d’extraction externe et le numéro de problème GitHub qui lui est associé (le cas échéant).
Configuration requise
Notre pile technologique est construite sur PHP et MySQL. Pour plus d'informations, voir Configuration requise.
Instructions d’installation et de mise à niveau
Vous pouvez installer Adobe Commerce 2.4.5 à l’aide du compositeur.