Notas de la versión de Adobe Commerce 2.4.5

Adobe Commerce introduce mejoras en la calidad de la plataforma, los métodos de pago, el rendimiento del almacenamiento en caché de GraphQL y la accesibilidad. Incluye actualizaciones de los módulos integrados de Google y la herramienta de compatibilidad de actualización e introduce la compatibilidad con Live Search B2B.

Esta versión incluye más de 400 correcciones y mejoras de calidad.

NOTE
Las versiones de Adobe Commerce pueden contener cambios incompatibles con versiones anteriores (BIC). Para revisar los cambios incompatibles con versiones anteriores, consulte Referencia BIC. Los principales problemas incompatibles con versiones anteriores se describen en Puntos destacados de BIC. No todas las versiones introducen BIC importantes.

Otra información de la versión

Aunque el código de estas funciones está empaquetado con versiones trimestrales del código principal de Adobe Commerce, varios de estos proyectos (por ejemplo, B2B, Page Builder y Progressive Web Application (PWA) Studio) también se publican de forma independiente. Las correcciones de errores para estos proyectos se documentan en la información de versión independiente y específica del proyecto que está disponible en la documentación de cada proyecto.

Revisiones incluidas en esta versión

Adobe Commerce 2.4.5 incluye la resolución de todos los problemas abordados por las siguientes revisiones, que se proporcionaron para Adobe Commerce:

Elementos destacados de Adobe Commerce 2.4.5

Busque los siguientes aspectos destacados en esta versión.

Mejoras de seguridad

Esta versión incluye 20 correcciones de seguridad y mejoras de seguridad de la plataforma. Esta corrección de seguridad se ha trasladado a Adobe Commerce 2.4.3-p3 y Adobe Commerce 2.3.7-p4.

Hasta la fecha no se han producido ataques confirmados relacionados con estos problemas. Sin embargo, es posible que se aprovechen ciertas vulnerabilidades para acceder a la información de los clientes o hacerse cargo de las sesiones de administrador. La mayoría de estos problemas requieren que un atacante obtenga acceso primero al administrador. Como resultado, le recordamos que tome todas las medidas necesarias para proteger a su administrador, incluidas, entre otras, las siguientes:

  • INCLUSIÓN EN LA LISTA DE PERMITIDOS IP
  • Autenticación de doble factor
  • Uso de una VPN
  • Uso de una ubicación única en lugar de /admin
  • Buena higiene de las contraseñas

Consulte Boletín de seguridad del Adobe para conocer la última discusión de estos problemas corregidos.

Mejoras de seguridad adicionales

Las mejoras de seguridad para esta versión mejoran el cumplimiento de las prácticas recomendadas de seguridad más recientes, que incluyen:

  • La compatibilidad con reCAPTCHA se ha agregado a los formularios de Lista de deseos compartida, Crear nueva cuenta de cliente y Tarjeta de regalo.

  • Se han agregado recursos ACL al inventario.

  • Se ha mejorado la seguridad de la plantilla de inventario.

  • El MaliciousCode El filtro se ha actualizado para utilizar HtmlPurifier biblioteca.

Mejoras de Platform

  • Implementaciones locales de Adobe Commerce: Adobe Commerce 2.4.5 se ha probado y confirmado que es compatible con el Elasticsearch 7.17 (~7.17.0 con restricciones). Los comerciantes que alojen Adobe Commerce de forma local pueden utilizar Elasticsearch o OpenSearch 1.2.

  • Implementaciones alojadas en la nube de Adobe Commerce: Elasticsearch 7.11 o posterior no es compatible con implementaciones alojadas en la nube de Adobe Commerce 2.4.5. OpenSearch es el motor de búsqueda predeterminado para implementaciones de nube de Adobe Commerce 2.4.5.

Ahora, Adobe Commerce 2.4.5 es compatible con

  • Compositor 2.2

  • TinyMCE (5.10.2). Las versiones anteriores de TinyMCE (v5.9.2 o anteriores) permitían la ejecución arbitraria de JavaScript cuando se actualizaba una URL especialmente diseñada o una imagen con una URL especialmente diseñada.

  • jQueryUI (1.13.1)

  • PHPStan (^1.5.7 con restricción) GitHub-35315

El esquema de integración de DHL se ha actualizado de la versión 6.0 a la versión 6.2. Esta actualización no producirá un cambio en el comportamiento del producto.

Las bibliotecas de JavaScript obsoletas se han actualizado a sus versiones más recientes y se han eliminado las dependencias obsoletas. Estos cambios son compatibles con versiones anteriores.

Actualizaciones de dependencias del Compositor

Las siguientes dependencias del Compositor se han actualizado a las versiones más recientes con restricciones:

  • colinmollenhour/credis (1.13.0)?
  • guzzlehttp/guzzle (^7.4.2)
  • laminas/laminas-captcha (actualizado con una restricción ^2.12)
  • laminas/laminas-db (^2.15.0)
  • laminas/laminas-di (^3.7.0)
  • laminas/laminas-escaper (~2.10.0)
  • laminas/laminas-eventmanager (^3.5.0)
  • laminas/laminas-feed (^2.17.0)
  • laminas/laminas-mail (^2.16.0)
  • laminas/laminas-mvc (^3.3.3)
  • laminas/laminas-server (^2.11.1)
  • laminas/laminas-servicemanager (^3.11.0)
  • laminas/laminas-validator (^2.17.0)
  • league/fly (2.4.3)
  • monolog/monolog (^2.5)
  • phpmd/phpmd (^2.12.0)
  • phpstan/phpstan (^1.5.7)
  • phpunit/phpunit (~9.5.20)
  • php-cs-fixer (^3.4.0)
  • webonyx/graphql-php (14.11.6)

El laminas/laminas-session, laminas/laminas-text, y laminas/laminas-view se han eliminado las dependencias.

Otras actualizaciones y reemplazos

  • El esquema de integración de DHL se ha actualizado de la versión 6.0 a la versión 6.2.

  • La URL de puerta de enlace predeterminada para el envío de USPS se ha actualizado para utilizar https en lugar de http.

  • El Froogaloop La biblioteca de se ha sustituido por el Vimeo de Player.js biblioteca (2.16.4).

  • El grunt-eslint La biblioteca (NPM) de se ha actualizado a la última versión.

  • El jQuery Storage las bibliotecas se han reemplazado por julien-maurel/js-storage.

  • El php-cs-fixer y phpcs las herramientas de análisis de código estático ahora son compatibles con PHP 8.x.

  • glob.js dependencia (actualizada con restricción a ~7.2.0)

  • serve-static.js dependencia (actualizada con restricción ~1.14.2)

  • underscore.js dependencia (NPM) (1.14.2)

  • moment-timezone-with-data.js (0.5.34)

  • La biblioteca jquery/jquery-cookie se ha reemplazado por js-cookie/js-cookie.

  • El jarallax.js y jaralax-video.js Las bibliotecas de se han actualizado para utilizar la última versión de la API de REST de Vimeo.

Mejoras de rendimiento y escalabilidad

Optimización del indexador de precios

Se ha mejorado el rendimiento del índice primario reduciendo el número de índices primarios de 3 a 1 para el catalog_product_index_price_tmp tabla. Esta mejora redujo el número de registros creados en el índice de precios al reducir la multiplicación de eSKU resultante de los catálogos compartidos. El tiempo de indexación se ha reducido significativamente.

Actualizaciones de accesibilidad

El enfoque de esta versión ha sido crear una experiencia de tienda en Venia (PWA) que sea más perceptible, operable, comprensible y robusta. Estas mejoras incluyen:

  • La información de resumen de los resultados de búsqueda ahora se anuncia a los usuarios del lector de pantalla
  • Ahora se informa a los lectores de pantalla cuando se carga una nueva vista de página
  • Se ha mejorado el contraste y la accesibilidad del teclado

Adobe Sign

Los comerciantes ahora pueden permitir que los clientes firmen electrónicamente acuerdos personalizados, como documentos de garantía, acuerdos de compra y términos y condiciones, durante el cierre de compra de Adobe Commerce.

Integración de Adobe Commerce con Adobe IMS

Los comerciantes de Adobe Commerce que tengan un Adobe ID y deseen un inicio de sesión optimizado en los productos de Adobe Commerce y Adobe Business pueden integrar la autenticación de Commerce con el flujo de trabajo de autenticación IMS de Adobe. Una vez habilitada esta integración en la tienda de Commerce, los usuarios administradores deben usar sus credenciales de Adobe para iniciar sesión, no sus credenciales de Commerce. Consulte Información general sobre la integración de Adobe Identity Management Service (IMS).

Cambios de marca y estilo

Se ha actualizado el administrador para que se ajuste a la estrategia de marca del Adobe. Los cambios afectan a los encabezados, pies de página, actualizaciones de color de la cuadrícula de datos y elementos de navegación.

B2B

Hemos optimizado los datos normalizados de la base de datos necesarios para implementar la función de catálogos compartidos. Esta reducción en la multiplicación de eSKU supone una mejora del rendimiento, ya que se deben almacenar menos filas de base de datos. Anteriormente, Adobe Commerce duplicaba todos los SKU del catálogo para cada catálogo compartido. Adobe Commerce ahora crea eSKU únicos para los que se asignan directamente a un catálogo compartido.

Activación de la nueva Asignación directa de precios de productos del catálogo compartido habilitada La opción de configuración también mejora el rendimiento del indexador de precios del producto.

Esta versión incluye varias correcciones de errores. Consulte Notas de la versión B2B.

Google Analytics

Google ha actualizado los mecanismos de seguimiento e integración de AdWords y Analytics en aplicaciones web mediante la integración con GTag. Esta integración de la funcionalidad de Google en las páginas del sitio web amplía las oportunidades de seguimiento y administración de contenido a través de los servicios de Google. Adobe Commerce tiene un conjunto de módulos integrados que incluyen Google AdWords, Analytics, Optimizer y TagManager que aprovechan la API anterior para integrarse con los servicios de Google. En esta versión, hemos vuelto a implementar esta integración con el enfoque GTag​ Consulte Migrar de analytics.js a gtag.js (Universal Analytics).

GraphQL

Las mejoras de rendimiento de GraphQL incluyen:

  • Los desarrolladores y administradores experimentan una reconstrucción más rápida del esquema de GraphQL de tienda unificada en la implementación o al cambiar atributos en la producción. Los compradores también experimentan velocidades de carga de página significativamente más rápidas cuando, por cualquier razón, se debe reconstruir el esquema de GraphQL.

  • Se ha agregado la capacidad de consumir la fecha y hora de caducidad del token de autorización mediante el uso de tokens web JSON (JWT) en la API de GraphQL.

  • El bin/magento config:set graphql/session/disable 1 Este comando permite a los comerciantes desactivar por completo la creación de cookies de sesión para todas las operaciones de GraphQL. De forma predeterminada, Adobe Commerce crea estas cookies y depende de ellas para la autorización, lo que afecta al rendimiento. En adelante, recomendamos el uso de tokens de como única forma de autorización para las solicitudes de GraphQL. No se recomienda el uso de cookies de sesión solas o junto con tokens de autorización. Consulte Autorización de GraphQL.

  • Las cookies de sesión ahora se inician en operaciones de GraphQL utilizando proxies de clase solo cuando es necesario.

  • El uso de la sesión se ha eliminado de http procesadores de encabezado en GraphQL, como tienda, cliente o divisa.

Consulte la Guía para desarrolladores de GraphQL para obtener más información sobre estas mejoras.

Inventario

Se ha mejorado la seguridad de la plantilla de inventario.

Esta versión incorpora compatibilidad con grupos de clientes B2B y precios personalizados. Live Search ahora respeta las asignaciones de productos a grupos de clientes y los precios establecidos para un grupo de clientes o catálogo compartido específico.

Page Builder

Page Builder 1.7.2 es compatible con Adobe Commerce 2.4.5.

El diseño de columna de Page Builder incluye estas mejoras:

  • Ahora se exponen las columnas, lo que permite a los usuarios controlar la configuración de las columnas de la tienda.

  • El cambio de tamaño de columna ahora admite el ajuste activado por las acciones del usuario.

Pagos

Apple Pay ya está disponible para todos los comerciantes que realicen implementaciones con Servicios de pago habilitados. Este método de pago no requiere que los compradores introduzcan los datos de su tarjeta de crédito o débito. Apple Pay está disponible en la página de detalles del producto, en el minicarrito, en el carro de compras y en el flujo de trabajo de cierre de compra. Los comerciantes pueden activar esta función.

PayPal

  • Los comerciantes en España e Italia ahora pueden ofrecer PayPal Pay later a los compradores.

  • Las vistas previas de los botones PayPal, Crédito y Pagar más tarde ahora están disponibles en la Admin para las páginas de cierre de compra, minicarrito, carrito y producto. Las vistas previas muestran el aspecto que tendrán estos botones cuando se activen y procesen en la tienda.

Braintree

  • El Braintree ha interrumpido la integración de protección contra fraudes de KOUNT. Se ha eliminado de la base de código de Adobe Commerce.

  • El Solicitar siempre 3DS se ha añadido a la Admin.

PWA Studio

PWA Studio v.12.5.x es compatible con Adobe Commerce 2.4.5.

Las nuevas funciones de esta versión incluyen:

  • Los datos de comportamiento del comprador se recopilan en la tienda del PWA Studio para los servicios de análisis web. Los comerciantes ahora pueden suscribirse y ampliar estos eventos según sea necesario.

  • Los comerciantes ahora pueden seleccionar un servicio para implementarlo desde el administrador (Google Tag Manager).

Para obtener información sobre mejoras y correcciones de errores, consulte Versiones del PWA Studio. Consulte Compatibilidad de versión para obtener una lista de versiones de PWA Studio y sus versiones principales de Adobe Commerce compatibles.

Actualizar herramienta de compatibilidad

Las mejoras incluyen:

  • La validación de firma de método ahora identifica cambios incompatibles dentro de un método o una firma de constructor.

  • La validación del esquema de base de datos ahora identifica cambios e incompatibilidades de esquema.

  • La validación de la configuración de ID ahora comprueba las referencias a clases principales que no son API eliminadas o en desuso en di.xml y preferencias para clases e interfaces principales.

  • UCT ahora identifica las obsolescencias del código y proporciona recomendaciones específicas para resolver cada problema.

Problemas solucionados

Hemos corregido cientos de problemas en el código principal de Adobe Commerce 2.4.5.

Instalación, actualización e implementación

  • Ahora puede cambiar el nombre de un parche de datos y agregar el antiguo nombre de clase como alias en la patch_list tabla de base de datos. Adobe Commerce ahora comprueba si ya existían alias de parches de datos en la base de datos antes de aplicar el parche. Anteriormente, Adobe Commerce arrojaba un error en estas condiciones.
  • Adobe Commerce ya no genera una excepción cuando intenta cambiar la URL del administrador a una URL personalizada desde el administrador. Anteriormente, después de cambiar la URL de administración, no se podía iniciar sesión. GitHub-35416
  • Los comerciantes ahora pueden actualizar correctamente desde una implementación de Adobe Commerce 2.4.2 con Klarna a Adobe Commerce 2.4.3. GitHub-33760
  • La ruta a Adobe Commerce Analytics ya no está codificada. Anteriormente, esta ruta codificada provocaba conflictos cuando se instalaban varias instancias de Adobe Commerce en un servidor. GitHub-29373

Accesibilidad

  • El Bolsa de compras ahora proporciona una indicación programática o textual de su estado. Se informa a los usuarios del lector de pantalla de que al hacer clic en este botón se expandirá otro contenido, o de que el contenido asociado se expande o contrae. Anteriormente, este botón no proporcionaba una indicación programática o textual de su estado.
  • Los elementos de texto de opciones de tarjetas de crédito de información de pago o las imágenes de texto ahora cumplen la relación de contraste de color mínima requerida por WCAG 2.0 de 4.5:1 para texto estándar de 18 pt (24 px) o 14 pt (19 px) si está en negrita. Anteriormente, no cumplían la relación de contraste esperada.
  • Libreta de direcciones > Comunicación > Información de cuenta los indicadores de enfoque personalizados ahora proporcionan una relación de contraste de al menos 3:1 con respecto al color de fondo.
  • Filtrar y Ordenar el texto del botón ahora cumple la relación de contraste de color mínima requerida por WCAG 2.0 de 4.5:1 para el texto estándar de 18 pt (24 px) o 14 pt (19 px) si está en negrita. Anteriormente, los botones de navegación para carruseles no cumplían estos requisitos mínimos de contraste.
  • Los lectores de pantalla anuncian la palabra "Venia" solo una vez al navegar a los encabezados y pies de página de Venia. Anteriormente, la misma palabra se anunciaba dos veces consecutivas.
  • Los botones en los que aparecen listas desplegables de déclencheur ahora proporcionan información a los lectores de pantalla que indican su estado expandido o contraído y los nombres accesibles.
  • Se informa a los usuarios del lector de pantalla cuando se procesa una nueva vista de página. Anteriormente, cuando se cambiaba el título de una página, no se anunciaba.

Adobe Stock

  • Los usuarios ahora pueden cerrar la sesión de Adobe Stock correctamente.

Paquete de productos

  • Ahora puede utilizar la variable PUT /V1/products punto final para actualizar los atributos de precio del producto para un sitio web específico. Anteriormente, si algunos atributos de producto se anulaban para una vista de tienda específica, no se podía actualizar un atributo de precio para ese producto en esa misma vista de tienda.
  • Adobe Commerce ahora calcula correctamente el total del carro de compras de un producto agrupado cuando se aplica la regla de subselección de productos.

Caché

  • La memoria caché de la página completa ya no se muestra como deshabilitada en el Administrador cuando se vacía la memoria caché de Adobe Commerce y use_stale_cache está activada.
  • Los marcadores de implementación de New Relic ahora funcionan como se espera cuando se vacía la caché. GitHub-32649

Carro y cierre de compra

  • La ventana emergente de búsqueda de direcciones en el paso de facturación del flujo de trabajo de cierre de compra ya no provoca errores DOM.
  • El addProductsToCart La mutación ahora funciona correctamente con varios productos. Anteriormente, esta consulta devolvía el primer producto con un subtotal preciso, pero devolvía un subtotal de 0 para otros productos.
  • Las excepciones de permisos ahora se gestionan para productos restringidos añadidos por SKU. Ahora se envía un mensaje adecuado a los compradores en la tienda y el campo de cantidad de la tabla de errores está desactivado. Anteriormente, Adobe Commerce arrojaba una excepción como esta: There has been an error processing your request.
  • La consulta SQL que actualiza las ofertas afectadas después de deshabilitar una regla de precios del carro de compras se ha optimizado para evitar bloquear toda la tabla de ofertas.
  • Ya no es necesario que los compradores con uso compartido de cuentas globales inicien sesión de nuevo en un sitio web secundario en una implementación de varios sitios cuando se desactiva el cierre de compra de invitados. Los datos del cliente ahora se cargan cuando el comprador navega al subdominio. Ya no se pide al comprador que vuelva a iniciar sesión y se muestra el contenido anterior del carro de compras.
  • Los valores desplegables de dirección del flujo de trabajo de cierre de compra ya no cambian para los elementos restantes de una oferta cuando se elimina un solo elemento de dirección de cantidad en un cierre de compra de varias direcciones. Anteriormente, cuando un producto se eliminaba de una oferta durante el cierre de compra de varias direcciones, el valor desplegable de la dirección cambiaba a predeterminado para todos los productos.
  • El cart query ya no devuelve respuestas nulas cuando un producto está agotado. Un nuevo errors El elemento que contiene el mensaje de error se introdujo en la respuesta. Anteriormente, al ejecutar una consulta con un producto sin existencias, Adobe Commerce mostraba un null valor bajo el items de la respuesta. Consulte consulta de carrito.
  • Los métodos de envío ahora están disponibles según lo esperado cuando un comprador invitado crea una cuenta después de agregar un producto al carro de compras antes de continuar con el cierre de compra. Anteriormente, cuando un invitado agregaba un producto al carro de compras antes de crear una cuenta, no había métodos de envío disponibles durante el cierre de compra. Después de agregar otros productos al carro de compras, los métodos de envío quedaron disponibles.
  • Los compradores ahora pueden agregar productos a sus carros de compras cuando no hay opciones en la Permitir países se han seleccionado los campos.
  • El contenido del carro de compras y el estado de inicio de sesión ahora se vuelven a cargar como se espera después de un tiempo de espera de sesión cuando Habilitar persistencia se establece en . GitHub-35182
  • Los subtotales de minicarrito ahora se actualizan correctamente cuando un comprador navega de la página de envío a la página del carro de compras en el flujo de trabajo de cierre de compra de un pedido con varias direcciones de envío. Anteriormente, el subtotal se duplicaba.
  • El minicarrito ahora muestra los productos agregados anteriormente después de un tiempo de espera de sesión cuando Habilitar persistencia está activada . GitHub-35183
  • Los comerciantes ahora pueden crear una nota de crédito en la que Envío de reembolso (incl. Tax) se establece en -0,01 y ahora puede establecer esta cantidad en 0. Anteriormente, la nota de crédito no se podía crear en estas condiciones.

Regla de precio del carro

  • El Parent Only El ámbito del atributo ahora se utiliza correctamente en la condición Regla de carro de compras.
  • Las claves de URL del producto ahora permanecen inalteradas al actualizar el nombre del producto mediante PUT /V1/products/ para una vista de tienda. Anteriormente, se generaba una nueva clave URL basada en el nuevo nombre de producto y asignada al producto, que sobrescribía la clave URL en esa vista de tienda.
  • Los productos de ampliación de venta basados en reglas ya no se muestran dos veces en la página de productos.
  • Añadir un producto a una categoría desde el conjunto de widgets de producto Page Builder al modo de carrusel ya no supone un déclencheur para la recarga de una página.
  • Productos configurados en No visible individualmente ya no aparece en los resultados de búsqueda avanzada del catálogo.
  • Los atributos del paquete dinámico ahora se actualizan correctamente en la página Actualización masiva de atributos. Anteriormente, la variable SKU dinámico el atributo permaneció establecido en aunque estuvieran desactivados en la página Actualización masiva.
  • Las reglas de catálogo ahora se aplican correctamente utilizando indexadores incrementales en lugar de un reindexado completo.
  • Ahora puede cambiar correctamente entre las vistas de lista y de cuadrícula de las listas de productos de varias páginas. Anteriormente, cuando se navegaba a la última página de una vista de lista de productos de varias páginas antes de cambiar a la vista de cuadrícula, Adobe Commerce mostraba este error: Unfortunately there are no products in this category on our website currently.
  • Los informes del registro de acciones de administración ahora muestran el ID de producto actualizado y la información de estado actualizada según lo esperado.
  • Los déclencheur ahora se restauran según lo esperado en el catalogrule_product_price después de una reindexación completa. Anteriormente, los déclencheur se eliminaban de catalogrule_product_price tabla después de a catalogrule_rule o catalogrule_product reindexación completa.
  • Las reglas de categoría que se usan para asignar productos a categorías ya no cambian aleatoriamente.
  • Adobe Commerce ya no genera un error cuando una regla de categoría asigna un producto a una categoría que luego se ordena en una implementación de varios sitios.
  • Un administrador con acceso restringido al ámbito ya no puede actualizar globalmente las categorías. Anteriormente, cuando varios sitios web usaban la misma categoría pero productos diferentes, y un administrador con permiso restringido a un almacén cambiaba los productos en la categoría, la selección de productos también cambiaba para otras tiendas.
  • La página de detalles del producto ahora muestra el precio correcto cuando se utiliza una moneda no predeterminada para una configuración regional especificada. Anteriormente, los números no se localizaban según lo esperado en la tienda.
  • Ahora, los productos se pueden activar mediante una actualización programada.
  • El mismo mensaje de error ahora se muestra en la API y en la tienda al intentar recuperar los precios de nivel de un producto con registros duplicados. Anteriormente, PUT /V1/products/tier-prices ha devuelto un mensaje de error incorrecto.
  • Adobe Commerce ahora proporciona mensajes de error de validación cuando intenta agregar una clave de URL de producto con un guion final. También hay disponible información sobre herramientas.
  • El nuevo ConfigurableWishlistItem.configured_variant El campo ha reemplazado a ConfigurableWishlistItem.child_sku field. Este último campo activó un error interno cuando una lista de deseos del cliente contenía un producto configurable no configurado.
  • Ahora, las reescrituras de URL solo se generan para las tiendas seleccionadas durante la actualización masiva de atributos para cambiar la visibilidad del producto. Anteriormente, la actualización masiva de atributos creaba una reescritura de URL para el almacén incorrecto.
  • Si la variable Synchronize widget products with backend storage Si la configuración está habilitada, Adobe Commerce agrega datos de productos de vista recientes a catalog_product_frontend_action tabla de base de datos. Incluye el ID de cliente o visitante al añadir registros. El recently_viewed_product La sección de la respuesta ahora está vacía si el ID de cliente y el ID de visitante son nulos. Como resultado, cuando la variable customer/section/load Si se envía la solicitud de Ajax, Adobe Commerce puede filtrar correctamente los productos vistos recientemente en función del ID de cliente o visitante. Anteriormente, la respuesta incluía todos los datos disponibles en el catalog_product_frontend_action tabla de la base de datos porque no se comprobó la existencia de un ID de visitante o cliente vacío.
  • Reglas de categoría con un Quantity para productos configurables ahora funcionan correctamente cuando se implementa el ensayo. Anteriormente, cuando los productos tenían valores diferentes para row_id y entity_id en el catalog_product_entity debido a las actualizaciones de ensayo, Visual Merchandiser Hacer coincidir producto por regla La funcionalidad de no filtraba correctamente los productos.
  • Los administradores ahora pueden cambiar las opciones de productos configurables en un carro de compras desde el panel de diapositivas Administrador. Anteriormente, el panel de diapositivas no funcionaba correctamente.
  • La caché de página ahora se borra según lo esperado para el producto principal configurable cuando se guardan los cambios en un producto secundario. Anteriormente, como no se borraba la caché, no se seleccionaban los cambios en la página de producto de la configuración de la tienda. GitHub-34508
  • Las listas de productos ahora se representan correctamente en el Administrador. Anteriormente, la lista de productos no se representaba y Adobe Commerce mostraba este error: Item (Magento\Catalog\Model\Product\Interceptor) with the same ID "<ID>" already exists. GitHub-33145
  • Los precios de los productos ahora son los mismos en la página de detalles del producto y en la búsqueda de tiendas en implementaciones de varias tiendas después de que el ámbito del precio de catálogo cambie de sitio web hasta global. Anteriormente, la página Resultados de la búsqueda en el catálogo mostraba el global precio y la página de detalles del producto mostraba el sitio web precio. GitHub-34074
  • La navegación por capas ahora muestra los productos con los precios más altos, tal como se esperaba cuando Cálculo de Paso de Navegación de Precio se establece en Manual.
  • Ahora puede cambiar el límite de productos por página que se muestra dentro de una categoría cuando Recordar paginación de categoría está activada. Anteriormente, la cookie form_key e IU form_key difirió, y Adobe Commerce mostró este error: Invalid Form Key. Please refresh the page.
  • El indexador EAV ahora procesa los ID de producto como tipo int para evitar posibles problemas de rendimiento.
  • Ahora se genera correctamente una nueva caché de productos después de agregar una nueva imagen con un nombre que contiene '.' a un producto y, a continuación, guarde el producto y limpie la caché de imágenes. GitHub-32699
  • Adobe Commerce ahora muestra un mensaje de error como se espera cuando intenta crear un atributo desde la página del producto sin completar el campo Admin. GitHub-33099

  • Las clasificaciones de productos ahora son correctas en todas las listas de productos del catálogo cuando la página de inicio contiene varias listas de catálogo. GitHub-33867

Contenido de CMS

  • Los comerciantes ya no pueden editar una actualización programada activa desde la página de edición de entidades.
  • Un administrador con permisos restringidos ahora puede ver una página de CMS en la jerarquía de CMS después de una actualización programada.

Productos configurables

  • Adobe Commerce ahora muestra el precio de producto correcto para un producto configurable con una opción seleccionada después de cambiar su cantidad en la página de detalles del producto. Anteriormente, el precio se restablecía al valor inicial después de que cambiara la cantidad.
  • El products query ahora recupera los precios de los productos configurables que reflejan con precisión la Mostrar Fuera De Stock valor de configuración. Anteriormente, la consulta no devolvía precios exactos.
  • Las opciones configurables ahora están vinculadas a productos configurables que se crean en Admin mediante POST /V1/configurable-products/configurable1/child.
  • Los atributos de selección múltiple ahora se guardan correctamente durante la edición del producto. Anteriormente, Adobe Commerce guardaba la opción predeterminada para atributos no seleccionados, así como para atributos seleccionados al guardar un producto.
  • Adobe Commerce ahora muestra atributos configurables tal como se espera durante la creación de la versión global de select mediante una secuencia de comandos patch. Anteriormente, los atributos globales aptos estaban ocultos.
  • El addConfigurableProductsToCart ahora, la mutación se puede utilizar para añadir productos configurables con opciones personalizadas. Anteriormente, Adobe Commerce arrojaba este error: Magento 2.3.4 graphql Notice: Undefined index: option_value in /var/www/html/mg234/vendor/magento/module-configurable-product-graph-ql/Model/Resolver/ConfigurableCartItemOptions.php on line 62. GitHub-28860
  • Adobe Commerce ahora muestra correctamente el estado de stock de un producto configurable, las configuraciones disponibles y el precio mostrado cuando la disponibilidad de uno de los productos secundarios del producto configurable se cambia mediante una actualización programada. Anteriormente, cuando un producto configurable tenía dos productos secundarios y la disponibilidad de uno secundario se deshabilitaba con una actualización programada, el estado de stock del producto principal se mostraba incorrectamente como Sin existencias cuando la actualización estaba activa, una vez completada, se calculaba de forma incorrecta el precio mostrado y la disponibilidad de sus configuraciones.

  • Ahora puede reordenar los productos configurables con opciones personalizadas opcionales. Anteriormente, los intentos de reordenación fallaban y significaban que se mostraba este error: Some of the selected options are not currently available. GitHub-35409

  • El addConfigurableProductsToCart La mutación ahora funciona como se espera con varios productos. Anteriormente, se devolvía información de producto incorrecta o se devolvía un mensaje de error no válido. GitHub-30948

Cliente

  • Adobe Commerce ahora muestra correctamente los atributos predefinidos del sistema EAV según la configuración del sitio web en la tienda. Anteriormente, los atributos de cliente de nivel de sitio web habilitados para un sitio web y deshabilitados para otro se mostraban como habilitados para ambos.

Segmento de cliente

  • Las reglas de productos relacionados específicas del segmento del cliente ahora funcionan según lo esperado. El problema se ha corregido llamando a un método para agregar una relación de visitante-segmento para un sitio web específico. Anteriormente, los segmentos para esta regla solo se recuperaban sobre la base de clientes y sitios web registrados.

Descargable

  • Ahora puede quitar vínculos y archivos de ejemplo de un producto descargable. GitHub-31887

Correo electrónico

  • Los correos electrónicos emitidos por el sistema ahora se envían correctamente a los destinatarios con ".-" en su correo electrónico.
  • Los clientes ahora reciben recordatorios por correo electrónico sobre sus carros de compras abandonados en el horario correcto. El nuevo TIMESTAMPDIFF(DAY, ,) La función SQL ha reemplazado a TO_DAYS() y calcula la diferencia en las marcas de tiempo en función de la fecha y la hora. Anteriormente, los recordatorios de correo electrónico no se enviaban por programación debido al cálculo incorrecto de dos valores de fecha y hora de abandono del carro de compras (cualquier zona horaria) y hora del servidor (UTC).
  • Adobe Commerce ahora muestra un mensaje de error en la página de envío cuando un comprador introduce un formato de correo electrónico no válido después de que haga clic Realizar pedido. Anteriormente, el mensaje de error se mostraba en la página Pago. [GitHub-33590] (https://github.com/magento/magento2/issues/33590

Marcos

  • El bin/magento setup:config:set El comando ya no reemplaza los prefijos de ID de caché establecidos en app/etc/env.php.
  • El bin/magento setup:static-content:deploy -s compact El comando ahora incluye estilos de temas secundarios según lo esperado. Anteriormente, los archivos CSS de temas no estaban presentes en la tienda después de la implementación.
  • Se ha añadido un nuevo fragmento para comprobar si se utilizan barras oblicuas de cierre en void elementos.
  • Adobe Commerce ya no genera un error SQL después de asignar un nuevo origen a un producto y cambiar su cantidad. GitHub-35262
  • El orden de clasificación de atributos ahora funciona como se especifica en la variable di.xml después de la actualización.
  • El updateCartCurrency ahora establece una cadena en lugar de un objeto dentro del objeto de carro de compras. Anteriormente, Adobe Commerce no cargaba una cotización usando getQuote porque la variable updateCartCurrency establece un objeto en lugar de una cadena dentro del objeto de carro de compras. GitHub-34199
  • Los avisos de desaprobación ya no se producen en las pruebas unitarias debido a\DateTimeFormatter::formatObject(). Este método funciona ahora según lo esperado con valores numéricos para $format.
  • Adobe Commerce ya no muestra un preg_replace() error en el administrador. El tercer argumento ($subject) es ahora de tipo array|string en lugar de bool.
  • El isFreeShipping ahora devuelve un entero en lugar de un booleano.GitHub-35164
  • Adobe Commerce ya no genera el siguiente error cuando crea un complemento para cualquier método de clase vendor/magento/module-backend/Model/Menu.php: Error: Call to undefined method ReflectionUnionType::getName(). GitHub-35292
  • Ahora, Adobe Commerce devuelve un error 404 en lugar de un error 500 al navegar a /checkout/sidebar/updateItemQty/?item_qty=error en la tienda. Anteriormente, se generaba este error: Warning: A non-numeric value encountered in /vendor/magento/module-checkout/Controller/Sidebar/UpdateItemQty.php on line 69. GitHub-34380
  • Adobe Commerce ya no tiene déclencheur trim(): Passing null to parameter #1 ($string) of type string is deprecated error cuando la conexión AMPQ está configurada sin configuración SSL.
  • Se ha corregido el longblog definición de base de datos a long blob. GitHub-35108
  • El texto de cobertura que contiene comillas simples ahora se puede traducir. GitHub-34319
  • A TypeError in magento2/app/code/Magento/Security/Model/AdminSessionsManager.php se ha corregido desde int hasta string. GitHub-34415
  • .htpasswd se ha agregado a ubicaciones prohibidas en el nginx archivo de configuración. GitHub-35150
  • Se ha mejorado el tiempo de carga de las páginas de lista de productos de categoría añadiendo Magento_Ui/js/core/app as a deps hasta app/code/Magento/Ui/view/frontend/requirejs-config.js. GitHub-34847
  • El ProductRepository.php:get El método ahora devuelve claves de caché una vez. Anteriormente, se devolvían dos veces. GitHub-34958
  • Se ha agregado un mensaje de error a una nueva excepción que se creó en el controlador de excepciones para trabajos cron. GitHub-34941
  • Los archivos Léame para GraphQl-GroupedProductGraphQl módulos de se han actualizado. GitHub-34951
  • Las páginas de pedido de impresión/factura/nota de abono de la tienda ya no muestran el logotipo predeterminado de Luma en lugar del logotipo que se ha especificado para su visualización en el sitio web. GitHub-34942

Correcciones generales

  • Configuración del tamaño máximo de sesión en 0 (Administrador) Almacenar > Configuración > Configuración - Avanzada) ya no cierra la sesión del administrador. GitHub-35312
  • Los ajustes de configuración de los atributos de dirección del cliente ahora se cargan correctamente en función del sitio web al que se asigna el cliente cuando se añade una nueva dirección de cliente del administrador asignada a un sitio web no predeterminado.
  • La creación de categorías está bloqueada para un administrador restringido tanto en la página Categoría como en la página Editar producto. Anteriormente, la creación de categorías estaba bloqueada en la página de categorías, pero seguía siendo posible a través de la página Editar producto.
  • Adobe Commerce ya no emite una excepción cuando se añade un producto agrupado a través de Page Builder.
  • Ahora se pueden seleccionar categorías en el árbol de categorías como condición para un segmento de cliente.
  • Ahora puede crear una cuenta de cliente en un dispositivo iOS con el apóstrofo inclinado (') en el nombre, el segundo o los apellidos. Anteriormente, solo se permitía el apóstrofo recto y, con el uso de iOS 11+ apóstrofo inclinado predeterminado, se producía un Name is not valid! error.
  • El products Ahora, la consulta devuelve información del producto que refleja con precisión la configuración "Mostrar productos relacionados". El related_products, upsell_products, y crosssell_products Los campos de la interfaz de producto de GraphQL ahora se resuelven según las configuraciones Mostrar productos relacionados, Mostrar productos de ampliación de venta y Mostrar productos de venta cruzada, respectivamente.
  • El Definir producto como nuevo desde la fecha ahora muestra la fecha correcta cuando el atributo Establecer producto como nuevo se configura mediante una actualización masiva de productos. Anteriormente, Definir producto como nuevo desde la fecha se mostraba como 1 ene. 1970.
  • A los usuarios con funciones restringidas ya no se les concede acceso automáticamente a los nuevos módulos.
  • Las reglas de Target basadas en categorías solo muestran productos de la categoría declarada en la regla. Anteriormente, las reglas de productos relacionados mostraban productos de categorías asignadas a productos y no definidas en la regla.
  • Las condiciones de reglas de producto relacionadas ahora funcionan según lo esperado con productos que contienen multiselect atributos.
  • Los comerciantes ahora pueden añadir un atributo de precio de nivel (tier_price) a comparaciones de productos. Anteriormente, la página de comparaciones de productos se bloqueaba cuando el Comparable en tienda se habilitó la configuración para este atributo. GitHub-35244
  • Adobe Commerce ahora muestra un mensaje de error cuando establece un dominio de cookie no válido (Almacenar > Configuraciones > Web > Configuración de cookies predeterminada Dominio de cookies). Anteriormente, el sitio web se bloqueaba. GitHub-35048
  • Adobe Commerce ya no genera un error cuando un administrador con funciones asignadas a un solo sitio web agrega un producto a Elementos de contenido mediante PageBuilder. Anteriormente, Adobe Commerce arrojaba un error SQL.
  • La validación se ha agregado a la segunda línea de la dirección en las páginas Editar y agregar dirección. Ahora se aplican las longitudes de texto mínimas y máximas especificadas en la segunda.
  • Adobe Commerce ya no genera el siguiente error durante la creación de una regla de catálogo en la Admin después de la actualización: A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later.
  • Adobe Commerce ya no genera un error cuando activa el Haga clic aquí para vincular una fuente RSS a su Lista de deseos antes de hacer clic en Compartir la lista de deseos. GitHub-34998
  • El título del Mostrar contraseña La casilla de verificación (Inicio de sesión del cliente, Registro de cliente, Edición del cliente (sección Cambiar contraseña) y Formularios de establecimiento de nueva contraseña del cliente) ahora se puede traducir. GitHub-34857
  • Se han actualizado las etiquetas y las descripciones de comentarios en app/code/Magento/NewRelicReporting/etc/adminhtml/system.xml. GitHub-31947
  • Eliminado innecesario csp_whitelist.xml archivos. GitHub-30607

Tarjetas de regalo

  • products ahora devuelve correctamente los datos del producto que contienen productos de tarjeta regalo con un gift-card Clave de URL.

GraphQL

  • Falta una price_range se ha añadido el atributo a GraphQL BundleItemOption escriba. GitHub-35010
  • El products La consulta ya no devuelve atributos como una agregación cuando el Uso en resultados de búsqueda La opción Navegación por capas está desactivada. GitHub-33318
  • A price_including_tax se ha añadido el campo a CartItemPrices. GitHub-29057
  • El new_from_data y new_to_datefields in ProductInterface ya no son obsoletas. GitHub-34783
  • El categories query ya no genera una excepción al recuperar una lista de categorías una de las cuales contiene una imagen que no se puede encontrar en el sistema de archivos. Anteriormente, Adobe Commerce producía esta excepción: Category image not found. GitHub-34266
  • El products query now devuelve category_uid como una agregación según lo esperado. GitHub-32557
  • El updateCartItems ahora, la mutación elimina los productos según lo esperado cuando el stock de productos ha alcanzado la cantidad máxima de stock. GitHub-30220
  • El urlResolver query ahora resuelve el delimitador de ruta (/) correctamente cuando varias páginas principales tienen el mismo identificador. Anteriormente, la consulta no resolvía el delimitador y devolvía nulo. GitHub-33615
  • customer las consultas ahora recuperan las opciones de selección múltiple de productos del paquete como se espera al consultar pedidos. GitHub-34717
  • Las sesiones de Adobe Commerce ya no finalizan después de realizar una solicitud de GraphQL. Anteriormente, la variable ClearCustomerSessionAfterRequest El complemento cerró la sesión del comprador. GitHub-34550
  • El products la consulta ya no devuelve price_range valores de los productos configurables que se ven afectados por variantes desactivadas. GitHub-33629
  • Rango de precios de productos configurables en products las respuestas de consulta ahora se calculan correctamente cuando la variable Mostrar productos sin existencias La opción de configuración está habilitada. Anteriormente, las opciones desactivadas se tenían en cuenta en el cálculo del precio mínimo y máximo.
  • El products query ahora devuelve correctamente filtradas varias categorías al ordenar por posición.
  • setShippingAddressesOnCart Las solicitudes de ahora validan correctamente los ID de región. Anteriormente, Adobe Commerce arrojaba un error cuando se utilizaba el ID de región en lugar del código de región.
  • products ahora, las consultas solo devuelven las categorías asociadas con el almacén pasado en la solicitud.
  • El categoryList query ahora devuelve resultados que reflejan la categoría raíz del almacén consultado cuando el almacén se especifica en el encabezado. Anteriormente, las categorías de la categoría raíz predeterminada se incluían en los resultados aunque se especificara otro almacén en el encabezado.
  • El products La consulta ya no devuelve atributos como una agregación cuando el Uso en la navegación por capas de resultados de búsqueda La configuración está deshabilitada. GitHub-33318
  • El cart query ahora devuelve solo un método de pago para pedidos gratuitos. Anteriormente, todos los métodos de pago activos se devolvían en la respuesta de consulta. GitHub-34036
  • Se ha añadido un complemento antes de que collectQuoteTotals llama a para asegurarte de que los créditos de la tienda no se apliquen varias veces.
  • El generateCustomerTokenAsAdmin mutation ahora recupera los tokens de cliente según lo esperado. Anteriormente, no se devolvían tokens y se devolvía este error: Customer email provided does not exist.
  • El esquema de GraphQL ahora es válido cuando se crea un type el atributo del producto está definido. Anteriormente, el esquema no era válido porque la variable type el atributo en tipos de productos fue sobrescrito por el personalizado type atributo. GitHub-34929
  • Clientes añadidos o actualizados con createCustomer, createCustomerV2, updateCustomer, o updateCustomerV2 las mutaciones ahora se añaden con las suscripciones activas al boletín informativo. Anteriormente, se cancelaba la suscripción de los clientes a los boletines incluso cuando la solicitud contenía los parámetros de entrada adecuados. GitHub-33599
  • El products la consulta de una vista de tienda específica ahora devuelve solo las categorías que están en la categoría raíz del sitio web específico en la implementación de varios sitios. Anteriormente, la consulta devolvía categorías de las categorías raíz de otros sitios web. GitHub-34570
  • El products Ahora, la consulta solo devuelve la subcategoría del ID de categoría proporcionado. Anteriormente, devolvía todas las categorías. GitHub-35220
  • El customerOrders La consulta ahora responde como se espera cuando el gift_message El objeto se especifica en la respuesta, pero no existe ningún mensaje de regalo. Anteriormente, la consulta devolvía este mensaje: Can't load gift message for order is returned. GitHub-28957
  • Se ha corregido un error con la variable catalog_category_product indizador que provocó el products consulta para devolver categorías de otro almacén. GitHub-31253
  • El generateCustomerToken La mutación de ahora crea una entrada en customer_log como se espera después de generar un token de cliente. GitHub-33378

Google Analytics

  • El módulo Google Tag se ha añadido a la base de código, que admite la transición a Google Analytics 4 en julio de 2023. Actualmente, puede utilizar y recopilar nuevos datos en las propiedades de Universal Analytics de Google, pero Google Universal llegará al final de su vida útil en julio de 2023. GitHub-35204, GitHub-35376

Imagen

  • Las imágenes de las páginas de detalles del producto ya no parpadean y permanecen centradas según lo esperado. Anteriormente, cuando una página de detalles del producto terminaba de cargar una imagen, esta se desplazaba visiblemente hacia abajo.

Importar/exportar

  • La posición del producto relacionado, de ampliación de venta y de venta cruzada en el CSV de exportación ahora es correcta después de eliminar un producto de venta cruzada del administrador antes de regenerar el archivo CSV. Anteriormente, las posiciones de productos de venta cruzada no se volvían a calcular después de eliminar un producto de venta cruzada y el orden de posición del producto era incorrecto.
  • Adobe Commerce ahora busca una vista personalizada antes de filtrar las columnas al exportar los informes. Anteriormente, los informes exportados no tenían en cuenta las vistas personalizadas y las columnas exportadas eran incorrectas.
  • Adobe Commerce ahora importa correctamente imágenes con nombres de archivo largos. Anteriormente, Adobe Commerce no importaba la imagen y arrojaba este error: Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s):.
  • Los atributos de ID de categoría ya están disponibles en los filtros de exportación programados.
  • Agrupar productos que contienen un signo de interrogación (?) en el título de la opción ahora se puede importar correctamente debido a las mejoras realizadas en el generador de consultas dentro de populateExistingOptions método. El título de la opción también se muestra correctamente. Anteriormente, después de la importación inicial, las importaciones sucesivas producían un comportamiento dañado y duplicaban las opciones. Los compradores tampoco pudieron añadir el producto al carro de compras.
  • Se ha agregado validación para nombres de categoría durante la importación. Anteriormente, Adobe Commerce no validaba los nombres de categoría, lo que producía errores cuando estos superaban los 255 caracteres.
  • Registros existentes en catalog_url_rewrite_product_category ahora se eliminan antes de insertar otras nuevas. Anteriormente, se producía el siguiente error durante la importación de productos en varias tiendas: SQLSTATE[23000]: Integrity constraint violation. GitHub-34210

Infraestructura

  • Se ha eliminado un complemento de menú contextual obsoleto de la lista de complementos.
  • La lógica relacionada con la barra de herramientas del editor TinyMCE en el módulo Page Builder se ha actualizado como resultado de la introducción de delayedRender lógica para la barra de herramientas en TinyMCE.
  • Las condiciones de carrera ya no interrumpen la creación de la contentUpdated detector de eventos. GitHub-32068
  • El getTypeID La función ahora devuelve el ID del tipo de producto, no el ID del producto. GitHub-35458
  • Regulador de IU de jQuery y SelectMenu la asignación se ha corregido en vendor/magento/module-theme/view/base/requirejs-config.js.

  • Observadores asignados a sales_order_state_change_before ahora admite la recuperación de datos del objeto order. El sales_order_state_change_before event se ha actualizado el argumento. GitHub-26789

  • indexer:reset se ha refactorizado para llamar a $indexer->invalidate(). GitHub-34988
  • Ahora puede utilizar el símbolo de dos puntos en una htmlClass valor de atributo, que admite el uso de componentes adicionales como la interfaz de usuario de Tailwind. GitHub-34430

Registro

  • Las acciones del cliente, la dirección del cliente y el pedido ahora se registran correctamente en el informe de acciones de administración. Anteriormente, Adobe Commerce no registraba acciones si la variable postDispatch no se ha especificado el controlador en la configuración.

MFTF

Grupos de acción

Las acciones repetitivas se han sustituido por grupos de acciones en estas pruebas:

AdminConfigurableProductChildrenOutOfStockTest GitHub-32378
AdminCreateStoreViewTest GitHub-34631

Nuevas pruebas

AdminUnlockAdminUserEntityTest GitHub-34836

StorefrontNewsletterSubscriptionWithEnabledNeedToConfirmConfigTest GitHub-33344

Pruebas refactorizadas

AdminCancelTheCreatedOrderWithCashOnDeliveryPaymentMethodTest GitHub-33692

Newsletter

  • Los clientes que iniciaron sesión ya no están marcados como invitados en Administración > Marketing > Suscriptores de newsletter.
  • El correo electrónico de confirmación de suscripción al boletín informativo ahora incluye la dirección de correo electrónico correcta específica de la tienda en Desde campo si el cliente está asignado a una tienda no predeterminada y si se ha suscrito o cancelado la suscripción al administrador. Anteriormente, el cliente recibía un correo electrónico con el correo electrónico predeterminado en Desde encabezado. GitHub-34963
  • La URL "Cancelar la suscripción" de la plantilla de correo electrónico del boletín informativo ahora funciona según lo esperado. GitHub-33310

Pedido

  • Ahora puede crear correctamente un nuevo cliente a partir de un nuevo pedido con atributos de cliente personalizados que están ocultos en la tienda. Anteriormente, Adobe Commerce no guardaba los valores correctos para el atributo de cliente personalizado.
  • Los detalles del cliente invitado ahora se guardan correctamente después de editar un pedido. Anteriormente, se perdían algunos detalles del cliente, como customer_firstname y customer_lastname, x_forwarded_for.
  • Los comerciantes ya no pueden crear una nota de abono con una cantidad total decimal cuando Cant. decimal está desactivado en un nivel de producto o configuración global. Anteriormente, los comerciantes podían crear una nota de abono para la cantidad total decimal cuando no era aplicable.
  • Filtrar por fecha ahora funciona correctamente para facturas, envíos, notas de crédito, páginas de CMS y cuadrículas de bloques de CMS cuando la zona horaria establecida en las preferencias difiere de la establecida en un equipo local. Anteriormente, la fecha se analizaba incorrectamente y los resultados filtrados incluían datos fuera del intervalo de fechas establecido.
  • Adobe Commerce ya no cambia las direcciones de correo electrónico personalizadas asignadas a los pedidos cuando cambia la dirección de correo electrónico principal asignada al cliente en la página de edición de la cuenta de administrador. Anteriormente, al editar la dirección de correo electrónico principal de un cliente, la nueva dirección de correo electrónico se asignaba a cada pedido creado para ese cliente. GitHub-34397
  • Adobe Commerce ahora muestra registros de la tienda solicitada en la página de cuadrícula de notas de crédito en implementaciones que ejecutan PHP 7.4. Anteriormente, Adobe Commerce arrojaba el siguiente error después de crear un abono e intentar verlo: The store that was requested wasn't found. Verify the store and try again.
  • Adobe Commerce ahora muestra notas de abono en la página de cuadrícula de notas de abono para pedidos creados a partir de vistas de tiendas cuyo nombre va precedido de números. Anteriormente, Adobe Commerce mostraba el error: The store that was requested wasn't found. Verify the store and try again. Exception in /var/www/html/vendor/magento/module-store/Model/StoreRepository.php:75. GitHub-35122
  • Adobe Commerce ahora muestra los gastos de envío gratuitos (0) en los totales de la página de facturas de administración y tienda. Anteriormente, cuando el envío era cero para un pedido, Adobe Commerce no mostraba el importe de envío en total en el total de envío de la página de factura.
  • Adobe Commerce ahora muestra el estado de pedido correcto durante el cierre de compra cuando se utiliza el crédito de la tienda del cliente.
  • El increment_id en la columna sales_order se ha aumentado la tabla. Anteriormente, los módulos de terceros suponían que sales_order.increment_id tenía una longitud de 50 caracteres y solo se guardaron los primeros 32 caracteres de un increment_id. GitHub-34521

Métodos de pago

  • Los administradores ahora pueden realizar un pedido al administrador mediante el método de pago PayPal PayflowPro. Anteriormente, Adobe Commerce mostraba este error: No such entity with cartId = 0.
  • La página de revisión de pago del flujo de trabajo de pago ahora muestra el nombre correcto de la forma de pago cuando el pago se realiza con Venmo, PayPal más tarde o PayPal.
  • El cart query ya no devuelve todos los métodos de pago activos para pedidos gratuitos. GitHub-34036

Braintree

  • Los comerciantes ahora pueden enviar un reembolso parcial por los pedidos pagados con Apple Pay a través de un Braintree. Este era un problema conocido de Adobe Commerce 2.4.4.

PayPal

  • Adobe Commerce ahora muestra el nombre de cliente correcto en un pedido de invitado pagado con PayPal. Anteriormente, el nombre del cliente se mostraba como Invitado.
  • La resolución de la mutación createPaypalExpressToken se ha actualizado para utilizar correctamente el valor especificado en el campo de entrada use_paypal_credit. Anteriormente, intentaba utilizar un no válido paypal_credit field. GitHub-35180

Rendimiento

  • Se ha mejorado el rendimiento de la carga dinámica de bloques. Anteriormente, los segmentos de visitantes no se almacenaban en caché por sitio web, lo que provocaba consultas redundantes en la base de datos para los mismos datos.
  • Se ha mejorado la administración de la caché de Redis mediante la adición de TTL (fecha de caducidad) para las cachés de datos de productos asociados de los productos configurables. Anteriormente, estas cachés no se desalojaban debido a la falta de valores TTL si la directiva de desalojo de claves de Redis se configuraba como una directiva de desalojo volátil.
  • El nuevo Grid Filter Condition Type El atributo de dirección de cliente/cliente controla cómo se compara un filtro de atributos con los valores de atributos de la base de datos. Las opciones incluyen Partial Match, Prefix Match, y Full Match.
  • El indexador de texto completo Búsqueda en el catálogo se ha reubicado fuera del bucle de tiendas, lo que optimiza la reindexación. GitHub-33984
  • Se ha corregido un problema con array_merge en bucles. GitHub-33929

Precio

  • Los atributos de precio que no tienen ningún valor en el ámbito predeterminado (pero que se definen en el nivel de vista de tienda) ahora se indexan correctamente. Anteriormente, las expresiones SQL que recuperaban los valores de atributos de precio de la tabla EAV no tenían en cuenta el escenario en el que el valor no estaba definido en el ámbito predeterminado.
  • El precio que aparece en la página de detalles del producto es ahora el mismo que el precio indicado en el flujo de trabajo de cierre de compra para los precios de nivel que difieren según la cantidad seleccionada (por ejemplo, un producto con un precio diferente en función de la compra de dos artículos en lugar de cinco). Anteriormente, el precio de cierre de compra reflejaba el precio de la cantidad de producto más baja.

Promociones

  • El Horas utilizadas el valor de un descuento ya no se incrementa dos veces cuando un cliente invitado realiza un pedido con un descuento y, posteriormente, registra una cuenta.

ReCAPTCHA

  • El Enviar El botón de las páginas Iniciar sesión y Crear una cuenta ahora está inactivo hasta que ReCaptcha se haya cargado completamente.

Autorizaciones de devolución de mercancía (RMA)

  • El GET /V1/returnsAttributeMetadata ahora funciona correctamente cuando la variable rma_item El ID del conjunto de atributos predeterminado de la entidad difiere del ID de instalación predeterminado. Anteriormente, este extremo devolvía un resultado vacío si estos ID diferían.
  • El Usar valor predeterminado La casilla de verificación, que se utiliza para activar RMA en la página de edición del producto, ahora funciona según lo esperado para la tienda predeterminada. Anteriormente, la casilla de verificación se borraba inmediatamente después de guardar el producto.

Recompensas

  • Los puntos de recompensa ahora se pueden reembolsar cuando la funcionalidad de crédito de la tienda está desactivada.
  • Se ha mejorado el rendimiento del proceso de pago y envío al aplicar puntos de recompensa. Cuándo entity es nulo, por lo que la consulta de la base de datos no se ejecutará porque se está consultando el magento_reward_history La tabla no es obligatoria dadas las circunstancias.
  • Notas de crédito para pedidos de invitado ya no comprobar para customer_id, que omite la consulta de magento_reward_history tabla de la base de datos de puntos de recompensa. Este cambio ha mejorado el rendimiento.

Funciones

  • El Almacenar > Configuración > Servicios ahora muestra la información de la API web de Adobe Commerce como se espera cuando el acceso a recursos está establecido en Personalizado en la ficha Recursos del rol. GitHub-35506

Buscar search-heading

  • Al filtrar los productos por muestra de color en la navegación por capas, se muestra la imagen correcta para los productos después de la corrección.
  • Las consultas del Elasticsearch ahora funcionan según lo esperado cuando int está configurado como un backend en el que se pueden buscar type atributo. Anteriormente, Adobe Commerce arrojaba un Elasticsearch\Common\Exceptions\BadRequest400Exception excepción.
  • Ahora puede utilizar sinónimos de búsqueda junto con la variable Términos mínimos que deben cumplirse parámetro en consultas de Elasticsearch. Anteriormente, si este parámetro se especificaba en la configuración y se agregaban términos de búsqueda para palabras clave específicas, la búsqueda no arrojaba resultados.
  • Adobe Commerce ahora muestra un recuento preciso de sugerencias de resultados de búsqueda en la tienda en implementaciones en las que Sugerencias de búsqueda y la variable Mostrar recuento de resultados de cada sugerencia están activadas. Anteriormente, el recuento mostrado junto a las palabras clave era cero.
  • Los productos ordenados por atributos personalizados en la página Catálogo ahora se muestran en el orden esperado. Anteriormente, los productos se ordenaban por su ID de valor de opción de atributo, lo que refleja el orden en que se agregaron al atributo. GitHub-33810
  • El filtrado de productos por muestra de color en la navegación por capas ahora muestra las imágenes de producto correctas. Anteriormente, la navegación por capas PageCache La clave no incluía parámetros de filtro para productos configurables.
  • Se corrigieron errores de PHP en catalogsearch/advanced/result y catalogsearch/advanced/index páginas. Anteriormente, Adobe Commerce mostraba este error cuando se pasaba una matriz en cualquier cadena de búsqueda avanzada: Warning: trim() expects parameter 1 to be string, array given | magento/module-catalog-search. GitHub-33586

Envío

  • Adobe Commerce ya no genera un error al cargar las tarifas de envío de UPS si no se seleccionan los métodos de envío permitidos. Anteriormente, cuando un comprador introducía una dirección de envío en el flujo de trabajo de cierre de compra en estas condiciones, no se mostraban otros métodos de envío y Adobe Commerce mostraba un error en la tienda. GitHub-34411
  • Los precios de los productos virtuales ahora se excluyen en el cálculo de la tarifa de envío de la tabla. Anteriormente, los costes de envío de estos productos no se calculaban correctamente.GitHub-35185
  • Las tarifas de envío de tasa de tabla con precio cero ahora se muestran correctamente en el bloque Resumen de pedidos del flujo de trabajo de cierre de compra para los pedidos a los que se ha aplicado un cupón de descuento. Anteriormente, no se mostraba el método de envío.

Ensayo

  • Adobe Commerce ya no limpia la caché de página completa después de aplicar una actualización de ensayo para una regla de ventas en la que las páginas en caché permanecen sin cambios.
  • El panel de ensayo de contenido ya no muestra actualizaciones permanentes inactivas.
  • Al cambiar la fecha de finalización de una actualización de ensayo desde el panel de ensayo, ahora se aplican correctamente estos cambios a la actualización de ensayo y a sus entidades. (Se ha introducido una cola para procesar los cambios de las actualizaciones de ensayo).
  • Los comerciantes ahora pueden eliminar una fecha de finalización para una actualización programada o eliminar y volver a crear una actualización. Anteriormente, cuando se eliminaba una fecha de finalización, una entidad permanecía programada para ese momento. Adobe Commerce ahora elimina la actualización obsoleta para la reversión eliminada.
  • Las actualizaciones de programación activas para una página de CMS ahora están visibles como se espera en la sección Cambios programados de la página de CMS.
  • El custom_design_to el valor del atributo ahora se actualiza como se espera cuando se cambia una actualización programada. Anteriormente, dos actualizaciones de diseño de categorías independientes sin tiempo de finalización se trataban como una sola. Cuando se elimina una de las actualizaciones programadas mientras se ejecutaba la primera, la variable custom_design_from valor de tiempo se volvió mayor que custom_design_to valores de hora en la siguiente actualización programada.
  • Ahora, Forms se rellena con datos como se espera después de editar una actualización programada.
  • El vendor/magento/module-catalog-staging/Setup/Patch/Data/MigrateCatalogProducts.php parche de datos ya no da error cuando la base de datos incluye el producto con opciones personalizadas y la variable special_from_date se ha establecido el atributo.
  • Los cambios ahora se guardan durante una segunda actualización programada cuando la actualización en ejecución agrega los cambios. Anteriormente, los cambios no se guardaban y los comerciantes tenían que volver a introducirlos y guardarlos.
  • El registro de acciones masivas ahora muestra información sobre los errores to be moved actualizaciones programadas. Anteriormente, la información sobre estos errores estaba disponible en el cron.log solo archivo.
  • Los comerciantes ahora están restringidos a utilizar precios separados por comas al editar un precio de producto en una actualización programada independientemente de la configuración regional. Anteriormente, los precios que contenían comas en una actualización programada se dividían entre 1000 según la configuración regional.
  • Los problemas con el envío nacional de DHL en implementaciones que ejecutan PHP 8.1 se han resuelto requiriendo etiquetas obligatorias solo para envíos internacionales.

Impuestos

  • Ahora, el impuesto sobre el producto fijo (FPT) se muestra correctamente para los productos del carro de compras. Anteriormente, si varios productos del carro de compras tenían Impuesto fijo sobre productos (FPT) y Aplicar impuesto a FTP se activaron, todos los FTP se asignaron al último producto del carro de compras y se restablecieron para otros productos.
  • El total de impuestos fijos por producto (FPT) de la sección de resumen del pedido del flujo de trabajo de cierre de compra ahora se calcula correctamente.
  • Adobe Commerce ahora actualiza el precio de nivel de impuestos excluidos para un producto simple en la página del producto como se espera después de que la cantidad del producto simple haya cambiado.
  • Se ha añadido la validación a la página de configuración del almacén para verificar si el país seleccionado de la lista desplegable está en la lista de países de la UE. El Validar número de IVA ahora solo es visible para los países de la UE. Anteriormente, el botón era visible para todos los países, incluido el Reino Unido.
  • Los precios de nivel ahora se calculan correctamente cuando Mostrar precios de productos en el catálogo se establece en Exclusión de impuestos o Inclusión y exclusión de impuestos. Anteriormente, la página de detalles del producto mostraba precios de nivel con impuestos a pesar de la configuración.
  • Ahora los impuestos se aplican correctamente para pedidos a cualquier dirección válida en tiendas que utilicen la configuración regional portuguesa. GitHub-34271
  • El cart la consulta ya no incluye impuestos al devolver subtotal_with_discount_excluding_tax. GitHub-33905
  • Solicitudes de API web para datos de pedidos (GET /V1/orders/) ya no devuelve valores negativos para los totales de fila.

Prueba

  • Se corrigieron errores con Magento.GraphQl.CatalogGraphQl.ProductSearchTest.testSearchSuggestions cuando se ejecuta con la configuración del Elasticsearch de AWS.
  • El testCreateProductOnStoreLevel la prueba de integración ya no provoca una transacción anidada en la base de datos.

  • La siguiente excepción ya no se produce al ejecutar pruebas WebAPI para la función Enviar amigo cuando la imagen del producto no se ha establecido en PHP 8.1: exception main.ERROR: /var/www/html/lib/internal/Magento/Framework/DataObject.php:131 strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated. GitHub-34864

Traducciones y configuraciones regionales

  • Ahora puede utilizar la herramienta Traducir en línea para editar el mismo elemento más de una vez. Anteriormente, solo se incluía el primer cambio realizado con esta herramienta.
  • El selector de vista de tienda ya no bloquea el panel de traducción cuando edita el texto de administración o las etiquetas. Ahora puede editar estas funciones desde el panel de traducción y la interfaz muestra estos cambios al hacer clic en Enviar.
  • El formato de fecha y hora de administración para las configuraciones regionales en portugués y francés de Brasil ya es válido.
  • Se ha añadido un acento grave [`] al validador de nombres para que se pueda crear una cuenta de cliente para el nombre o los apellidos que incluyen este acento.
  • El texto de la Añadir al carro de compras El botón de la página Detalles del producto ahora permanece traducido al idioma especificado en la configuración regional asociada. Los archivos de traducción ahora se convierten en los archivos JavaScript correspondientes en función de las áreas, temáticas y configuraciones regionales cuando se usa translate_strategy=embedded. Anteriormente, el texto volvía a inglés después de agregar el producto al carro de compras.
  • Ahora, los sinónimos de búsqueda respetan el ámbito de almacenamiento asignado. Anteriormente, se podía buscar un sinónimo asignado a un almacén específico en cualquier otro almacén.
  • Se han resuelto los problemas con la configuración regional de Filipinas. GitHub-33996

IU

  • Nombres de productos largos en la Catálogo > Productos ahora, las cuadrículas se ajustan con palabras en lugar de mostrarse en una sola línea.
  • El intervalo mínimo y máximo de fecha de nacimiento ahora se guarda como una marca de tiempo correcta y, a continuación, se convierte de una marca de tiempo válida a un formato de fecha válido.
  • La indisponibilidad de magento.com ya no causa problemas de rendimiento durante el inicio de sesión del administrador. Se ha añadido un tiempo de espera en la solicitud para recuperar la notificación de la versión.
  • Los resultados de los filtros de orden de administración, cliente y cuadrícula de producto ahora persisten según lo esperado cuando se muestran en el explorador Chrome.
  • Ahora puede crear un cliente desde el Administrador cuando Magento_LoginAsCustomerAdminUi está habilitado y Vista de tienda para iniciar sesión en se establece en selección manual. Anteriormente, Adobe Commerce arrojaba este error: (Magento\Framework\Exception\LocalizedException): Unable to get Customer ID. GitHub-33096
  • La flecha Siguiente ahora está desactivada tal como se espera cuando un comprador llega a la última imagen en miniatura en la galería de imágenes del producto.
  • El Buscar por palabra clave el campo de entrada ahora tiene un aria-label en lugar de un marcador de posición en Catálogo > Product página.
  • El vínculo Política de privacidad del pie de página del administrador ahora se vincula a la nueva Política de privacidad del Adobe.
  • Los administradores ahora pueden acceder a las opciones del menú Administración cuando el agrupamiento de JavaScript está habilitado en el modo de producción. GitHub-35325
  • Los administradores ahora pueden establecer la fecha de caducidad del usuario actual por encima de 2038 y guardarlo correctamente. Anteriormente, el usuario cuya fecha de caducidad se había cambiado no podía volver a iniciar sesión después de cerrar la sesión.
  • Adobe Commerce ahora muestra un mensaje de error informativo cuando un administrador intenta guardar una dirección con demasiadas líneas de calle en el administrador Almacenar > Atributos > Dirección del cliente. El administrador ahora puede eliminar la información adicional de la dirección y guardarla correctamente. Anteriormente, Adobe Commerce confirmaba las líneas adicionales, pero no guardaba los datos.
  • Se ha actualizado la configuración de vista de lista de productos en la base de datos y el almacenamiento local. Las vistas de cuadrícula personalizadas ahora se guardan durante la recarga de la página y los cambios de vista.
  • Ahora puede cambiar entre las vistas de la tienda cuando las restricciones de sitios web estén habilitadas. Anteriormente, había problemas con el conmutador de visualización de tienda que impedían cambiar de vista de tienda.
  • El formulario de carga de iconos de favoritos ahora es compatible con .ico tipos de archivo. Anteriormente, cuando se intentaba cargar un archivo de favicon con este tipo de extensión en Admin, Adobe Commerce mostraba este error: Warning: imagecreatefromstring(): one parameter to a memory allocation multiplication is negative or zero, failing operation gracefully in /var/www/html/vendor/magento/module-media-storage/Model/File/Validator/Image.php on line 64. GitHub-34858
  • Se han corregido los problemas de visualización con el menú desplegable Seleccionar en la cuadrícula Administración. GitHub-35386

Reescrituras de URL

  • Las direcciones URL de un producto solo en una vista de tienda específica ahora se eliminan de url_rewrite y Admin después de cambiar el estado de visibilidad del código de atributo para la vista de tienda específica a No visible individualmente. Anteriormente, se eliminaban todas las direcciones URL del producto en url_rewrite tabla. GitHub-34937

Vídeo

  • Ahora puede utilizar los parámetros de URL de YouTube con Page Builder para agregar un nuevo vídeo. Anteriormente, estos parámetros se eliminaban automáticamente de la dirección URL.
  • Ahora puede configurar un vídeo de Vimeo para que se ejecute en segundo plano en un banner cuando el CSP está establecido en restrict mode. Anteriormente, Adobe Commerce arrojaba un error de JavaScript.

Marco de API web

  • Mutex se ha implementado para pedidos que evitan condiciones de carrera durante la actualización mediante solicitudes simultáneas. Anteriormente, las condiciones de carrera durante las llamadas simultáneas a la API de REST provocaban la sobrescritura de la información de estado de envío en la tabla Artículos de administración pedidos.
  • La herencia de funciones de imagen de producto ahora se conserva a menos que se defina explícitamente en la carga útil al actualizar un producto en una vista de tienda específica mediante la API de REST.
  • El esquema Swagger (/rest/schema) ahora utiliza ID de operación únicos.
  • Reglas de precios del carro de compras creadas mediante POST /V1/salesRules/ el punto final ahora conserva los valores de código de cupón existentes después de cambiar el estado de desactivado a habilitado. GitHub-35298
  • Reglas de precios del carro de compras creadas mediante POST /V1/salesRules/ el extremo ahora contiene valores válidos from_date y to_date valores. GitHub-35265
  • CartItemInterface ahora incluye customizable_options. GitHub-31180
  • Las solicitudes masivas de PUT y DELETE de la API de REST ahora funcionan según lo esperado cuando la variable Magento_ReCaptchaWebapiRest El módulo está activado. GitHub-35348
  • La API de REST en lote ahora funciona con el bySku para productos configurables. Anteriormente, devolvía un error 500.
  • El /V1/products/base-prices el punto de conexión ahora funciona según lo esperado con Modo de precio de catálogo: sitio web. GitHub-30132
  • Creación de un nuevo programa de precios especiales con POST /V1/products/special-price El punto de conexión ahora funciona según lo esperado. Anteriormente, el extremo devolvía este error: Future Update already exists in this time range. Set a different range and try again.

Lista de deseos

  • Al actualizar una cantidad de artículo desde la página de la lista de artículos deseados, ahora se actualiza la cantidad en la página de detalles del producto según lo esperado. Adobe Commerce ahora recoge el valor actualizado de la dirección URL del producto y rellena el qty campo de la página de detalles del producto de la propia lista de deseos.

Problemas conocidos

Problema: Las etiquetas de reglas de ventas escalonadas pueden no coincidir después de actualizar a Adobe Commerce 2.4.6 o posterior desde versiones anteriores a la 2.4.5. Solución: aplique ACSD-50625_2.4.5-P1.patch durante la actualización antes del paso Actualizar metadatos. Consulte salesRules etiqueta los problemas al actualizar desde versiones < 2.4.5 Artículo de la Base de conocimiento.

Pasos generales para resolver este problema:

  1. Descargue el parche necesario. Consulte la salesRules etiqueta los problemas al actualizar desde versiones < 2.4.5 Artículo de la Base de conocimiento.
  2. Siga los pasos de actualización descritos en la fase Administrar paquetes del proceso de actualización Realización de una actualización.
  3. Aplique este parche durante la actualización después de la fase Administrar paquetes y antes de la fase Actualizar metadatos. Consulte Cómo aplicar un parche del compositor proporcionado por el Adobe .
  4. Complete el proceso de actualización.

Problema: los usuarios administradores no pueden crear un pedido ni reordenar para los clientes desde Admin cuando el Braintree está habilitado. Cuando el usuario administrador haga clic en Pedido o Reordenar, Adobe Commerce no envía la solicitud y la variable system.log muestra este error: report.CRITICAL: Error: Call to a member function getMethodInstance() on null in /app/vendor/paypal/module-braintree-core/Block/Form.php:174. Solución: BUNDLE-3137-composer.patch ya está disponible. Consulte la El administrador no puede crear un pedido/repedido cuando el pago del Braintree está activado Artículo de la Base de conocimiento para discutir este problema y acceder al parche. Los comerciantes de la nube deben descargar los parches de la nube para Commerce v1.0.18. También se incluirá una corrección en Adobe Commerce 2.4.5-p1.

Problema: RabbitMQ los elementos de infraestructura (intercambios, colas) pueden no inicializarse después de una nueva instalación (no actualización) de Adobe Commerce 2.4.5. Esta configuración incorrecta de RabbitMQ puede provocar un error grave cuando se ejecutan operaciones asincrónicas o se genera un perfil de rendimiento. Las implementaciones en la nube no se ven afectadas. Solución: Los comerciantes que realicen una nueva instalación de Adobe Commerce 2.4.5 local deben funcionar bin/magento setup:upgrade --keep-generated después de usar bin/magento setup:config:set para configurar RabbitMQ o instale Adobe Commerce pasando RabbitMQ opciones de configuración para el setup:install comando. Consulte RabbitMQ.

Contribuciones comunitarias

Agradecemos a la comunidad Magento Open Source en general y quisiéramos agradecer sus aportaciones a esta versión.

El equipo de ingeniería de la comunidad Colaboradores Magento mantiene una lista de las personas y socios que más contribuyen por mes, trimestre y año. Desde esa página de colaboradores, puede seguir los vínculos a sus PR fusionadas en GitHub.

Contribuciones de socios

En el cuadro siguiente se destacan las contribuciones de los asociados. Esta tabla enumera el socio que contribuyó con la solicitud de extracción, el número de solicitud de extracción externa y el número de problema de GitHub asociado a ella (si está disponible).

Contribuciones de colaborador individual

La siguiente tabla identifica las contribuciones de los miembros de nuestra comunidad. Esta tabla enumera el miembro de la comunidad que contribuyó con la solicitud de extracción, el número de solicitud de extracción externa y el número de problema de GitHub asociado a ella (si está disponible).

Requisitos del sistema

Nuestra pila de tecnología está construida sobre PHP y MySQL. Para obtener más información, consulte Requisitos del sistema.

Instrucciones de instalación y actualización

Puede instalar Adobe Commerce 2.4.5 mediante Compositor.

recommendation-more-help
1d4eef6c-fef1-4e61-85eb-b58d7b9ac29f