Notes de mise à jour d’Adobe Commerce 2.4.4
Adobe Commerce 2.4.4 introduit la prise en charge de PHP 8.1. Toutes les bibliothèques de projets et dépendances ont été mises à jour pour des raisons de compatibilité avec PHP 8.1. Les dépendances du compositeur principal et les bibliothèques tierces ont également été mises à niveau vers les dernières versions compatibles avec PHP 8.1. Cette version prend également en charge OpenSearch 1.2.
Cette version comprend près de 250 correctifs de qualité et améliorations.
Appliquez AC-3022.patch
pour continuer à proposer DHL comme opérateur de transport
DHL a introduit la version 6.2 du schéma et va abandonner la version 6.0 dans un avenir proche. Adobe Commerce 2.4.4 et les versions antérieures qui prennent en charge l’intégration DHL ne prennent en charge que la version 6.0. Les commerçants qui déploient ces versions doivent appliquer AC-3022.patch
dès que possible pour continuer à proposer DHL en tant qu'opérateur de transport. Pour plus d’informations sur le téléchargement et l’installation du correctif, reportez-vous à l’article Appliquer un correctif pour continuer à proposer DHL comme opérateur de transport de la base de connaissances.
Autres informations sur les versions
Bien que le code de ces fonctionnalités soit fourni avec les versions trimestrielles du code principal de 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 bogues pour ces projets sont documentés dans les informations de version distinctes spécifiques au projet qui sont disponibles dans la documentation de chaque projet.
composer.json
fichier avant que les plugins ne soient exécutés. Actuellement, les modules externes inclus dans le composer.json
fichier mais non marqués comme approuvés sont automatiquement installés. Toutefois, à compter de juillet 2022, le compositeur ne chargera pas les modules externes sauf s’ils ont été explicitement autorisés. Consultez l’article de la base de connaissances Problèmes liés aux modules externes de Composer lors de la mise à niveau vers Adobe Commerce 2.4.4 pour obtenir des instructions sur la modification du fichier afin d’autoriser explicitement le composer.json
chargement des modules externes.Correctifs inclus dans cette version
Adobe Commerce 2.4.4 inclut la résolution de tous les problèmes résolus par les correctifs suivants, fournis pour Adobe Commerce et Magento Open Source 2.4.3, 2.4.3-p1 et 2.3.7-p2 :
-
La vulnérabilité a été corrigée par
MDVA-43395_EE_2.4.3-p1_COMPOSER_v1.patch
cetteMDVA-43443_EE_2.4.3-p1_COMPOSER_v1.patch
version. -
AC-384_Fix_Incompatible_PHP_Method__2.4.3_ce.patch
. Ce correctif corrige une erreur PHP fatale survenue pendant la mise à niveau. Voir l’article de la base Adobe de connaissances PHP Upgrade 2.4.3, 2.3.7-p1 PHP Fatal error Hotfix .
Appliquez ce correctif après l’installation de la version 2.4.4
Nous vous recommandons d’appliquer le correctif suivant après l’installation d’Adobe Commerce 2.4.4 :
braintree-disabled-partial-capture-for-applepay-googlepay.patch
. Les commerçants ne peuvent pas soumettre de remboursement partiel pour les commandes payées avec Apple Pay par le biais de Braintree. Lorsqu’un marchand tente de créer une note de crédit pour un remboursement partiel de la facture de commande, le champ Qté au remboursement n’est pas modifiable. Ce correctif résout ce problème. Voir l’article de la base de connaissances Adobe Commerce 2.4.4 : impossible de créer des factures partielles .
Faits saillants de Adobe Commerce 2.4.4
Recherchez les points forts suivants dans cette version.
Améliorations de la sécurité
Cette version comprend un correctif de sécurité et des améliorations de la sécurité de la plateforme. Ce correctif de sécurité a été rétroporté sur Adobe Commerce 2.4.3-p2 et Adobe Commerce 2.3.7-p3.
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 client ou prendre le contrôle des sessions d’administrateur. 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 actions suivantes :
- PLACE SUR LA LISTE AUTORISÉE IP
- Authentification à deux facteurs
- utilisation d'un VPN
- utilisation d’un emplacement unique plutôt que
/admin
- bonne hygiène des mots de passe
Consultez Adobe Bulletin de sécurité pour obtenir les dernières informations sur ces problèmes résolus.
Autres améliorations de la sécurité
Les améliorations apportées à la sécurité dans cette version améliorent la conformité aux dernières meilleures pratiques de sécurité, notamment :
-
L’utilisation de la variable Email a été abandonnée dans la version 2.3.4 dans le cadre d’une atténuation des risques de sécurité en faveur d’une syntaxe de variable plus stricte. Ce comportement hérité a été complètement supprimé dans cette version en tant que prolongement de cette limitation des risques de sécurité.
Par conséquent, les modèles de courrier électronique ou de newsletter qui fonctionnaient dans les versions précédentes de Adobe Commerce peuvent ne pas fonctionner correctement après la mise à niveau vers Adobe Commerce 2.4.4 ou Magento Open Source 2.4.4. Les modèles concernés incluent les remplacements d’administrateur, les thèmes, les thèmes enfants et les modèles de modules personnalisés ou d’extensions tierces. Votre déploiement peut toujours être affecté même après l’utilisation de l’outil de compatibilité de mise à niveau pour corriger les utilisations obsolètes. Pour plus d’informations sur les effets potentiels et les directives relatives à la migration des modèles concernés, voir Migration des modèles d’email personnalisés .
-
Les jetons d’intégration ne peuvent plus être utilisés pour l’authentification de jeton porteur d’API. Auparavant, un jeton d’intégration pouvait être utilisé comme clé autonome pour l’authentification par jeton. Cependant, ce comportement a été désactivé par défaut en raison des implications de sécurité d’un jeton d’accès sans expiration. Le comportement précédent peut être activé via la ligne de commande ou l’administrateur. Voir Authentification basée sur les jetons.
-
Les ID de session ne sont plus stockés dans la base de données.
-
Les jetons d’accès OAuth et les jetons de réinitialisation de mot de passe sont désormais chiffrés lorsqu’ils sont stockés dans la base de données.
-
La validation a été renforcée afin d’empêcher le téléchargement d’extensions de fichiers non alphanumériques.
-
Ajout de la prise en charge de reCAPTCHA pour les codes de bon.
-
Swagger est désormais désactivé par défaut lorsqu’Adobe Commerce est en mode de production.
-
Le protocole HTTPS est désormais activé par défaut pour le storefront Adobe Commerce. Les paramètres Utiliser des URL sécurisées sur Storefront et Utiliser des URL sécurisées dans les paramètres Administrateur sont activés par défaut, et tous les cookies intégrés sont désormais définis comme sécurisés.
-
Le module externe de confusion de dépendance est désormais requis pour toutes les installations de Adobe Commerce. Auparavant, ce module externe était uniquement requis pour les installations basées sur Composer. Il autorise désormais les versions approuvées. Les marchands peuvent contourner les contraintes définies dans ce plugin qui interdisent certaines combinaisons d’installations Composer. Les contraintes peuvent être contournées pour les versions approuvées et Adobe Commerce affiche désormais un avertissement avant de procéder à l’installation.
-
Les développeurs peuvent désormais configurer la limite de taille des tableaux acceptés par les points d’entrée RESTful d’Adobe Commerce selon chaque point d’entrée. Voir Sécurité de l'API.
-
Ajout de mécanismes permettant de limiter la taille et le nombre de ressources qu’un utilisateur peut demander via une API web à l’échelle du système, ainsi que de remplacer les valeurs par défaut sur des modules individuels. Ceci résout le problème résolu par
MC-43048__set_rate_limits__2.4.3.patch
. Voir Sécurité de l'API.
Améliorations de la plateforme
Adobe Commerce 2.4.4 prend désormais en charge PHP 8.1. Toutes les bibliothèques de projets et dépendances ont été mises à jour pour des raisons de compatibilité avec PHP 8.1. Autres améliorations de la plateforme :
-
Adobe Commerce 2.4.4 prend en charge Elasticsearch 7.16 et OpenSearch 1.2. Les marchands Adobe Commerce avec des déploiements hébergés sur site peuvent utiliser l’une ou l’autre des solutions. Toutefois, OpenSearch est désormais le moteur de recherche par défaut pour les déploiements Adobe Commerce 2.4.4 hébergés dans le cloud. Tous les clients avec des déploiements cloud qui effectuent la mise à niveau vers la version 2.4.4 doivent utiliser OpenSearch. Voir Transformation en OpenSearch pour Adobe Commerce sur Cloud 2.4.4
-
La bibliothèque
JQuery
a été mise à niveau vers la version 3.6. La bibliothèquejquery-ui
a été mise à niveau vers la version 1.13.0. Plusieurs autres bibliothèques JavaScript ont été mises à jour vers les versions les plus récentes. -
TinyMCE 5.8.1 est désormais pris en charge. TinyMCE 4 a été supprimé du code base.
-
La bibliothèque
RequireJS
a été mise à niveau vers la dernière version (v2.3.6). [ ](https://github.com/magento/magento2/issues/33672) -
PHPUnit a été mis à niveau vers la dernière version (9.5.x). Les structures de test et de test ont été mises à jour pour être compatibles avec la nouvelle version.
-
La plupart des dépendances Laminas ont été mises à niveau vers les dernières versions compatibles avec PHP 8.1. Trois dépendances Laminas ont été supprimées du code base pour réduire le nombre de dépendances.
Mise à niveau de l’interface utilisateur jQuery
L’interface utilisateur jQuery a été mise à niveau vers la dernière version (v1.13.0). Les composants jQuery v1.10.0 suivants ont été supprimés :
-
ajaxOptions
etcache
les options pour les onglets. Voir onglets. -
.zIndex()
. L’interface utilisateur jQuery v1.12.1 comprendjquery/z-index.js
, qui prend en charge l’utilisation de.zIndex()
. Voir IU Core. -
Blocages de données pour les noms de widgets. Vous devez utiliser le nom complet de la clé
.data()
. -
Codage en dur de classes telles que
ui-corner-all
dans les widgets.
Améliorations des performances et de l’évolutivité
Les améliorations des performances d’Adobe Commerce améliorent le traitement des commandes de débit élevé et l’optimisation de la file d’attente des messages. La fonctionnalité de commandes asynchrones introduite dans cette version prend en charge la création d’environ 60 000 commandes/heure. Les versions antérieures d’Adobe Commerce prenaient en charge le traitement d’environ 10 000 commandes/heure, ce qui présentait un goulot d’étranglement potentiel pour les ventes Flash. La nouvelle fonctionnalité multi-consommateurs prend en charge la mise à l’échelle du nombre de consommateurs de la file d’attente de messages sur une seule instance cloud et augmente le nombre de commandes traitées par heure.
Améliorations des performances de cette version :
-
La fonction AsyncOrder prend en charge un placement de commande plus rapide que l’exécution synchrone ne le permet. Lorsque AsyncOrder est activé, le placement de la commande est exécuté en arrière-plan pendant que les acheteurs effectuent d’autres tâches sur le storefront.
-
La nouvelle option de configuration Activer la vérification du stock au chargement du panier permet de changer la vérification du stock lors du chargement d’un produit dans le panier. Elle est activée par défaut. Lorsque vous désactivez cette option, Adobe Commerce ignore la vérification de l’inventaire lorsque le devis se charge, ce qui accélère le paiement, en particulier pour les paniers contenant de nombreux articles.
-
La nouvelle
multiple_processes
option de configuration prend en charge l’exécution de consommateurs parallèles dans plusieurs processus. Auparavant, exécutaitcron
un consommateur unique en cas de besoin. Le lancement de plusieurs consommateurs pour exécuter des processus en parallèle peut améliorer la vitesse d’exécution des tâches. Pour activer cette fonction, effectuez unapp/etc/env.php
ajoutmultiple_processes
au fichier. -
Les opérations de panier pour les paniers contenant plus de 750 produits configurables ont été améliorées en augmentant la limite de mémoire définie par
max_input_vars
dans le fichier pour prendre en charge lephp.ini
volume des variables d’entrée. -
Optimisation du traitement des règles de vente lors du paiement en différant le calcul du total. En règle générale, le traitement des règles de vente se produit chaque fois qu’un acheteur ajoute un produit au panier, met à jour la quantité du produit ou clique sur le bouton Passer commande . Les vendeurs peuvent activer ce report en définissant la variable
checkout/deferred_total_calculating
dans le fichierenv.php
. Vous pouvez également exécuterbin/magento setup:config:set --deferred-total-calculating 1|0
. -
Améliorations du processus de validation des commandes affectées par une règle de prix de panier lors du placement de commande asynchrone.
GraphQL
Cette version inclut les améliorations suivantes de GraphQL :
- Couverture GraphQL complète pour les cotations négociables. Les utilisateurs de l’entreprise B2B peuvent désormais effectuer toutes les tâches liées aux devis négociables à l’aide de GraphQL. Les versions précédentes de cette API prenaient en charge les flux de négociation, mais pas les extractions.
Nouvelles mutations
-
mutation
assignCustomerToGuestCart
-
mutation
placeNegotiableQuoteOrder
-
mutation
setNegotiableQuoteBillingAddress
-
setNegotiableQuotePaymentMethod
mutation -
mutation
setNegotiableQuoteShippingMethods
-
mutation
setNegotiableQuoteShippingAddress
-
Améliorations des performances :
-
Les performances des opérations de panier GraphQL ont été améliorées. La méthode
collectQuoteTotals()
n’est désormais appelée qu’une seule fois lors d’une requête GraphQL, ce qui réduit le temps de réponse. -
Les performances de Storefront ont été améliorées par des modifications apportées à la manière dont les requêtes GraphQL sont mises en cache. Les requêtes GraphQL envoyées avec des jetons
auth
sont maintenant mises en cache rapidement et en vernis.
-
-
Nouveaux paramètres de configuration d’administration liés au storefront. La requête
storeConfig
renvoie désormais les paramètres de configuration pour les méthodes de paiement Zero Subtotal Checkout et Check/Money Order . -
Bibliothèque GraphQL principale mise à jour. La bibliothèque
webonyx
, qui permet au core GraphQL de fonctionner, a été mise à niveau vers la version ^14.9. -
Correction de problèmes de traduction dans GraphQL avec des magasins multisites et multilingues. Le résolveur GraphQL renvoie désormais les chaînes traduites en fonction de la portée du magasin, comme prévu.
-
GraphQL fournit désormais à New Relic des noms de transaction descriptifs, qui peuvent s’avérer utiles pour le débogage. GitHub-30915
Consultez le Guide🔗 du développeur GraphQL pour plus de détails sur ces améliorations.
B2B
Cette version comprend plusieurs correctifs de bogues. Voir Notes de mise à jour B2B.
Extensions groupées avec les fournisseurs
À l’exception de Braintree, toutes les extensions groupées par les fournisseurs ont été supprimées de la base de code Adobe Commerce 2.4.4. Les commerçants doivent migrer vers les extensions officielles, qui sont disponibles sur le Commerce Marketplace.
PWA Studio
PWA Studio v.12.3.0 est compatible avec Adobe Commerce 2.4.4. Il comprend la prise en charge de reCaptcha, de l’optimisation du contenu du créateur de pages et du contenu personnalisé. Pour plus d’informations sur les améliorations et les correctifs, voir Versions de PWA Studio. Voir Compatibilité des versions pour obtenir la liste des versions de PWA Studio et de leurs versions principales Adobe Commerce compatibles.
Améliorations des paiements PayPal
-
L’option de paiement Venmo est maintenant prise en charge.
-
Payer plus tard a été ajouté en tant qu’option pour les acheteurs en fonction de l’emplacement de l’acheteur, et non de l’emplacement du marchand.
-
Les marchands peuvent désormais définir le pays d’achat lorsqu’ils testent l’expérience d’achat dans le pays de leur choix. Auparavant, les tests étaient limités aux tests uniquement pour le pays dans lequel le commerçant est situé. Cette modification n’est valide qu’en mode sandbox.
-
La messagerie sur la page de paiement affiche désormais des messages précis sur le montant et le nombre d’incréments que l’acheteur devra payer lors de l’utilisation de Payer plus tard.
Live search
Live Search prend désormais en charge PHP 8.1.
Le nouveau Magento_ElasticsearchCatalogPermissionsGraphQl
module est désactivé pendant l’installation🔗 mise à jour de Live Search. Les installations Live Search existantes doivent être mises à niveau vers Live Search 2.0.0 pour tirer parti de ces fonctionnalités. Pour plus d’informations, consultez les notes de mise à jour de Live Search🔗.
Mises à jour sur l’accessibilité
Cette version apporte une conformité accrue aux directives d’accessibilité standard. Ces améliorations améliorent l’expérience des utilisateurs ayant une vision limitée ou ayant des capacités linguistiques, cognitives et d’apprentissage limitées. Les performances des outils de Reader d’écran ont également été améliorées.
Parmi les améliorations apportées à l’accessibilité, mentionnons les suivantes :
- Liens d’info-bulle avec du texte et des étiquettes précises, visibles et ciblées sur les tâches pour les entrées
- Les boutons de modification ont maintenant un texte unique.
- Les boutons d’administration ont désormais un objectif unique, accessible et descriptif, conformément aux normes AA.
- Les images d’icônes qui transmettent du sens offrent maintenant une alternative textuelle.
- Amélioration du contraste des boutons d’administration et des champs de formulaire avec un rapport de contraste d’au moins 3:1 avec les couleurs adjacentes.
Créateur de pages
- Les marchands peuvent désormais ajouter du texte alternatif (
alt_text
) aux images (image, bannière, diapositive) pour améliorer l’accessibilité du contenu. GitHub-746
Problèmes résolus
Nous corrigeons des centaines de problèmes dans le code principal Adobe Commerce 2.4.4. Un sous-ensemble de ces problèmes résolus est décrit ci-dessous.
Installation, mise à niveau, déploiement
- Adobe Commerce consigne désormais les erreurs de déploiement de contenu statique dans les fichiers journaux de génération comme prévu.
- Les correctifs de données ne peuvent plus ignorer les contraintes uniques d’une table et insérer des valeurs en double dans une table de base de données MySQL. Auparavant, les correctifs pouvaient insérer des valeurs en double, ce qui corrompait la base de données.
- Les marchands peuvent désormais effectuer une mise à niveau réussie d’un déploiement Adobe Commerce 2.4.2 avec Klarna vers Adobe Commerce 2.4.3. GitHub-33760
- La configuration du générateur de plan de site peut maintenant être modifiée à partir de la ligne de commande. Auparavant, Adobe Commerce affichait cette erreur lorsque vous essayiez de modifier la configuration du plan de site en dehors de l’interface d’administration :
Import failed: Notice: Trying to access array offset on value of type null in app/code/Magento/Cron/Model/Config/Backend/Sitemap.php on line 78
. GitHub-31428
- La commande
bin/magento app:config:import
s’exécute désormais sans erreur lorsque vous mettez à jour les valeurstime
dansconfig.php
. Auparavant, la modification de la configuration des alertes de produit par modification manuelle (c’est-à-dire sans utiliser l’administrateur) entraînait une erreur.
Accessibilité
- Les erreurs d’accessibilité avec navigation sur les pages de panier et de passage en caisse ont été résolues. GitHub-34483
- Les lecteurs d’écran peuvent désormais lire tous les éléments de formulaire pertinents sur les pages de produit.
- Le contraste a été amélioré pour la suppression d’images et le déplacement des boutons d’icône dans le storefront afin d’améliorer la lisibilité pour les utilisateurs malvoyants.
- L’icône en forme de loupe utilisée pour exécuter des recherches dans l’interface du produit se voit attribuer un nom accessible et une alternative textuelle.
- La barre d’outils de l’éditeur de texte enrichi est désormais accessible à l’aide de la touche de tabulation.
- L’entrée de sélection Cet élément a du poids sur la page de détails Catalogue > Produit comporte désormais des étiquettes visibles et un nom accessible.
- Le nom accessible du contrôle inclut désormais le texte de son libellé visible pour le nombre d’éléments par liste déroulante de page.
- Les commandes de tableau sur la page de détails Catalogue > Produit ont désormais des libellés visibles et un nom accessible lorsque la table est réduite.
- Les liens d’édition de la table Produits contiennent désormais un texte de lien significatif unique.
- Les déclencheurs qui développent les info-bulles fournissent désormais des noms textuels.
- Les boutons du storefront ont désormais des noms accessibles uniques et descriptifs. Auparavant, les boutons fractionnés avec un bouton de texte et un bouton d’icône fléchée adjacent portaient le même nom accessible.
- Le contraste a été amélioré pour la suppression d’images et le déplacement des boutons d’icône dans le storefront afin d’améliorer la lisibilité pour les utilisateurs malvoyants.
- Des alternatives textuelles ont été ajoutées à l’icône en forme de crayon qui s’affiche lorsqu’un commerçant modifie l’entrée de l’accordéon Optimisation pour le moteur de recherche.
- L’icône en forme de loupe utilisée pour exécuter des recherches dans l’interface du produit se voit attribuer un nom accessible et une alternative textuelle.
- Le champ de saisie de texte de la page de produit New View a désormais un nom accessible.
- L’entrée de sélection Cet élément a du poids sur la page de détails Catalogue > Produit comporte désormais des étiquettes visibles et un nom accessible.
AdminGWS
- Les administrateurs disposant d’autorisations limitées peuvent désormais créer un retour comme prévu.
Serveur principal
- Les administrateurs peuvent désormais se connecter à l’administrateur dans un déploiement pour lequel un chemin d’accès d’administrateur personnalisé est configuré et la clé secrète activée. Auparavant, Adobe Commerce affichait cette erreur :
Invalid security or form key. Please refresh the page
.
- Adobe Commerce ne redirige plus vers la portée Affichage de l’ensemble du magasin lorsque la hiérarchie multi-magasin change. Auparavant, une fois la hiérarchie enregistrée, les acheteurs étaient redirigés vers une URL de magasin incorrecte et la portée Toutes les vues de magasin était sélectionnée dans un déploiement multi-magasin.
Lot de produits
- Les acheteurs peuvent désormais ajouter un produit en regroupement avec la taxe sur les produits fixe et deux options au panier. Auparavant, Adobe Commerce n’ajoutait pas le produit et affichait cette erreur :
We can't add this item to your shopping cart right now
.
- La validation de formulaire sous la forme des attributs
data-validate
etmin
a été ajoutée au champ de quantité du panier afin d’éviter des valeurs négatives pour les produits du lot.
- La requête
products
filtre désormais correctement les produits groupés lorsque les produits enfants sont désactivés au niveau de l’affichage de magasin. Auparavant, la requête renvoyait les produits enfants qui étaient désactivés au niveau de l’affichage en magasin.
cron
efface désormais le cache de la catégorie de produits comme prévu lorsindexer_update_all_views
de l’exécution. Auparavant, Adobe Commerce affichait un nombre de produits incorrect sur la page de catégorie après la mise à jour en masse de nombreux produits de la catégorie.
- Adobe Commerce met désormais à jour le cache de produits de catégorie comme prévu lorsqu’un produit groupé réapparaît en stock.
- L’algorithme de nettoyage du cache qui s’exécute lors de la réindexation a été optimisé. Les produits groupés s’affichent désormais comme prévu lorsqu’une catégorie est mise en cache pendant la réindexation. Auparavant, les produits groupés n’étaient pas affichés pendant des heures après la mise en cache des catégories de produits pendant la réindexation.
- La conversion de devise se produit désormais comme prévu dans les confirmations par e-mail pour les achats de produits groupés dans des déploiements multi-magasins qui utilisent différentes devises. GitHub-33426
- Les remises spéciales sur les prix avancés s’affichent désormais correctement pour les produits groupés avec un préfixe % dans la grille de produits. Auparavant, une remise de % s’affichait incorrectement avec le préfixe $ au lieu de % dans la grille de produits.
- L’état du produit groupé dans l’administrateur se met désormais automatiquement à jour lorsqu’un produit associé modifie son état.
- Le résolveur GraphQL pour les produits de lot vérifie désormais si les produits de lot enfant ont été désactivés. Auparavant, cette vérification n’était pas effectuée et des requêtes telles que
categoryList
renvoyaient des produits enfants qui n’étaient pas vendables.
- Les réponses de requête
cart
renvoient désormais des remises précises pour les produits de lot avec des prix dynamiques. Auparavant, les réponses de requête incluaient des remises appliquées individuellement à chaque produit du lot.
Cache
- Le cache de page ne se développe plus rapidement lors d’une utilisation standard. GitHub-9458
- Le placement d’une commande n’entraîne plus la suppression de toutes les balises de cache liées aux produits commandés du cache de vernis. GitHub-30128
- Le cache de page de site complet n’est plus effacé lorsque vous mettez à jour un produit des catégories principales ou exécutez un index pour mettre à jour les attributs de produit ou l’état du stock. Auparavant, le cache Varnish ajoutait des ID de catégorie de menu supérieur à toutes les balises de cache de page. GitHub-33465
Panier et passage en caisse
- Le prix minimum annoncé Qu’est-ce que c’est ? sur la page du panier est maintenant cliquable et ouvre la fenêtre contextuelle d’information comme prévu. Auparavant, le fait de cliquer sur ce lien n’avait aucun effet.
- Les acheteurs peuvent désormais passer des commandes sans erreur après un délai d’expiration de session dans les déploiements où le panier persistant est activé. Auparavant, Adobe Commerce affichait une erreur de paiement après un délai d’expiration de session.
- L’attribution d’une valeur de commande de tri élevée à un attribut d’adresse du client ne provoque plus de dégradation des performances sur la page de passage en caisse.
- Adobe Commerce rétablit désormais la quantité du produit du panier sur la valeur précédente si la quantité mise à jour n’est pas valide.
- Cliquer sur le bouton Ajouter au panier de la section Récemment consultés redirige désormais vers la page des détails du produit, comme prévu. Auparavant, les acheteurs étaient redirigés vers la page de liste de produits.
- Les acheteurs invités peuvent désormais passer à la caisse avec une adresse client qui contient plusieurs types d’attributs d’adresse client personnalisés. Auparavant, les valeurs des attributs personnalisés n’étaient pas correctement formatées lorsqu’elles étaient affichées lors du paiement. GitHub-30290
- Adobe Commerce applique désormais correctement le seuil d’expédition gratuite aux commandes lorsque les tarifs de table sont activés. GitHub-21832
- Vous pouvez désormais utiliser
POST /V1/guest-carts/:cartId/items
pour ajouter des produits simples avec différentes options à un panier. Auparavant, cet appel modifiait la quantité du premier produit simple que vous aviez ajouté au lieu d’ajouter un deuxième produit simple avec les options spécifiées. GitHub-32302
- La section Résumé de la commande de la page de paiement affiche désormais la devise et le montant corrects lorsqu’un déploiement est configuré pour
Poland
le pays etPLN
la devise. Auparavant, la page du panier et du passage en caisse affichait le montant 0 PLN.
- Adobe Commerce ne renvoie plus d’erreur lorsqu’un acheteur clique sur Mettre à jour le panier après avoir modifié la quantité d’un produit dans le mini-panier. Auparavant, Adobe Commerce affichait cette erreur :
The quote item isn't found. Verify the item and try again
.
- Les requêtes GraphQL
products
pour les produits configurables dans un magasin spécifique renvoient désormais les fourchettes de prix des produits sur le magasin spécifié uniquement. Auparavant, les requêtes renvoyaient des fourchettes de prix pour des produits simples sur des magasins non spécifiés.
- Adobe Commerce ne renvoie plus cette erreur lorsqu’un acheteur ajoute une adresse de facturation à laquelle il manque un champ de rue :
Uncaught TypeError: Unable to process binding "text: function(){return currentBillingAddress().street.join(', ') }"
. GitHub-33826
- Adobe Commerce ne renvoie plus d’erreur de console lors du paiement dans les magasins dont le mini-panier a été supprimé. GitHub-34513
- Le passage en caisse n’échoue plus au stade du paiement lorsque l’adresse de facturation manque de valeurs de champ de rue ou que la valeur de champ de rue n’est pas un tableau. Auparavant, l’extraction échouait avec cette erreur :
Uncaught TypeError: Unable to process binding "text: function(){return currentBillingAddress().street.join(', ') }"
. GitHub-33826
- Le total des ventes est maintenant calculé correctement dans la grille du rapport des coupons. Auparavant, le total des ventes n’incluait pas le montant des frais d’expédition.
- Les remises sur l’ensemble du panier sont désormais calculées correctement lorsque l’acheteur passe d’un mode d’expédition à l’autre.
- La liste déroulante du champ État de la page de commande de création d’administration est maintenant remplie par les valeurs prédéfinies pour le pays sélectionné. Auparavant, ce champ était un champ de texte d’entrée au lieu d’un menu déroulant.
- Adobe Commerce ne renvoie plus d’erreur après avoir utilisé la
addConfigurableProductsToCart
mutation pour ajouter un produit configurable à un panier directement après avoir modifié l’affichage du magasin.
- Adobe Commerce ne renvoie plus d’erreur lorsque vous utilisez la
addConfigurableProductsToCart
mutation pour ajouter un enfant désactivé d’un produit configurable au panier. Auparavant, Adobe Commerce générait une erreur de violation de contrainte d’intégrité.
- Les produits de vente croisée ne sont plus visibles sur la page du panier lorsque le paramètre Afficher les articles de vente croisée dans la configuration du panier est désactivé.
- La valeur d’utilisation du coupon ne change plus si l’ordre auquel le bon a été appliqué échoue. Auparavant, les coupons générés automatiquement à usage unique étaient marqués comme non valides après que le coupon ait été appliqué dans le panier, mais que la commande n’ait pas été passée.
- La validation a été ajoutée au processus de paiement pour comparer l’adresse postale du client à la valeur par défaut. Si le processus de validation identifie des modifications, il les traite
customer_address_id
null
comme une nouvelle adresse client. Auparavant, si le client enregistrait l’adresse sans validation lors du paiement et que le même client essayait de passer une commande en utilisant la même adresse après que la validation ait été appliquée au champ de paiement, Adobe Commerce n’acceptait pas l’adresse modifiée et lançait une exception.
Règles de prix du panier
- La génération de bons est maintenant bloquée jusqu’à ce que la règle de prix du panier associée soit enregistrée avec l’option
auto
activée. Si vous essayez d’enregistrer cette règle sans activer l’optionauto
, Adobe Commerce affiche le message suivant :Rule is not saved with auto generate option enabled. Please save the rule and try again
.
- Ajout d’un test permettant de confirmer l’application correcte d’une remise sur la règle du prix du panier.
- Les règles de prix du panier qui utilisent une condition SKU avec Si un article est TROUVÉ/INTROUVABLE dans le panier avec Toutes/l’une de ces conditions fonctionne maintenant comme prévu avec les produits configurables.
- Les règles de prix du panier sont désormais correctement appliquées pour les produits groupés à prix fixe. Auparavant, les règles de prix du panier ne s’appliquaient pas à ces produits lorsqu’au moins un produit enfant avait le même jeu d’attributs spécifié dans la condition de règle.
- Un produit dont le prix est de 0 peut désormais être ajouté au panier avec succès lorsque Adobe Commerce est configuré avec la règle de prix du panier Remise fixe pour le panier entier. Auparavant, Adobe Commerce affichait cette erreur :
report.ERROR: Warning: Division by zero in /home/mer33515/public_html/ee24develop/app/code/Magento/SalesRule/Helper/CartFixedDiscount.php on line 85
.
- Correction d’une condition en raison de laquelle la requête
cart
renvoyait un montant de remise inexact lorsque des règles de panier avec remises fixes étaient activées.
Catalogue
- Adobe Commerce ne lève plus d’exception lors de l’exécution d’une action de mise à jour d’attribut de masse sur la grille de produits lorsqu’un produit possède un
datetime
attribut.
- Les requêtes GraphQL renvoient désormais les résultats pour les produits enfants d’un produit configurable en fonction des paramètres de filtre de visibilité du ou des produits enfants.
- Adobe Commerce ne modifie plus les prix des produits associés lorsque les attributs configurables du produit sont modifiés. Auparavant, le prix minimum annoncé (MAP) pour un produit configurable écrasait le prix des produits connexes sur la devanture du magasin.
- Les administrateurs peuvent maintenant réaffecter le dernier produit restant dans une catégorie et enregistrer la catégorie vide.
- Les valeurs d’attribut de liste déroulante/multi-sélection pour la grille de produit et les filtres Admin sont maintenant dérivées, comme prévu, des paramètres d’administration. Auparavant, les valeurs d’attribut étaient dérivées des paramètres de magasin par défaut.
- Les requêtes de catégorie GraphQL renvoient des informations sur les modifications apportées aux catégories intermédiaires, comme prévu.
- Les listes de produits sont désormais rendues avec précision dans l’administrateur dans les déploiements avec des produits affectés à la fois à une catégorie parente et à ses sous-catégories, mais dans des positions différentes au sein de chaque catégorie. Auparavant, le rendu de la liste de produits échouait avec cette erreur :
Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists
. GitHub-33145
- Les attributs à sélection multiple avec de nombreuses options (plus de 150) peuvent désormais être attribués à de nouveaux produits. Auparavant, les options d’attribut étaient enregistrées dans la table
catalog_product_entity_varchar
et toutes les options n’étaient pas présentes lorsque vous avez ouvert à nouveau le produit dans l’administrateur. GitHub-33486
- Ajout de la validation du cas où un routeur ne peut pas instancier une classe d’action collectée à partir d’une URL. Adobe Commerce affiche désormais le message d’erreur standard. Auparavant, Adobe Commerce affichait cette erreur :
PHP Error: Cannot instantiate abstract class Magento\Catalog\Controller\Product\Compare
.
- Adobe Commerce calcule désormais correctement les remises lorsque deux règles de panier sont appliquées à une commande qui répondent aux conditions suivantes : une règle de panier est appliquée avec un code promo et une condition de prix fixe sur l’ensemble du panier et la deuxième règle de prix du panier n’a pas de coupon et une condition de remise pour cent du prix du produit. Auparavant, l’algorithme pertinent ne pouvait pas répartir correctement la remise proportionnellement entre les produits du panier lorsqu’une règle de panier précédente avait déjà appliqué une remise sur certains produits.
- L’affectation de nombreux produits (environ 10 000) à une catégorie n’entraîne plus le blocage du navigateur.
- Les attributs d’image sont désormais enregistrés de manière cohérente dans la base de données, qu’ils soient enregistrés depuis l’administrateur ou importés. Auparavant, les valeurs de texte ALT de l’image étaient enregistrées de manière incohérente. Si l’image existait et que le libellé était défini sur null, la valeur du libellé n’était pas réinitialisée dans la base de données.
- La requête SQL du widget du catalogue a été optimisée. Auparavant, les requêtes MySQL volumineuses ralentissaient le chargement des pages et entraînaient des pannes de MySQL.
- Les filtres de prix fonctionnent désormais correctement avec les produits configurables en rupture de stock. Auparavant, les produits configurables en rupture de stock ne s’affichaient pas dans la plage de prix correcte.
- La mise à jour d’un produit enfant ne supprime plus la remise de règle de catalogue héritée de son produit configurable parent pendant le processus d’indexation partielle. Auparavant, lorsque nous attribuions un produit configurable à une catégorie, mais pas à ses produits simples associés, puis utilisions cette catégorie pour créer une règle de catalogue, Adobe Commerce supprimait la règle de catalogue affectée au produit simple pendant le processus d’indexation partielle.
- La liste en grille des produits regroupés et configurables contient désormais uniquement des produits simples et virtuels lors de l’ajout d’options de produit. Auparavant, l’application incluait des produits simples avec des options.
Règle de catalogue
- Les mises à jour quotidiennes des règles de catalogue ne provoquent plus de dégradation des performances. Auparavant, l’indexation partielle des prix de produit du catalogue ne supprimait pas les anciens prix ou les dates.
- Adobe Commerce ne supprime plus les règles de prix du catalogue sur les produits configurables lors de la réindexation partielle. Auparavant, seuls les sous-produits étaient réindexés lorsque les produits configurables étaient réindexés.
- Les règles de prix du catalogue avec la condition category n’est pas category_id s’appliquent désormais aux produits qui n’appartiennent à aucune catégorie.
Produits configurables
- Le nom de l’étiquette de l’option de produit configurable est désormais basé sur la vue de magasin sélectionnée lors de la création de la commande d’administration. Auparavant, Adobe Commerce utilisait le nom du libellé dans la vue de magasin par défaut.
- Les listes de produits incluent désormais correctement les produits enfants d’un produit en rupture de stock lorsque l’indicateur global pour l’affichage des produits en rupture de stock est activé. Auparavant, la liste de produits n’incluait pas le produit enfant si l’une des options de produits enfants était en rupture de stock lorsque cet indicateur était activé.
- Vous pouvez désormais utiliser la mutation
addConfigurableProductsToCart
pour ajouter un produit configurable au panier sur une vue de magasin autre que celle par défaut. Auparavant, vous ne pouviez pas ajouter un produit configurable à un panier lorsque l’ID de site web et l’ID de magasin différaient. GitHub-30948
- Les requêtes GraphQL
products
ne renvoient plus de données sur les produits enfants désactivés des produits configurables.
- La création de nouvelles configurations pour un produit configurable ne remplace plus les modifications apportées aux configurations existantes. Auparavant, l’état des variations existantes était remplacé par l’état par défaut
enabled
après la génération de nouvelles variations.
- Adobe Commerce ne génère plus d’erreur interne lorsque vous essayez d’ajouter au panier un enfant désactivé d’un produit configurable.
Client
- Adobe Commerce prend désormais en compte la portée du site web pour les paramètres régionaux d’administration lors de la création de la commande. Auparavant, les détails de la commande tels que les attributs d’adresse du client fonctionnaient correctement sur un site web uniquement dans le cadre d’un déploiement multisite. GitHub-23254
Segment de client
- Le nombre de clients correspondants pour un nouveau segment de clientèle est désormais mis à jour automatiquement lorsque vous créez un compte d’entreprise. Auparavant, vous deviez actualiser les données de segment pour obtenir un décompte précis.
Messagerie électronique
- Les erreurs de validation du champ d’e-mail dans la fenêtre contextuelle de connexion au paiement correspondent désormais aux erreurs de validation par e-mail sur la page de connexion du client lorsqu’un client tente de se connecter à l’aide d’un compte de messagerie non valide.
- Adobe Commerce n’inclut plus de message d’erreur dans l’e-mail des détails de l’envoi lorsqu’un commentaire d’expédition est ajouté à partir de l’administrateur et que la case Notifier le client est activée. Auparavant, les e-mails de confirmation d’expédition comprenaient ce message :
We're sorry, an error has occurred while generating this content
.
- Les valeurs des ID de région et de pays sont maintenant correctement converties dans les modèles de courrier électronique. Auparavant, lorsque vous cliquiez sur le lien Aperçu du modèle d’e-mail Admin, le nom du pays et de la région ne s’affichait pas correctement.
- Les e-mails de mise à jour des ventes envoyés par l’administrateur pour les vues de magasin autres que celles par défaut contiennent désormais des étiquettes d’état de commande correctes. Auparavant, ces e-mails affichaient toujours l’état de la boutique par défaut. GitHub-29263
- Adobe Commerce inclut
Content-Disposition: inline
maintenant les en-têtes dans les e-mails, comme prévu. GitHub-29258
- Les e-mails de notification de commande et d’expédition fonctionnent désormais comme prévu dans les déploiements utilisant Microsoft Outlook et MS Exchange Server. Auparavant, le corps de l’email était vide mais contenait une pièce jointe étiquetée ATT*. GitHub-25076
- Les e-mails de commande contiennent désormais des données localisées à l’aide des paramètres régionaux de l’acheteur, comme prévu. Auparavant, les e-mails de commande utilisaient les paramètres régionaux Admin.
- Cliquez sur l’aperçu d’un modèle d’e-mail pour ouvrir l’aperçu du modèle dans une fenêtre distincte, comme prévu. Auparavant, Adobe Commerce ouvrait l’aperçu du modèle simultanément à partir de la grille Modèles d’e-mail et dans une fenêtre contextuelle.
- Les e-mails de commande asynchrone envoyés à partir d’un site Web autre que celui par défaut incluent désormais des URL de logo du site Web approprié. Auparavant, ces courriers électroniques incluaient toujours les logos du site Web par défaut ou principal. (Une clé par défaut avec une
storeCode
valeur a été affectée au deuxième argument de tableau qui est passé à laUrlInterface
getUrl
fonction. Cette valeur distingue les URL par rapport aux différents magasins/sites Web et génère un correctifbaseUrl
pour le contenu du courrier électronique envoyé au client.)
Cadres
- Les comparaisons non strictes entre les nombres et les chaînes non numériques fonctionnent maintenant en convertissant le nombre en chaîne et en comparant les chaînes. Les comparaisons entre les nombres et les chaînes numériques continuent de fonctionner comme auparavant. Cela signifie que est
0 == "not-a-number"
maintenant considéré comme faux. GitHub-33780
- L’assistant
Magento\Payment\Helper\Data
ne crée plus de nouvelles mises en page dans le constructeur. Auparavant, lorsque cet assistant était utilisé dans des commandes personnalisées sans spécifier d’indicatif régional, Adobe Commerce générait une erreur. GitHub-33908
- Mise à jour de la dépendance du compositeur
allure-framework/allure-php-api
.
- Adobe Commerce renvoie désormais un code de réponse 500 lorsqu’une exception se produit dans le fichier d’amorçage. Auparavant, Adobe Commerce renvoyait un code d’état 200 OK. GitHub-22196
- Le symbole de devise est désormais chargé comme prévu sur les pages de détails des produits storefront. Auparavant, ce symbole disparaissait parfois après le rechargement de la page JavaScript.
- La mise à jour de
symfony/console
n’entraîne plus d’échec lors de l’exécution debin/magento setup:di:compile
. GitHub-33595
- De nouvelles options requises ont été ajoutées aux fichiers
.htaccess
etnginx.conf
distribués avec la prise en charge d’Adobe Commerce pour PHP 8.x. Les options obsolètes ont également été supprimées. GitHub-34358
- Les vendeurs peuvent désormais télécharger une vidéo pour plusieurs produits. Le processus de génération de fichiers ajoute désormais une extension au nom de fichier uniquement si le nom de fichier téléchargé inclut une extension. Auparavant, lorsqu’un commerçant tentait de télécharger puis d’enregistrer la même vidéo pour deux produits différents, Adobe Commerce envoyait cette erreur :
Notice: Undefined index: extension in /app/7ha7zds7wvqys_stg/vendor/magento/framework/File/Uploader.php on line 699
. Cela s’est produit car Adobe Commerce a tenté d’ajouter une extension de fichier au nom, que le nom de fichier téléchargé ait ou non une extension.
- Correction des problèmes
sprintf(__())
etsprintf(Magento\Framework\Phrase())
de la construction pour la compatibilité avec PHP 8.x dans toute la base de code. Auparavant, Adobe Commerce générait ce type d’erreur :Expected parameter of type 'string', 'Magento\Framework\Phrase' provided
. GitHub-34085
- Amélioration de la validation des paramètres de requête de recherche avancée. GitHub-33589
- L’exécution de
bin/magento support:backup:code
crée désormais une sauvegarde comme prévu. Auparavant, Adobe Commerce créait une sauvegarde, mais envoyait une erreur.
- Les processus
cron
correctement exécutés se voient désormais attribuer l’étatsuccess
. Auparavant, le même processuscron
pouvait être exécuté deux fois, car un étatpending
était affecté aux processuscron
réussis.
- La tâche
staging_synchronize_entities_period
cron
fonctionne désormais comme prévu. Auparavant, la première mise à jour intermédiaire était appliquée avec succès, mais Adobe Commerce renvoyait cette erreur avec les mises à jour suivantes :report.ERROR: Cron Job staging_synchronize_entities_period has an error: The active update can't be deleted
.
- Le module
Magento_Logging
prend désormais en charge IPv6.
Correctifs généraux
- Adobe Commerce copie désormais tous les champs de produit en fonction de leur portée définie lors de la duplication d’un produit. Auparavant, les champs nom et description étaient réinitialisés à l’étendue
global
.
- Adobe Commerce n’applique plus l’arrondi delta à une remise lorsque le prix du produit est égal à 0. Auparavant, Adobe Commerce calculait un montant de remise négatif.
- Les produits avec un attribut Définir comme nouveau auquel sont affectées une date de début vide et une date de fin expirée peuvent désormais être enregistrés correctement. Auparavant, Adobe Commerce générait cette erreur lorsque vous enregistriez un produit avec ces paramètres :
Make sure the To Date is later than or the same as the From Date
.
- Adobe Commerce ne duplique plus une page CMS existante dans la hiérarchie CMS lorsque vous modifiez son identifiant d’URL SEO. Auparavant, Adobe Commerce créait un noeud dans la hiérarchie CMS, dupliquant un noeud existant.
- Les administrateurs peuvent maintenant essayer de relancer les opérations qui ont été exécutées pendant la durée de traitement maximale. La valeur maximale par défaut est de 12 heures.
- Les erreurs de tuyau cassé ne se produisent plus pendant le traitement d’actions en masse en raison de messages non reconnus pour le consommateur. Une propriété de comptage prérécupération limite désormais ces messages pour le consommateur et évite les erreurs. Auparavant, l’exécution en cours
bin/magento queue:consumers:start async.operations.all
générait cette erreur :Broken pipe or closed connection
.
- Les acheteurs sont maintenant redirigés vers la page de connexion, comme prévu, après une deuxième tentative de connexion infructueuse. Auparavant, les acheteurs étaient redirigés vers une page 404 après une deuxième tentative de connexion infructueuse. GitHub-32885
- La validité du jeton de réinitialisation de mot de passe a été étendue afin d’éviter l’occurrence d’une condition de concurrence lors de l’envoi de la page de changement de mot de passe. GitHub-29647
- Les autorisations affectées à de nouvelles intégrations sont désormais respectées. GitHub-33347
- Correction d’un problème de régression qui affectait les messages laissés dans les journaux d’exceptions du formulaire Contactez-nous. GitHub-34483
- Résolution de nombreux problèmes liés au chargement JavaScript des données client. GitHub-30498
- L’utilisation
QuoteIdToMaskedQuoteId
dans une extension n’augmente plus significativement le temps de réponse. GitHub-33676
- La classe
BundleDiscountPrice
dansmagento2/app/code/Magento/Bundle/Pricing/Price/ConfiguredPrice.php
est maintenant déclarée comme prévu. Auparavant, Adobe Commerce générait cette erreur :Class Magento\Bundle\Pricing\Price\BundleDiscountPrice not found
. GitHub-33334
- Les valeurs de champ CSV échappées écrites par l’adaptateur AWS S3 correspondent désormais aux données écrites par d’autres adaptateurs de système de fichiers.
- Le stockage compatible S3 est désormais pris en charge. GitHub-32114
- La déconnexion d’un appareil ne déconnecte plus automatiquement l’acheteur des autres appareils.
- Adobe Commerce enregistre désormais avec succès une page CMS lorsque vous la modifiez à partir de la grille en ligne au niveau de l’affichage du magasin lorsque le paramètre Utiliser la configuration de la hiérarchie de nœud parent est désactivé. Auparavant, Adobe Commerce affichait cette erreur et n’enregistrait pas vos modifications de page CMS :
A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later
.
- Les chemins de navigation s’affichent désormais correctement pour les nœuds qui contiennent la même page. Auparavant, Adobe Commerce affichait le même nom de nœud pour les pages qui appartenaient à plusieurs nœuds. Adobe Commerce n’a récupéré que le premier nœud d’une page, même lorsque plusieurs nœuds existaient pour chaque page.
- Les événements de modification en ligne de réécriture d’URL sont maintenant consignés dans les rapports.
- Le cookie
mage-messages
n’est pas réinitialisé s’il n’existe aucun nouveau message.
Cartes cadeau
- Ajout d’un message d’erreur plus informatif lorsqu’un acheteur saisit une carte-cadeau non valide.
GraphQL
- Les mutations
generateCustomerToken
etrevokeCustomerToken
fournissent désormais l’ID de cache correct pour l’état de l’utilisateur. Auparavant, ces mutations utilisaient unx-magento-cache-id
non valide, ce qui dégradait les performances.
- La mutation
setBillingAddressToCart
utilise désormais correctement le paramètresame_as_shipping
pour définir l’adresse de facturation de manière à correspondre à l’adresse de livraison, comme prévu. Auparavant, Adobe Commerce affichait cette erreur :The shipping method is missing. Select the shipping method and try again
. GitHub-30924
- Les opérations de panier GraphQL calculent désormais les totaux généraux de panier uniquement lorsque la requête le demande. Auparavant, les opérations de panier calculaient toujours le total général, qui est une opération gourmande en ressources.
- La mutation
addProductsToCart
ajoute désormais au panier uniquement les produits affectés au magasin défini dans l’en-tête .
products
les requêtes utilisant des filtres de navigation superposés renvoient désormais des listes de catégories enfants correctes. GitHub-33387
- Les requêtes et mutations renvoyant l’objet
ConfigurableCartItem
contiennent des informations sur les variantes configurées comme prévu.
- La requête
products
renvoie désormais les valeurs des options de produit de configuration et les valeurs d’attribut de variante. Auparavant, ces valeurs étaient vides dans les réponses de requête.
- La requête
products
filtre désormais correctement les produits groupés lorsque les produits enfants sont désactivés au niveau de l’affichage de magasin. Auparavant, la requête renvoyait les produits enfants qui étaient désactivés au niveau de l’affichage en magasin.
- GraphQL fournit maintenant à New Relic des noms de transaction descriptifs, ce qui peut être utile pour le débogage. GitHub-30915
- La
setShippingAddressesOnCart
mutation prend désormais en charge la définition d’adresses de livraison sur un panier avec une valeur de numéro de téléphone vide lorsque le paramètre de configuration Afficher l’administrateur du téléphone est défini sur facultatif. Auparavant, Adobe Commerce générait cette erreur :Field CartAddressInput.telephone of required type String! was not provided
.
- Correction d’un problème où la
addSimpleProductsToCart
mutation vous permettait d’ajouter des produits simples à un panier qui ne sont pas affectés au site Web cible.
- Les requêtes MySQL ont été optimisées pour les requêtes GraphQL
products
qui utilisent des paramètres de recherche pour affiner les résultats de recherche.
- La
addConfigurableProductToCart
mutation ne prend plus en charge l’ajout d’un produit à un panier si le produit n’est pas inclus dans la portée demandée.
- La requête
products
renvoie désormais uniquement les variantes configurables affectées à l’affichage de magasin demandé. Auparavant, toutes les variantes du produit configurable demandé étaient renvoyées.
- Les requêtes
addSimpleProductsToCart
peuvent désormais s’exécuter correctement en parallèle. Auparavant, plusieurs demandes pour le même SKU créaient des éléments de ligne en double pour le même ID de panier plutôt que d’augmenter la quantité de produits comme prévu.
- La mutation
addProductsToCompareList
peut désormais être utilisée pour comparer des variantes de produits configurables.
- Lorsque le prix d’un produit de niveau est mis à jour à partir du serveur principal, le nouveau prix est correctement mis à jour sur le panier du client. Auparavant, bien que le sous-total de la section de résumé du panier ait été correctement mis à jour, le sous-total de la ligne n’était pas mis à jour.
- La mutation
addProductsToCart
ajoute désormais toutes les options sélectionnées au panier lorsqu’elle est utilisée pour ajouter des produits en regroupement avec plusieurs options de sélection. Auparavant, la mutation ajoutait uniquement la dernière sélection. GitHub-33123
- Les requêtes GraphQL renvoient désormais l’adresse de facturation comme prévu lorsque la valeur d’un champ téléphonique facultatif est définie sur une chaîne vide. Auparavant, les requêtes renvoyaient une valeur d’adresse nulle. GitHub-30218
- La réponse de requête
products
répertorie désormais les produits selon l’ordre de tri spécifié lorsque plusieurs produits ont la même valeur de pertinence ou de prix.
- Les requêtes
addSimpleProductsToCart
etaddProductsToCart
simultanées ne génèrent plus d’éléments de guillemet dupliqués.
- Les filtres de navigation par couche de requête
products
renvoient désormais des listes de catégories enfants correctes. Seules les sous-catégories directes sont désormais incluses lorsque l’indicateurincludeDirectChildrenOnly
est fourni dans la requête. Auparavant, toutes les catégories étaient incluses en réponse dans la section d’agrégation lorsqu’un produit était affecté à plusieurs catégories.
- Ajout de la fonctionnalité de suggestion de recherche pour les requêtes de recherche GraphQL.
- Le champ
OrderAddress.telephone
est désormais facultatif dans la requêtecustomer
ou dans d’autres requêtes et mutations qui renvoient ou modifient les adresses de commande du client.
- Les prix sont désormais correctement mis à jour pour les clients d’un groupe spécifié dans le storefront et dans l’administrateur lorsqu’un ID de groupe est modifié via l’API. Auparavant, ces prix n’étaient pas correctement mis à jour lorsqu’un ID de groupe était modifié via l’API.
Image
- Les images en filigrane avec des arrière-plans transparents n’ont plus d’arrière-plan blanc sur l’image de produit transparente qu’elle recouvre. Auparavant, lorsque l’image de filigrane et l’image de produit avaient un arrière-plan transparent, le filigrane s’affichait avec un arrière-plan blanc.
- Les logos des factures et des accusés de réception d'expédition sont désormais chargés et affichés comme prévu lorsque AWS S3 est activé.
- La balise multimédia associée à une image ajoutée à une page CMS dans un déploiement où l’administrateur est défini sur un domaine différent de celui de l’URL de magasin contient désormais les URL de magasin comme prévu. Auparavant, les balises multimédia contenaient des URL d’administration statiques au lieu des URL de magasin attendues. GitHub-32930
- Adobe Commerce ne renvoie plus d’erreur lorsque vous videz le cache des images lors du chargement simultané des images sur le storefront.
Import/export
bin/magento remote-storage:sync
n’échoue plus lorsque les noms de fichier sont similaires, mais ne diffèrent que d’un ou deux caractères. Auparavant, la première image était stockée correctement, mais la seconde, également nommée, déclenchait un échec de synchronisation et cette erreur :Notice: Undefined index: media/catalog/product/5/_ in /src/vendor/magento/module-remote-storage/Driver/Adapter/Cache/Generic.php on line 197
. GitHub-34337
- Adobe Commerce convertit désormais l’horodatage du nom de fichier d’exportation dans le fuseau horaire de l’utilisateur après une exportation planifiée. Auparavant, ces valeurs n’étaient pas converties et Adobe Commerce affichait l’horodatage UTC.
- Adobe Commerce ne crée plus d’images en double dans le stockage distant lorsque le même fichier CSV est importé plusieurs fois.
- L'importation n'échoue plus avec ce message :
Import failed: Area code not set: Area code must be set before starting a session
. GitHub-16171
- Vous pouvez désormais importer après avoir exécuté
bin/magento app:config:dump
et modifié manuellementconfig.php
. GitHub-31428
- Les séparateurs de valeurs multiples autres que par défaut peuvent désormais être utilisés dans des attributs personnalisés à sélection multiple. Auparavant, la validation échouait lors de l’importation. GitHub-23156
- La position du produit dans les catégories est désormais correctement affectée lors de l’importation à partir du fichier CSV.
Index
- Adobe Commerce affiche désormais les produits comme prévu sur le storefront après réindexation. Auparavant, lorsque les 500 premiers produits réindexés étaient en stock et que les 500 autres produits étaient en rupture de stock, la vitrine n’affichait aucun produit supplémentaire.
- Résolution de problèmes de cohérence dans les fichiers
indexer.xml
fusionnés. Les valeurs autorisées dansclassType
sont désormais les mêmes dans les fichiersindexer.xml
fusionnés et non fusionnés. GitHub-29609
- Un mécanisme de synchronisation a été mis en oeuvre dans les indexeurs de catégorie pour empêcher les indexeurs complets et partiels de s’exécuter en parallèle. Auparavant, lorsque ces indexeurs s’exécutaient en parallèle, les produits pouvaient être temporairement omis des pages de catégories storefront ou les pages de catégories pouvaient être temporairement vides des produits.
Infrastructure
- La méthode
str_contains
non prise en charge a été remplacée par une fonction prise en charge. Il s’agissait d’un problème connu pour Adobe Commerce 2.4.3. GitHub-33680
-
Refactorisation du code base afin de corriger l’utilisation du mot-clé
match
, qui est un mot-clé réservé dans PHP 8.x. GitHub-33626 -
Les balises HTML sont maintenant imbriquées et fermées correctement pour répondre aux normes de JQuery 3.5.x pour les éléments non void, y compris les éléments personnalisés.
- Correction
abs()
etround()
fonctions pour la compatibilité avec PHP7.x et PHP8.x. GitHub-34322
- La mise à jour
symfony/console
ne provoque plus d’échec lors de l’exécutionbin/magento setup:di:compile
de . GitHub-33595
- Correction de la restriction liée à la dépendance du
colinmollenhour/cache-backend-redis
compositeur. GitHub-34177
- La base de code a été refactorisée afin de supprimer les appels aux méthodes obsolètes de
phpunit/phpunit
. GitHub-33916
- Adobe Commerce affiche désormais une erreur informative lorsqu’un administrateur disposant d’un
pubs/media
en lecture seule tente d’accéder à la page des détails du produit pour un produit contenant des images. Auparavant, Adobe Commerce générait une erreur PHP. GitHub-32819
- Toutes les annotations de niveau membre
@api
ont été déplacées dans leur classe dans l’ensemble du code base.
- Les données du widget
gift-card Cms
ont été déplacées deMagento/WidgetSampleData
(Magento Open Source) versMagento/GiftCardSampleData
(Adobe Commerce). Cela a résolu les problèmes d'installation (Magento Open Source) avec des exemples de données sur PHP8.1.
- Les interfaces marquées dans la base de code d’intégration Adobe Stock avec
@api
selon les besoins. GitHub-32875
- Les entiers et les nombres flottants dans les jeux de résultats sont désormais renvoyés à l’aide de types PHP natifs plutôt que de chaînes lors de l’utilisation d’instructions préparées émulées. GitHub-34625
- La création automatique de tableaux à partir de valeurs fausses a été désactivée pour garantir la compatibilité avec PHP 8.1.
- L’assistant
Magento\Payment\Helper\Data
ne crée plus de nouvelles mises en page dans les constructeurs. Auparavant, lorsque cet assistant était utilisé dans des commandes personnalisées sans spécifier d’indicatif régional, Adobe Commerce générait une erreur. GitHub-33908
- Vous pouvez maintenant passer un
data
argument à un constructeur d’instance de bloc en procédant comme suitdi.xml
:
- Optimisé
Generator.php
pour la lisibilité. GitHub-33809
- Amélioration de l’archivage JWK dans la classe
JwsManager
pour gérer les situations lorsque l’algorithme est directement défini dans l’en-tête . Auparavant, ce contrôle ignorait ce scénario valide. GitHub-32636
Mises à niveau pour la compatibilité avec PHP 8.1
-
Les fonctions obsolètes de PHP 8.1 ont été supprimées du code base. GitHub-34497
-
Ajout de déclarations de type retour aux méthodes internes avec des types de retour incomplets pour une compatibilité avec PHP 8.1. GitHub-34498
-
Mise à jour du métapackage
composer.json
et du fichiercomposer.json
racine pour chaque module vers PHP 8.1. GitHub-34009 -
Bibliothèque
jquery.tabs
tierce (dernière version) -
Packages NPM (dernière version) GitHub-33512, GitHub-33972
-
jquery.cookie
Bibliothèque tierce (dernière version) GitHub-34427
Mises à jour des dépendances du compositeur
-
Toutes les dépendances du compositeur ont été mises à jour vers les versions compatibles avec PHP 8.1.
-
PHPUnit a été mis à niveau vers la dernière version (9.5.x). Les structures de test et de test ont été mises à jour pour être compatibles avec la nouvelle version.
JavaScript mises à jour des dépendances
jquery-validate
Bibliothèque tierce GitHub-33853
Less.js
(v3.13.1) GitHub-32845
Retraits et obsolescences de la bibliothèque
-
Les bibliothèques suivantes ont été supprimées, car tous les navigateurs pris en charge par Adobe Commerce 2.4.x prennent en charge cette fonctionnalité de manière intégrée :
es6-collections.js
MutationObserver.js
Modernizr
FormData.js
-
Suppression de la bibliothèque de JavaScript inutilisée
jquery.hoverIntent
. GitHub-33732 -
lib/internal/Magento/Framework/Filter/Money.php
est obsolète. Il contient la fonctionmoney_format()
, qui a été supprimée en PHP 8.x. GitHub-33870 -
Suppression du package
grunt-autoprefixer
obsolète et non pris en charge. GitHub-34037
Mises à niveau de bibliothèque
-
Les bibliothèques suivantes ont été mises à niveau vers des versions plus récentes :
script.aculo.us
Chart.js
moment.js
moment-timezone-with-data.js
matchMedia.js
underscore.js
PrototypeJS
RequireJS
LessCSS
Facture
- Le casting vers
int
a été supprimé pour les ID de facture à incrémentation automatique lorsqu’il est précédé d’un préfixe avec une chaîne. Par conséquent, les factures affichent désormais un 0 pour les numéros précédés d’une chaîne. GitHub-34451
Journalisation
- Adobe Commerce ne crée plus d’entrées de journal pour les appels API échoués exécutant des actions en bloc dans Système > Actions en masse. Auparavant, des entrées permanentes pour les appels API ayant échoué étaient ajoutées au journal des actions en masse.
- La création automatique de tableaux à partir de valeurs fausses n’est plus autorisée. GitHub-34499, GitHub-34589
Adobe Commerce coding standard
- Mise à jour de
phpunit/ phpunit
vers la dernière version pour le référentielmagento-coding-standard
. GitHub-33622
- Mise à jour de la dépendance
webonyx/graphql-php
vers la version ^14.9 dans le référentiel Adobe Commerce coding standard. GitHub-32863
- Ajout d’un nouvel sniff
Magento2.PHP.ArrayAutovivification
à la norme de codage Adobe Commerce pour identifier la création automatique de tableaux à partir d’une valeur false. GitHub-34509
- Ajout d’un nouveau sniff
Magento2.Functions.DeprecatedFunction
à la norme de codage Adobe Commerce. GitHub-34547
- Ajout de fonctions obsolètes pour flairer
Magento2.Functions.DiscouragedFunction
dans la norme de codage Adobe Commerce. GitHub-34548
- Le sniff
Magento2.Annotation.MethodAnnotationStructure
n’échoue plus avec un faux positif. GitHub-34679
Galerie de médias
- La commande
bin/magento media-gallery:sync
n’échoue plus dans les déploiements où AWS S3 est activé.
- Les nouveaux titres de sous-menu de galerie de médias sous-ajoutés s’affichent désormais lorsque les éléments de menu dépassent 11 et que le paramètre de configuration Activer la galerie de médias anciens est activé. GitHub-33889
- Le temps de chargement de l’onglet Galerie de médias lors de la modification d’un produit avec de nombreuses images a été amélioré. GitHub-33434
MFTF
-
CURLOPT_POSTFIELDS
n’accepte plus les objets en tant que tableaux. Pour interpréter un objet en tant que tableau, effectuez un cast explicite (array
). Cette pratique s’applique également aux autres options qui acceptent les tableaux. GitHub-33781 -
curl_init()
renvoie désormais un objetCurlHandle
plutôt qu’une ressource. La fonctioncurl_close()
n’a plus d’effet. Au lieu de cela, l’instanceCurlHandle
est automatiquement détruite si elle n’est plus référencée. GitHub-33781
- Correction d’erreurs dans les tests MFTF pour les produits téléchargeables. GitHub-34270
- Supprimé
CliCacheFlushActionGroup
de ,GroupedProduct
,Newsletter
, ,Paypal
Quote
etReview
desCatalogSearch
modules. GitHub-33531
- Les comparaisons non strictes entre les nombres et les chaînes non numériques fonctionnent maintenant en convertissant le nombre en chaîne et en comparant les chaînes. Les comparaisons entre les nombres et les chaînes numériques continuent de fonctionner comme auparavant. Cela signifie que 0 == "not-a-number" est désormais considéré comme faux. GitHub-33780
parse_url()
fait désormais la distinction entre les requêtes et les fragments absents et vides. GitHub-33782
- Mise à jour du code base afin d’éviter une erreur fatale lors de l’utilisation de la méthode
ReflectionType::isBuiltin()
. GitHub-34194
Nouveaux groupes d’action
AdminCheckOrderStatusInGridActionGroup
GitHub-33747
StorefrontSelectFirstShippingMethodActionGroup
GitHub-33773
AdminClickUpdateChangesOnCreateOrderPageActionGroup
GitHub-33689
Groupes d’actions
Les actions répétitives ont été remplacées par des groupes d’actions dans ces tests :
AdminAddInStockProductToTheCartTest
GitHub-34512
AdminAddBundleItemsTest
GitHub-34312
AdminConfigurableProductAddConfigurationTest
GitHub-34511
AdminConfigurableProductBulkUpdateTest
GitHub-34435
AdminConfigurableProductDisableAnOptionTest
GitHub-34511
AdminConfigurableProductOutOfStockAndDeleteCombinationTest
GitHub-34316
AdminConfigurableProductOutOfStockTestDeleteChildrenTest
GitHub-34316
AdminConfigurableProductRemoveAnOptionTest
GitHub-34511
AdminConfigurableProductRemoveConfigurationTest
GitHub-34511
AdminCreateAndEditSimpleProductSettingsTest
GitHub-34435
AdminCreateAndEditVirtualProductSettingsTest
GitHub-34435
AdminCreateInactiveFlatCategoryTest
GitHub-34490
AdminCreateInactiveInMenuFlatCategoryTest
GitHub-34510
AdminCreateDuplicateCategoryTest
GitHub-34414
AdminCreateDuplicateProductTest
GitHub-34414
AdminDeleteSimpleProductTest
GitHub-33783
AdminEditRelatedBundleProductTest
GitHub-34313
AdminMassDeleteBundleProductsTest
GitHub-34313
AdminNavigateMultipleUpSellProductsTest
GitHub-34314
AdminSimpleProductSetEditContentTest
GitHub-34435
AdminSimpleProductTypeSwitchingToConfigurableProductTest
GitHub-33788
AdminConfigurableProductTypeSwitchingToVirtualProductTest
GitHub-33788
AdminCreateConfigurableProductWithDisabledChildrenProductsTest
GitHub-33775
AdminUpdateFlatCategoryAndAddProductsTest
GitHub-34490
AdminUpdateTopCategoryUrlWithNoRedirectTest
GitHub-33774
AdminUpdateTopCategoryUrlWithRedirectTest
GitHub-33774
CatalogProductListWidgetOperatorsTest
GitHub-34579
CreateProductAttributeEntityWithReservedKeysTest
GitHub-34422
EnableDisableBundleProductStatusTest
GitHub-34313
StorefrontCheckRefundGrandTotalActionGroup
GitHub-34315
StorefrontInactiveCatalogRuleTest
GitHub-33556
StorefrontConfigurableProductCantAddToCartTest
GitHub-33786
StorefrontConfigurableProductOptionsTest
GitHub-33785
StorefrontConfigurableProductCanAddToCartTest
GitHub-33784
StorefrontConfigurableProductGridViewTest
GitHub-34311
StorefrontConfigurableProductListViewTest
GitHub-34311
StorefrontProductNameWithHTMLEntitiesTest
GitHub-33806
StorefrontProductNameWithDoubleQuoteTest
GitHub-32991
Nouveaux tests
AdminCreateOrderWithCheckedAppendCommentCheckboxTest
GitHub-32381
CheckoutWithEnabledCaptchaTest
GitHub-32991
StorefrontAddProductWithBackordersAllowedOnProductLevelToCartTest
GitHub-33635
StorefrontGiftMessageForOrderOnCheckoutCartPageTest
GitHub-32821
StorefrontCaptchaCheckoutWithEnabledCaptchaTest
GitHub-32821
StorefrontCheckoutWithEnabledMinimumOrderAmountOptionTest
GitHub-33460
Tests restructurés
CaptchaWithDisabledGuestCheckoutTest
GitHub-30828
Newsletters
- Les utilisateurs disposant des autorisations appropriées peuvent désormais gérer les abonnements à la newsletter des clients comme prévu. Auparavant, seuls les administrateurs disposant d’autorisations complètes pouvaient gérer les abonnements à la newsletter des clients sur la page du compte client Admin.
Commande
- Les acheteurs peuvent désormais commander à nouveau une commande existante contenant un produit avec la combinaison d’options personnalisées de fichier de type et de liste déroulante de type de la vitrine et de l’administration. Auparavant, Adobe Commerce générait une erreur et ne traitait pas la nouvelle commande.
- Les factures pour les commandes qui sont payées par crédit en magasin et qui ont des taxes fixes sur les produits (FPT) appliquées incluent maintenant le total général correct.
- La page de détails de la commande d’administration se charge comme prévu. Auparavant, Adobe Commerce a généré l’erreur suivante lors du chargement de la page de détail de la commande pour les commandes avec certaines taxes :
Call to a member function getId() on array
.
- Les administrateurs disposant d’autorisations restreintes qui incluent des privilèges de commande et d’expédition peuvent désormais afficher la page de commande comme prévu. Auparavant, Adobe Commerce générait une erreur lorsqu’un administrateur disposant de ces autorisations tentait d’afficher une commande. GitHub-14633
- Les acheteurs peuvent désormais passer une commande qui inclut un produit configurable enfant lorsqu’une limite de quantité maximale autorisée est définie.
Modes de paiement
- Les acheteurs peuvent désormais utiliser Braintree pour passer une commande à l’aide d’une adresse de facturation sans région définie dans les déploiements avec 3DS activé. Auparavant, le passage en caisse se bloquait lorsque l’acheteur cliquait sur Passer commande et que l’achat ne pouvait pas être terminé. GitHub-34204
- L’option de paiement Venmo est désormais prise en charge.
- PayPal peut désormais effectuer le suivi par code BN.
bin/magento setup:upgrade
s’exécute désormais comme prévu lors de la mise à niveau à partir de Adobe Commerce 2.4.2-p1. Auparavant, Adobe Commerce générait cette erreur :Unable to apply data patch Magento\Paypal\Setup\Patch\Data\UpdateBmltoPayLater for module Magento_Paypal
. GitHub-33678
- L’ID de magasin correct est maintenant utilisé pour récupérer les cartes de crédit enregistrées lors de la commande d’administration. Les cartes de crédit stockées s’affichent désormais lors du placement de la commande, en fonction du paramètre de configuration de la portée du site web. Auparavant, lorsqu’un administrateur tentait de créer une commande pour un client à partir de l’administrateur et sélectionnait la méthode Stored Credit Cards (Cartes de crédit stockées), aucune option n’était disponible pour les cartes stockées.
- Les anomalies avec l’affichage du montant des cartes-cadeaux avec le crédit PayPal ont été résolues. Auparavant, lorsque le crédit PayPal était activé et que plusieurs montants de carte-cadeau étaient configurés, si un acheteur modifiait le montant de la valeur d’une carte-cadeau, le storefront ne mettait pas à jour le montant des paiements échelonnés. Ce problème était connu dans Adobe Commerce 2.4.3.
PayPal
- Adobe Commerce n’affiche plus d’erreur lors du passage en caisse avec le mode de paiement PayPal Express. Auparavant, même si le processus de passage en caisse était terminé, Adobe Commerce affichait cette erreur :
Something went wrong
.
- PayPal Express fonctionne désormais comme prévu à partir du panier. Auparavant, lorsque vous cliquiez sur le bouton PayPal pour démarrer le paiement rapide à partir du panier, Adobe Commerce a généré cette erreur :
To check out, please sign in with your email address
. GitHub-33445
- PayPal Payflow Pro effectue désormais une capture différée avec les ID de transaction parents corrects dans les déploiements où la passerelle PayPal Payflow Pro avec Action de paiement est définie sur Autorisation. Une transaction Sale est envoyée à Payflow avec un ID de transaction parent du jeton Vault créé lors du passage en caisse comme prévu. Auparavant, une transaction Capture différée était créée et envoyée à la payflow PayPal. GitHub-33445
- Les acheteurs sont désormais redirigés vers la page de succès comme prévu une fois le paiement effectué avec les paiements avancés de PayPal terminé. Auparavant, les acheteurs n’étaient pas redirigés vers cette page, même si le paiement était traité avec succès et qu’aucune erreur n’était consignée.
Performances
- Ajout d’un index pour
magento_giftcardaccount.code
améliorer les performances.
- Le temps d’exécution du chargement des listes de modules s’est amélioré.
- Les performances du cache de termes Search populaires se sont améliorées. Auparavant, plus la table
search_query
était grande, plus une requête de recherche prenait du temps. GitHub-27559
- Par défaut, Adobe Commerce redimensionne les images de manière synchrone lors de l’enregistrement du produit. Les vendeurs peuvent désormais redimensionner les images en tant que processus asynchrone en arrière-plan par des modifications mineures apportées à un fichier
di.xml
.
- Les performances de l’indexeur de produits de catégorie ont été améliorées dans les déploiements multi-magasins. GitHub-33984
- Le nouveau cache en mémoire pour les appels système
glob()
améliore les performances en réduisant le nombre d’appelsglob()
. GitHub-34025
- Les performances du processus de réindexation de la grille d’ordre asynchrone ont été améliorées.
- La consommation de mémoire lors de l’exportation du produit a été optimisée.
- Le chargement des pages de détails du produit avec les produits associés a été optimisé. Les requêtes de conditions de produit associées ont également été optimisées.
Tarifs
- Le tri des prix fonctionne désormais comme prévu lorsque les prix des produits sont proches ou égaux à zéro et que les catalogues partagés sont activés. Auparavant, les prix de niveau zéro étaient ignorés lors de la réindexation des prix.
- Adobe Commerce ne renvoie plus d’erreur si le filtre de prix sur la page Catégorie ne contient pas de seconde valeur. Auparavant, Adobe Commerce envoyait une exception dans le fichier journal.
ProductAlert
- Le nouveau consommateur
product_alert
améliore l’envoi d’alertes client en créant des messages de file d’attente, en exécutant le consommateur et en améliorant le temps d’exécution. Auparavant, Adobe Commerce envoyait une exception de mémoire insuffisante lors de l’envoi de plus de 100 000 alertes de produit. Adobe Commerce a également mis plus de 20 heures à envoyer toutes les alertes.
Vidéo du produit
- Adobe Commerce active désormais le bouton Enregistrer et les champs de saisie semi-automatique lorsque vous saisissez une URL incomplète lors de l’ajout d’une vidéo (Catalogue d’administration> Produits > Ajouter une vidéo). Auparavant, le bouton Enregistrer était désactivé et les champs n’étaient pas renseignés.
Autorisations de retour de marchandise (RMA)
- La grille Admin Créer un produit de retour affiche désormais les taxes, y compris les prix uniquement pour les produits configurés pour afficher la taxe avec les prix. Auparavant, Adobe Commerce ne vérifiait pas les paramètres d’affichage de la configuration sur l’indicateur
tax/calculation/price_includes_tax
.
Révisions
- La vue Liste des produits affiche désormais la bonne évaluation en étoile des produits. GitHub-30196
- Les révisions sont désormais visibles comme prévu lorsqu’un acheteur clique sur Révision sur la page du produit storefront.
- L’évaluation des produits par étoiles est désormais cohérente dans les vues Grille et Liste de la page de liste des produits storefront. Auparavant, les évaluations du même produit pouvaient différer en mode d’affichage Grille et Liste.
Références
- L’historique des points de récompense et de l’équilibre des points de récompense affiche désormais le même solde. Les points expirés sont désormais correctement déduits. Auparavant, le solde des points récompenses ne reflétait pas précisément les points expirés.
- Les points de récompense expirés sont désormais marqués comme expirés dans la section Raison de la grille Historique des points de récompense du storefront.
Ventes
- Les performances des mises à jour de la grille de vente en mode asynchrone pour les tables avec des jeux de données volumineux après la mise à niveau vers MariaDB 10.2.34 ont été améliorées.
- Adobe Commerce supprime désormais, comme prévu, les balises HTML du compte de vitrine > page Mes commandes > Afficher la commande . Auparavant, Adobe Commerce affichait des balises HTML dans la section des commentaires sur les commandes des clients de la vitrine.
- Ajout d’une couverture de test automatisé pour vérifier l’existence d’un index pour
sales_shipment_grid.order_id
a été ajoutée.
POST V1/orders
Les appels mettent désormais à jour les attributs d’extension sans erreur. Auparavant, une erreur de syntaxe SQL survenait.
Rechercher search-heading
- Les options de navigation par couches pour la plage de prix fonctionnent désormais comme prévu avec des attributs de prix personnalisés. Adobe Commerce utilise la configuration de l’étape de navigation par prix lors du filtrage des attributs de prix personnalisés. Auparavant, Adobe Commerce utilisait la configuration manuelle de l’étape.
- Le storefront affiche désormais toutes les sous-catégories de la catégorie actuelle dans la navigation par couches, quel que soit le nombre de catégories disponibles dans le catalogue.
- Les recherches de catalogue Elasticsearch ne sont désormais plus sensibles à la diacritique. Auparavant, les recherches de termes sans accent donnaient des résultats différents de ceux des recherches effectuées sur le même terme avec un accent.
- Search poids est désormais correctement défini sur les attributs SKU contenant des caractères spéciaux.
category_name
a été ajouté aux codes d’attribut de produit réservés au système. Adobe Commerce affiche désormais une erreur si un utilisateur tente de créer un attribut de produit avec le codecategory_name
d’attribut. Auparavant, les produits n’étaient pas répertoriés dans la catégorie attendue et une erreur Elasticsearch était consignée.
- Les termes de recherche populaires sont désormais mis à jour après chaque requête de recherche GraphQL.
- Adobe Commerce ajoute désormais des champs de prix corrects au mappage de l’indice des prix Elasticsearch. Auparavant, les champs de prix incorrects étaient ajoutés à l’index avec l’ID de magasin au lieu de l’ID de site Web.
Livraison
- L’e-mail d’expédition inclut désormais le numéro de suivi pour l’envoi en cours uniquement. Auparavant, lorsqu’une commande comprenait plusieurs envois, l’e-mail de chaque envoi incluait les numéros de suivi de tous les envois liés à la commande.
- Adobe Commerce met désormais à jour le mini-panier avec succès lorsqu’un acheteur supprime un produit de son panier en mode multi-expédition, puis passe à une adresse de livraison unique. Auparavant, les prix des produits n’étaient pas mis à jour comme prévu.
- L’importation des taux de table fonctionne désormais comme prévu lors de l’utilisation de l’adaptateur de stockage S3. Auparavant, Adobe Commerce affichait cette erreur :
File "https://[bucket].s3.eu-central-1.amazonaws.com/[prefix]/tmp/phpLjGmHf" not found
. GitHub-33072
- Vous pouvez désormais désactiver les emails de mise à jour des envois comme prévu à partir de Magasins > Configuration > Ventes > Courriers électroniques de vente. GitHub-33165
- Adobe Commerce affiche désormais les frais de livraison (0) gratuits sur les totaux des pages des factures d’administration et de storefront. Auparavant, lorsque l’expédition était égale à zéro pour une commande, Adobe Commerce n’affichait pas le montant de l’expédition dans les totaux sur le total de l’expédition de la page de facture.
- Les demandes de taux aux compagnies de navigation en ligne ont été réduites de plusieurs demandes à une. L’assurance package et le prix de gestion par article/package sont désormais correctement calculés. Auparavant, Adobe Commerce affichait des taux d’expédition incorrects pour les méthodes de livraison FedEx.
- Adobe Commerce affiche désormais les taux UPS lors de la création de libellés d’expédition pour l’expédition depuis Porto Rico. Auparavant, Adobe Commerce n’affichait pas ces taux UPS.
- L’adresse de la rue d’expédition est désormais effacée complètement comme prévu après suppression de la zone de saisie. Auparavant, la zone de texte conservait un ou plusieurs caractères après la suppression de l’adresse.
Évaluation
- Les images et vidéos de mise à jour programmées pour le produit sont désormais correctement enregistrées. Auparavant, les vidéos, URL, titres et descriptions étaient supprimés après la création d’une mise à jour planifiée.
- Adobe Commerce affiche désormais l’attribut Prix minimal annoncé dans le formulaire Planifier une nouvelle mise à jour pour les vues de magasin pour lesquelles l’attribut est activé.
- Adobe Commerce affiche désormais un seul onglet Images dans le formulaire Mise à jour planifiée du produit comme prévu. Auparavant, Adobe Commerce dupliquait cet onglet.
- L’état du stock de produits s’affiche désormais correctement dans les aperçus de mise à jour du calendrier. Auparavant, l’état du produit était affiché comme étant en rupture de stock lorsqu’un produit précédemment désactivé était activé lors de la création de la mise à jour planifiée.
Boutique
- La fonctionnalité Connexion en tant que client fonctionne désormais comme prévu dans les déploiements qui contiennent plusieurs magasins sur différentes URL. Auparavant, Adobe Commerce ne chargeait pas le bon magasin, même lors de l’accès au domaine de magasin approprié.
Outil d’analyse à l’échelle du site
- Les vendeurs peuvent désormais accéder à l’outil d’analyse à l’échelle du site comme prévu. Auparavant, des paires de clés cassées empêchaient certains commerçants d’accéder à l’outil.
Taxe
- Adobe Commerce calcule désormais correctement le sous-total du mini panier lorsqu’un client supprime un article après avoir sélectionné l’expédition vers plusieurs adresses.
- Adobe Commerce affiche désormais le même taux d’imposition sur toutes les pages de passage en caisse lorsque le panier contient uniquement des produits virtuels.
- Les prix de niveau pour les produits configurables affichent désormais des valeurs fiscales incluses et exclues précises sur le storefront. Auparavant, les mêmes valeurs étaient affichées pour les taxes incluses et exclues. GitHub-33673
Test
- Les tests WebAPI sont désormais compatibles avec PHP 8.1. GitHub-34653
- Les tests d’intégration sont désormais compatibles avec PHP 8.1. GitHub-34567, GitHub-34569
- Les marchands peuvent désormais tester l’expérience d’achat du pays dans lequel se trouve l’acheteur, plutôt que l’emplacement du marchand.
- La consommation de mémoire de test d’intégration a été réduite, ce qui améliore les performances des tests et réduit le temps nécessaire à la réalisation du test.
- Ajout d’un test afin de vérifier le format d’attribut de date personnalisé pour la vitrine et l’administration.
- Correction des erreurs avec
StorefrontPOWorkflowVerifyApprovalFlowTabTest
. GitHub-34378
- Les tests fonctionnels ont été stabilisés pour la compatibilité PHP 8.x. GitHub-34327, GitHub-34188
- Correction de problèmes fonctionnels dans les tests WebAPI. GitHub-34196
- Correction d’erreurs générant des tests statiques faussement positifs. GitHub-34056
- La couverture du test a été mise à jour pour
call_user_func_array
. GitHub-34301
- Le
Magento\GraphQl\CatalogGraphQl\ProductSearchTest
test ne renvoie plus cette erreur lorsqu’il est exécuté avec AWS Elasticsearch :Magento\GraphQl\CatalogGraphQl\ProductSearchTest::testSearchSuggestions Failed asserting that an array is not empty. /var/www/html/dev/tests/api-functional/testsuite/Magento/GraphQl/CatalogGraphQl/ProductSearchTest.php:94 /var/www/html/dev/tests/api-functional/framework/Magento/TestFramework/TestCase/GraphQlAbstract.php:257
.
-
Correction de nombreux avertissements de test unitaire non critiques en renommant toutes les variables fictives pour inclure le suffixe et en supprimant les
Mock
références à une classe Gestionnaire d’objets obsolète. GitHub-33695 -
Le
Magento\Framework\MessageQueue\TopologyTest
test est désormais compatible avec AWS MQ pour RabbitMQ le service. Auparavant, ce test échouait avec ce message :Invalid exchange configuration: magento-topic-based-exchange1 Failed asserting that two arrays are equal
.
- Les tests unitaires sont désormais compatibles avec PHP 8.1. GitHub-34441
Test unitaire
Les tests unitaires suivants ont été restructurés pour utiliser PHPUnit
au lieu de AspectMock
:
AllureHelperTest
GitHub-33294
ObjectHandlerUtil
GitHub-33584
MockModuleResolverBuilder
GitHub-33583
MagentoTestCase
GitHub-33582
ModuleResolverTest
GitHub-33308
ParallelGroupSorterTest
GitHub-33306
SuiteGeneratorTest
GitHub-33299
OperationDataArrayResolverTest
GitHub-33296
Thème
- Les messages de notification s’affichent désormais correctement lorsqu’Adobe Commerce dispose d’un sous-chemin configuré dans son URL de base.
- Ajout d’un élément
aria-label
au modèle de page de storefront afin d’indiquer la page à laquelle le nouvel acheteur accède lorsqu’il clique sur un lien. Auparavant, le même texte de lien était utilisé pour les liens vers différentes pages. GitHub-33075
- Adobe Commerce n’affiche plus de message d’erreur lors du chargement de la page d’accueil d’un magasin avec un thème personnalisé préexistant. Auparavant, Adobe Commerce affichait ce message :
The store will not work correctly in the case when cookies are disabled
.
Traductions et paramètres régionaux
- Le programme de validation
UserExpiration
n’échoue plus avec les paramètres régionauxde_DE
etuk_UA
. Auparavant, Adobe Commerce générait une erreur lorsqu’un administrateur tentait de définir une date d’expiration lors de la création d’un nouvel utilisateur à partir de l’administrateur dont les paramètres régionaux étaient définis surde_DE
ouuk_UA
. GitHub-32497
- Les noms des régions suisses sont désormais systématiquement présentés en anglais dans les formulaires de création ou de modification d'adresses. GitHub-32602
- Mise à jour de
zip_codes.xml
modèles pour Guernesey afin de prendre en charge les codes postaux GY10 pour l’île de Sark. GitHub-33144
- Ajout de régions de Biélorussie à la table
directory_country_region
. GitHub-33924
- Les anomalies d'affichage avec des storefronts exécutant les paramètres régionaux philippins (Philippines) ont été résolues. GitHub-33996
- Vous pouvez désormais saisir la date de naissance d’un client lors de la création d’un nouveau compte dans les magasins dont le paramètre régional est Portugais (Portugal). Auparavant, Adobe Commerce générait une erreur lorsque vous tentiez de créer un compte. GitHub-34130
- La page des détails du produit s’affiche désormais avec le paramètre régional Arabe (Arabie saoudite). Auparavant, ce paramètre régional endommageait la page des détails du produit.
Interface utilisateur
- Correction des erreurs avec les tests MFTF qui utilisent
maps.googleapis.com
.
- Adobe Commerce supprime désormais les espaces insécables du champ de saisie de l’email du formulaire de contact . Auparavant, le formulaire était envoyé sans supprimer les espaces insécables de l’entrée d’email (le cas échéant), ce qui provoquait des erreurs dans les fichiers journaux. Le champ Réponse manquait également dans l’e-mail de contact généré à l’administrateur du magasin.
- Adobe Commerce affiche désormais les produits associés, les produits de vente incitative et les produits de vente croisée en fonction de leurs postes dans l’administrateur.
- Les boutons
.action-close
fonctionnent désormais comme prévu lorsqueMultiselect
est utilisé dans un modal. Auparavant, le boutonaction-close
ne fonctionnait pas car il héritait du CSS du bouton.action-close
du modal. GitHub-27240
- Le fragment de code riche Offres est désormais présent dans le champ de prix principal dans la vue Produit. Auparavant, ce fragment de code était absent de ce champ dans le bloc de produits associé dans la vue Produit, ce qui entraînait l’affichage de prix incorrects dans les résultats de recherche Google. GitHub-34063
- Les problèmes de hauteur modale sur les appareils exécutant iOS ont été résolus. GitHub-34467
- Les menus déroulants des actions sont désormais correctement positionnés dans le storefront. GitHub-31379
- Les erreurs d’accessibilité liées à la navigation sur les pages du panier et du paiement ont été résolues. GitHub-34483
- Les lecteurs d’écran peuvent désormais lire tous les éléments de formulaire pertinents sur les pages de produits.
- L’ordre de tri du widget de produit de catalogue de vitrine (catalogue > catégorie > produits) correspond désormais à l’ordre configuré dans l’administration. GitHub-27126
- Le sélecteur de région fonctionne maintenant comme prévu sur la page Créer un compte. GitHub-30099
- La grille Admin client affiche désormais toutes les données client, y compris les attributs personnalisés
date
nouvellement ajoutés, comme prévu. Auparavant, Adobe Commerce générait une erreur et n’affichait pas correctement la grille client Admin lorsque l’ensemble d’attributsdate
était défini comme colonne.
- Les libellés d’entrée sur la page de détails Catalog > Product ont été modifiés pour refléter précisément l’objectif de l’entrée. Les champs pour lesquels la saisie de l’utilisateur n’est plus requise n’affichent plus les libellés avec un astérisque.
- La barre d’outils de l’éditeur de texte enrichi est désormais accessible à l’aide de la touche de tabulation.
- Le nom accessible du contrôle inclut désormais le texte de son libellé visible pour le nombre d’éléments par liste déroulante de page.
- Les commandes de tableau sur la page de détails Catalogue > Produit ont désormais des libellés visibles et un nom accessible lorsque la table est réduite.
- Les boutons du storefront ont désormais des noms accessibles uniques et descriptifs. Auparavant, les boutons fractionnés avec un bouton de texte et un bouton d’icône fléchée adjacent portaient le même nom accessible.
- Ajout d’une option de vue Aujourd’hui aux tableaux de bord Admin Commandes et montants afin de fournir un résumé des ventes et des commandes tout au long de la journée. GitHub-34008
- L’état actif (clic) du bouton à sélection multiple Fermer fonctionne désormais de manière cohérente. GitHub-34338
- Adobe Commerce n’affiche plus ce message après la mise à niveau lorsque le mode de restriction des cookies est désactivé :
The store will not work correctly in the case when cookies are disabled
. GitHub-33811
- Les images de produits en plein écran s’affichent désormais correctement sur les thèmes avec une direction de navigation verticale sur les appareils mobiles. Auparavant, les images de produits étaient incorrectement mises à l’échelle ou invisibles sur les thèmes avec une direction de navigation verticale sur les appareils mobiles en mode plein écran.
- Les messages d’erreur dans la page des détails du produit ne disparaissent plus rapidement lorsque le paramètre Synchroniser les produits widgets avec la configuration du stockage principal est activé.
- La validation des valeurs négatives a été ajoutée au champ Quantité à retourner sur le formulaire Créer un nouveau retour .
- Adobe Commerce n’affiche plus les adresses en double lorsqu’un acheteur clique sur Modifier l’adresse sur la page Révision et paiements dans un déploiement dans lequel le paramètre de configuration Recherche d’adresses est activé.
- Le bouton Ajouter des produits est désormais activé comme prévu pour les administrateurs disposant d’autorisations restreintes lorsqu’ils travaillent dans la portée d’affichage en magasin sur la page Catégorie d’administration.
- Les points d’arrêt des vues sont désormais cohérents dans Adobe Commerce.
- Adobe Commerce affiche désormais correctement les attributs de date client personnalisés avec des paramètres régionaux personnalisés sur la page client Admin.
- Les images ajoutées à l’aide du Créateur de pages ne sont plus dupliquées sur le storefront lorsqu’elles sont affichées avec une largeur de fenêtre de navigateur de 768 px. Auparavant, avec cette largeur de fenêtre de navigateur, Adobe Commerce dupliquait les images sur la vitrine en affichant à la fois la version mobile et la version de bureau des images.
Réécritures d’URL
- Les réécritures d’URL ne sont plus régénérées pour toutes les vues de magasin lors de la création d’une nouvelle vue de magasin lors de l’exécution
bin/magento setup:upgrade
de . GitHub-32954
Marchandiseur visuel
- L’option de tri automatique Déplacer le stock vers le bas fonctionne désormais comme prévu pour les produits configurables lorsque tous les produits simples sont en rupture de stock.
- La règle Visual Merchandiser n’est plus enregistrée si aucune condition n’a été ajoutée.
Structure de l’API web
- Les demandes d’API Web pour les ressources client auto-autorisées ne génèrent plus d’erreurs d’autorisation lorsque le panier d’achat persistant est activé.
- Vous pouvez maintenant créer des objets en utilisant les classes enfants de
\Magento\Framework\Api\AbstractSimpleObjectBuilder
PHP 7.3. Auparavant,preg_match
jetait ce message d’avertissement lorsque Adobe Commerce était hébergé sur Redhat avec PHP 7.3 :Warning: preg_match(): Compilation failed: unrecognized character follows...
.
- Les totaux récupérés par la
PUT /V1/guest-carts/:cartId/collect-totals
requête sont maintenant mis à jour par le correctshippingMethod
. GitHub-18508
- L’ajout d’un nouveau désérialiseur à l’API REST ne supprime plus les autres désérialiseurs. Auparavant, l’API REST acceptait un nouveau type de contenu, mais les types de contenu définis CORE pour les API ne fonctionnaient plus et renvoyaient une erreur 400. GitHub-26433
- Vous pouvez désormais supprimer un remplacement pour un paramètre défini dans un fichier
webapi.xml
. GitHub-33843
- Adobe Commerce génère désormais des demandes d’API
customertoken
par GraphQL ou REST, comme prévu, après plusieurs tentatives de connexion infructueuses consécutives. Auparavant, Adobe Commerce ne vérifiait pas si la valeur delock_expires_at
dansoauth_token_request_log
était supérieure à la date et à l’heure actuelles, et renvoyait toujours le nombre de tentatives infructueuses, ce qui empêchait le client de se connecter. GitHub-34067
- L’ajout d’un identifiant de guillemet masqué dans
QuoteRepository::getList
ne provoque plus une boucle infinie. Auparavant, l’utilisation du processeur de paiement qui s’appuyait sur l’API REST pour mettre à jour les commandes déclenchait ce comportement. GitHub-33675
- L’appel
/rest/all/V1/categories/<above_created_category_id>
PUT respecte désormais les valeurs spécifiées paravailable_sort_by
. Auparavant, la liste déroulante Trier par des produits disponibles était sélectionnée avec toutes les options possibles sur la page Catégorie, et la case Utiliser tout était cochée. GitHub-32596
- Les performances des requêtes d’API REST pour créer des jetons client ont été améliorées.
- Correction d’une erreur qui se produisait lorsque l’option Ajouter un Code Store aux URL était définie sur Oui et qu’un appel REST n’incluait pas de code de magasin. Bien que la payload soit valide, l’appel a renvoyé l’erreur suivante :
Fatal error: Allowed memory size of **​**​**​**​**​ bytes exhausted (tried to allocate ​**​** bytes) in vendor/magento/module-store/Model/StoreRepository.php on line 75
.
- Les factures partielles pour une même commande peuvent désormais être créées simultanément à l’aide de l’API REST.
Liste de souhaits
- Adobe Commerce n’affiche plus une liste de souhaits dans la barre latérale de catégorie lorsque l’option Afficher dans la liste de souhaits de la barre latérale est désactivée. Auparavant, Adobe Commerce ignorait cette option.
WYSIWYG
- PageBuilder effectue désormais le rendu correct des widgets personnalisés avec l’éditeur WYSIWYG.
Problèmes connus
Problème : les marchands peuvent remarquer des avis de rétrogradation de version de package lors de la mise à niveau de Adobe Commerce 2.4.4 vers Adobe Commerce 2.4.4-p1. Ces messages peuvent être ignorés. L’écart dans les versions de package résulte d’anomalies lors de la génération de package. Aucune fonctionnalité du produit n’a été affectée. Consultez l’article de la base de connaissances Packages déclassés après la mise à niveau de 2.4.4 vers 2.4.4-p1 pour une discussion des scénarios et solutions de contournement affectés.
Problème : les marchands ne peuvent pas soumettre de remboursement partiel pour les commandes payées avec Apple Pay via Braintree. Lorsqu’un marchand tente de créer une note de crédit pour un remboursement partiel de la facture de commande, le champ Qté au remboursement n’est pas modifiable. Solution : appliquez un correctif braintree-disabled-partial-capture-for-applepay-googlepay.patch
. Voir l’article de la base de connaissances Adobe Commerce 2.4.4 : impossible de créer des factures partielles .
Problème : les acheteurs ne peuvent pas ajouter un produit à leur panier lorsqu’aucune option n’est sélectionnée dans la configuration du > de la boutique d’administration > les options générales > pays > autoriser les pays. Adobe Commerce affiche à la place l’erreur de console suivante : Failed to load resource: the server responded with a status of 400 (Bad Request)
.
Problème : La description de Dotdigital sur Trouver des partenaires et des extensions > Magento Marketplace est obsolète. Voici une description mise à jour :
Dotdigital est une plate-forme d’engagement client qui aide les spécialistes du marketing numérique et les développeurs à communiquer tout au long du parcours client. Nous exploitons la puissance des données clients, stimulant l’engagement, la conversion et la fidélité pour les marques à mesure qu’elles grandissent et évoluent. Les clients adorent notre plate-forme facile à utiliser qui connecte les données de première partie entre les systèmes, fait apparaître des informations puissantes et automatise les messages prédictifs cross-canal.
Les 350+ employés de Dotdigital servent des entreprises du marché intermédiaire et des grandes entreprises du monde entier et de tous les secteurs. Nous aspirons à inspirer un marketing responsable et nous nous engageons en faveur de la durabilité, de la confidentialité et de la sécurité. Dotdigital est fière d’être la première plateforme d’automatisation du marketing neutre en carbone au monde, certifiée ISO 14001, ISO 27701 et ISO 27001.
Pour plus d’informations sur les achats et les téléchargements, voir Dotdigital — Automatisation du marketing.
Contributions communautaires
Nous sommes reconnaissants à l’ensemble de la communauté des Magento Open Sources et tenons à saluer leurs contributions à cette version.
L’équipe d’ingénierie de communauté contributeurs Magento conserve une liste des principaux contributeurs et partenaires par mois, trimestre et année. À partir de cette page Contributeurs, vous pouvez suivre des liens vers leurs PR fusionnés sur GitHub.
Contributions des partenaires
Le tableau suivant met en évidence les contributions des partenaires. Ce tableau répertorie le partenaire qui a fourni 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 individuelles des contributeurs
Le tableau suivant répertorie les contributions des membres de notre communauté. Ce tableau répertorie le membre de la communauté qui a fourni 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).
Configuration système requise
Notre pile technologique est construite sur PHP et MySQL. Pour plus d’informations, consultez Configuration requise.
Instructions d’installation et de mise à niveau
Vous pouvez installer Adobe Commerce 2.4.4 à l’aide de Composer.
Kits d’outils de migration
L’outil de migration des données permet de transférer les données de magasin Magento 1.x existantes vers Magento 2.x. Cette interface de ligne de commande comprend des fonctions de vérification, de suivi de progression, de journalisation et de test. Pour obtenir des instructions sur l’installation, voir Installation de l’outil de migration de données. Envisagez d’explorer le référentiel de migration de données ou d’y contribuer.
La boîte à outils de migration de code permet de transférer les extensions et personnalisations de magasin Magento 1.x existantes vers Magento 2.x. L’interface de ligne de commande comprend des scripts pour la conversion des modules et des mises en page Magento 1.x.