Notas de la versión de Adobe Commerce 2.4.1
Adobe Commerce 2.4.1 introduce mejoras en el rendimiento y la seguridad, además de importantes adiciones al conjunto de funciones B2B. Las mejoras de seguridad incluyen la compatibilidad con el atributo SameSite
para las cookies y la adición de la protección CAPTCHA para los extremos de API relacionados con pagos y pedidos, así como la página de la tienda Colocar pedido. Las mejoras de B2B se centran en el proceso de aprobación de pedidos, los métodos de envío B2B, el registro ampliado de acciones de administración y la seguridad mejorada en la tienda.
Esta versión incluye todas las mejoras en la calidad principal incluidas en la versión 2.4.0, más de 150 nuevas correcciones en el código principal y más de 15 mejoras de seguridad. Incluye la resolución de casi 300 problemas de GitHub por parte de los miembros de nuestra comunidad. Estas contribuciones de la comunidad van desde una limpieza menor del código principal hasta mejoras significativas en GraphQL.
Todos los problemas conocidos identificados en 2.4.0 se han corregido en esta versión.
Aplicar AC-3022.patch
para seguir ofreciendo DHL como transportista
DHL ha introducido la versión de esquema 6.2 y dejará de utilizar la versión de esquema 6.0 en un futuro próximo. Adobe Commerce 2.4.4 y las versiones anteriores compatibles con la integración de DHL solo admiten la versión 6.0. Los comerciantes que implementen estas versiones deben aplicar AC-3022.patch
lo antes posible para seguir ofreciendo DHL como transportista. Consulte el artículo de la base de conocimiento Aplicar un parche para seguir ofreciendo DHL como transportista para obtener información sobre cómo descargar e instalar el parche.
Parche de seguridad disponible
Los comerciantes ahora pueden instalar correcciones de seguridad urgentes sin aplicar los cientos de correcciones y mejoras funcionales que ofrece una versión trimestral completa (por ejemplo, 2.4.0-p1). El parche 2.4.0.1 (Composer package 2.4.0-p1) es un parche de seguridad que proporciona correcciones para vulnerabilidades que se han identificado en nuestra versión trimestral anterior, 2.4.0. Todas las correcciones rápidas aplicadas a la versión 2.4.0 se incluyen en este parche de seguridad. (Una corrección rápida proporciona una corrección de una versión publicada que soluciona un problema o error específico).
Para obtener información general acerca de los parches de seguridad, consulte Presentación de la nueva versión de parches de seguridad. Para obtener instrucciones sobre cómo descargar y aplicar parches de seguridad (incluido el parche 2.3.5-p2), consulte Instalación rápida local. Los parches de seguridad solo incluyen correcciones de errores de seguridad, no las mejoras de seguridad adicionales que se incluyen en el parche completo.
Otra información de la versión
Aunque el código de estas funciones está empaquetado con versiones trimestrales , 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.
Características destacadas
Busque los siguientes aspectos destacados en esta versión.
Mejoras sustanciales de seguridad
Esta versión incluye más de 15 correcciones de seguridad y mejoras de seguridad de la plataforma. Todas las correcciones de seguridad se han trasladado a 2.4.0-p1 y 2.3.6.
Más de 15 mejoras de seguridad que ayudan a cerrar las vulnerabilidades de ejecución de código remoto (RCE) y ejecución de scripts en sitios múltiples (XSS)
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, entre las que se incluyen, entre otras, las siguientes: inclusión en la lista de permitidos de IP, autenticación de doble factor, uso de una VPN, uso de una ubicación única en lugar de /admin
y buena higiene de la contraseña. Consulte Actualizaciones de seguridad disponibles para el Magento para ver una discusión de estos problemas corregidos.
Mejoras de seguridad adicionales
Las mejoras de seguridad para esta versión incluyen:
-
Se ha agregado la protección CAPTCHA a las siguientes áreas de producto:
- Página de ubicación de la tienda de pedidos y puntos finales de REST y GraphQL
- Puntos finales de REST y GraphQL relacionados con el pago.
La protección CAPTCHA para estas páginas adicionales está desactivada de forma predeterminada. Puede habilitarse en el administrador del mismo modo que otras páginas cubiertas por CAPTCHA. Esta protección se ha añadido como mecanismo de fuerza antibruta para proteger las tiendas contra ataques de carding. Ver CAPTCHA.
-
Compatibilidad con el atributo SameSite para las cookies. Para admitir la aplicación Chrome de Google del nuevo sistema de clasificación de cookies, se han actualizado las clases de aplicación que administran cookies para admitir el atributo de cookie
SameSite
. Este atributo está establecido enLax
de manera predeterminada, pero se puede anular explícitamente. -
Herramienta de análisis de seguridad mejorada. El Adobe se ha asociado con Sanguine Security, líder en la prevención del robo digital, para integrar su base de datos de más de 8700 firmas de amenazas en el Escáner de seguridad. Esta asociación permitirá a los comerciantes obtener información en tiempo real sobre el estado de seguridad de su sitio a través de la detección proactiva de malware y la reducción de falsos positivos. Los comerciantes pueden registrarse en la herramienta visitando
https://account.magento.com/scanner
. Para obtener más información, consulta la publicación de blog Proteger tu tienda con la herramienta de análisis de seguridad mejorada.
Mejoras de infraestructura
Esta versión contiene mejoras en la calidad principal, que mejoran la calidad del marco de trabajo y estas áreas funcionales: Cuenta de cliente, Catálogo, CMS, OMS, Importación/Exportación, Promociones y direccionamiento, Carro y cierre de compra, B2B y Ensayo y vista previa.
- Integración de la herramienta de análisis en todo el sitio con el administrador. La herramienta proporciona información e instrumentación del sistema para el Adobe en instalaciones de infraestructura en la nube con supervisión de rendimiento en tiempo real, informes y recomendaciones de autoservicio las 24 horas del día, los 7 días de la semana. Los comerciantes pueden usar el nuevo recurso de rol de administrador para acceder de forma segura a sus páginas de detalles del cliente a través del administrador. Consulte las preguntas frecuentes para obtener una descripción general.
Mejoras de rendimiento
-
Reducción del tamaño de las transferencias de red entre Redis y el Magento. La configuración de la lista de complementos ahora se genera durante la ejecución del comando
bin/magento di:compile
. Esta información de configuración se escribe en carpetas de metadatos generadas en función del ámbito. Anteriormente, esta información se almacenaba en la caché. Las mejoras de rendimiento resultantes incluyen una disminución en el tamaño de la caché de red y el tiempo de ejecución para muchos escenarios. -
Rendimiento mejorado del consumidor de la cola de mensajes. Tres nuevos ajustes de configuración admiten una disminución del consumo de CPU en cola de consumo. Estos parámetros opcionales proporcionan un mayor control sobre los consumidores y ahorran recursos de servidor. Consulte Configurar colas de mensajes para obtener una descripción de los parámetros
maxIdleTime
,sleep
yonlySpawnWhenMessageAvailable
. -
Tiempo de ejecución mejorado para
bin/magento
comandos.
Integración de Adobe Stock
Esta versión incluye Adobe Stock Integration v2.1.0.
Galería de medios nuevos
La Galería de nuevos medios ahora está habilitada de forma predeterminada en el Administrador. Los comerciantes ahora pueden realizar estas acciones en las imágenes de la Galería multimedia:
-
Eliminar imágenes de forma masiva
-
Optimice el almacenamiento de medios identificando imágenes duplicadas e imágenes que no se usan en la tienda
-
Filtre imágenes por el área de tienda en la que se utilizan, incluido el contenido de productos y categorías y los bloques de CMS
-
Trabajo con metadatos de imagen
- Ver metadatos de las imágenes cargadas en la Galería multimedia
- Editar metadatos de imagen (título, descripción y palabras clave)
- Buscar imágenes según sus metadatos
Page Builder
Page Builder ahora es compatible con el modo de pantalla completa, que facilita la edición del contenido y proporciona una experiencia coherente al editar contenido en todo el administrador. Ver Workspace.
GraphQL
Esta versión añade cobertura de GraphQL para las siguientes funciones:
-
Críticas de productos. Los clientes y los huéspedes pueden escribir comentarios sobre los productos. Los clientes pueden recuperar sus historiales de críticas de productos. Consulte Crear una revisión de producto y productReviewRatingsMetadata query para obtener información sobre cómo recuperar información sobre la infraestructura de revisiones.
-
Opciones de regalo. Todos los clientes e invitados pueden agregar un mensaje de regalo a su pedido. En las instalaciones de Adobe Commerce, también puede agregar envoltorios para regalos, recibos de regalos y tarjetas impresas al pedido. Ver
setGiftOptionsOnCart
mutación yupdateCartItems
mutación -
Puntos de recompensa. Los clientes pueden aplicar o eliminar puntos de recompensa a sus carros de compras. También pueden ver el historial de puntos de recompensa. Consulte
applyRewardPointsToCart
yremoveRewardPointsFromCart
para ver una discusión sobre la administración de puntos de recompensa dentro de un carro de compras. -
Historial de pedidos. Todos los clientes pueden ver los detalles de sus historiales de pedidos, incluidas las facturas, los envíos y los reembolsos.
-
Agregar al carro. La mutación
addProductsToCart
le permite agregar cualquier tipo de producto al carro de compras activo. Se recomienda usar esta mutación en lugar de mutaciones de un solo propósito comoaddSimpleProductsToCart
. Corrección enviada por Yaroslav Rogoza en la solicitud de extracción 27914. GitHub-28524 -
Métodos de pago almacenados. Los clientes que iniciaron sesión ahora pueden almacenar los datos de pago (incluida la tarjeta de crédito del Braintree y el Braintree con PayPal) en Mi cuenta.
-
Compatibilidad con listas de deseos en el Magento Open Source. Puede agregar elementos a, actualizar elementos en y quitar elementos de una lista de artículos deseados.
-
Se mejoró la administración de cuentas de clientes. Hemos agregado las mutaciones
createCustomerV2
yupdateCustomerV2
para administrar las cuentas de cliente. Estas nuevas mutaciones requieren objetos de entrada diferentes a las mutacionescreateCustomer
yupdateCustomer
. Para cambiar la dirección de correo electrónico de un cliente, use la nueva mutaciónupdateCustomerEmail
. -
Soporte para Payflow Pro Vault. Se ha agregado compatibilidad con GraphQL Vault para el método de pago Payflow Pro Vault. Corrección enviada por Oleh Usik en la solicitud de extracción 28821. GitHub-28520
-
Se ha actualizado la consulta
storeConfig
de GraphQL para incluir nuevas opciones de configuración de cliente. Corrección enviada por Oleh Usik en la solicitud de extracción 27876. GitHub-28521 -
Se agregó la mutación
requestPasswordResetEmail
, que almacena en déclencheur el correo electrónico de restablecimiento de contraseña para la dirección de correo electrónico proporcionada. Corrección enviada por Oleh Usik en la solicitud de extracción 27876. GitHub-28521 -
Klarna GraphQL. Se agregaron o actualizaron temas sobre Klarna GraphQL en método de pago de Klarna y
createKlarnaPaymentsSession
Consulte la Guía para desarrolladores de GraphQL para obtener más información sobre estas mejoras.
PWA Studio
La versión 8.0.0 de PWA Studio presenta nuevas funciones y mejoras:
-
Actualizaciones a la guía de estilo de Venia que se aplican a tokens de diseño, tipografía, colores, componentes principales y diseños de página
-
Mejoras en la experiencia del minicarrito de Venia
-
Compatibilidad inicial con varias configuraciones regionales y contenido localizado en la tienda Venia
-
Numerosas mejoras en la experiencia MyAccount de la tienda Venia
Consulte compatibilidad para obtener una lista de versiones de PWA Studio y sus versiones compatibles. Para obtener información acerca de mejoras y correcciones de errores, consulte Versiones de PWA Studio.
B2B
La versión 2.4.1 presenta B2B v1.3.0. Esta versión incluye mejoras en las aprobaciones de pedidos, los métodos de envío, el carro de compras y el registro de acciones del administrador.
Mejoras en las aprobaciones de pedidos
Las aprobaciones de pedidos B2B se han mejorado para mejorar la capacidad de uso y permitir acciones masivas en pedidos de compra.
Las mejoras para la aprobación y el rechazo de pedidos son las siguientes:
-
Nueva página de reglas de vista para usuarios sin privilegios de edición. Los compradores de B2B ahora pueden ver las reglas que se aplican a su compañía en la nueva página Ver regla cuando no tienen permiso para editarlas.
-
Contar icono de alerta en la ficha Requiere mi aprobación. La pestaña Requiere mi aprobación de la vista Mis pedidos de compra ahora muestra un contador que indica el número de acciones de aprobación pendientes.
-
Aprobaciones y rechazos de pedidos masivos. Los administradores de B2B y de la compañía ahora pueden realizar rechazos y aprobaciones masivos de pedidos de compra. Estos cambios permiten a los aprobadores aprobar o rechazar varios pedidos de compra en una sola acción.
-
Los comerciantes ahora pueden buscar en los campos Se aplica a y Requiere aprobación de de la vista Mis pedidos de compra y puede seleccionar varios roles de usuario durante la creación de la regla.
-
Se proporcionan ejemplos de cómo configurar las reglas de aprobación de pedidos en la página Configuración de reglas.
Mejoras en los métodos de envío B2B
Los comerciantes B2B ahora pueden controlar los métodos de envío que se ofrecen a cada Compañía. Los comerciantes pueden configurar lo siguiente desde el administrador:
- Un conjunto específico de métodos de envío para cuentas de compañía B2B
- El uso de todos los métodos de envío específicos de B2B para cada cuenta de compañía
- Una lista específica de métodos de envío B2B para cada cuenta de compañía.
Mejoras del carro de compras
-
Los comerciantes ahora pueden permitir a los usuarios borrar el contenido de su carro de compras en una sola acción y pueden configurar esta capacidad de forma independiente en cada sitio web.
-
Los compradores de B2B ahora pueden añadir artículos individuales o todo el contenido de su carro de compras directamente a una lista de solicitudes.
Nuevas funciones de administración
- Los comerciantes B2B pueden crear pedidos desde el administrador en nombre de los clientes utilizando Pago a cuenta como método de pago.
- Los comerciantes ahora pueden ver directamente todas las ofertas asociadas con un usuario desde la página de detalles del cliente.
- Los comerciantes ahora pueden filtrar la cuadrícula Clientes ahora en línea por Compañía.
- Los administradores ahora pueden filtrar clientes en Admin por representante de ventas
Ver Características B2B.
Seguridad mejorada en la tienda
Para reducir la creación de cuentas fraudulentas o de correo no deseado, los comerciantes ahora pueden habilitar Google reCAPTCHA en el formulario de nueva solicitud de la empresa de la tienda. Ver reCAPTCHA.
Registro ampliado de acciones de administración
Las acciones de administrador realizadas en los módulos de Compañía ahora se registran en el Registro de acciones de administración. Las acciones se registran desde todos los módulos relevantes de la compañía: Company
, NegotiableQuote
, CompanyCredit
, SharedCatalog
.
Esta versión también incluye varias correcciones de errores. Ver Notas de la versión B2B.
Marco de prueba funcional (MFTF)
MFTF 3.1.0 ya está disponible. Consulte Registro de cambios del marco de prueba funcional.
Extensiones desarrolladas por el proveedor
Consulte los siguientes artículos para obtener actualizaciones sobre las funciones y los cambios de esta versión:
Problemas solucionados
Hemos corregido cientos de problemas en el código principal 2.4.1.
Instalación, actualización e implementación
- La instalación con extensiones de terceros que dependen de las API para el módulo Almacenar en comandos CLI ya no falla. Anteriormente, la aplicación mostraba este mensaje de error:
The default website isn't defined. Set the website and try again
. Este era un problema conocido en 2.4.0.
bin/magento setup:di:compile
ya no genera un error irrecuperable. Anteriormente, la aplicación generaba un error la primera vez que se ejecutaba este comando, pero la segunda ejecución resultaba en una compilación correcta.
- La actualización ya no falla cuando se declara un complemento en
Magento\Framework\Encryption\Encryptor
.
- La aplicación ahora muestra un mensaje de error informativo cuando algunos temas no se implementan después de ejecutar
bin/magento setup:static-content:deploy
. Anteriormente, cuando la implementación se completaba correctamente pero no se implementaban todos los paquetes, la aplicación no mostraba un error. Cuando este comando se ejecuta con un procesamiento paralelo habilitado y cada tema requiere más tiempo para implementarse que el tiempo de ejecución máximo especificado, este comando puede finalizar correctamente, aunque los temas no se implementan.
- La casilla de verificación Usar valor predeterminado para los pagos de Klarna (Tiendas > Configuración > Ventas > Métodos de pago > Klarna) ahora permanece activada como se espera cuando cambia el ámbito del sitio web.
- La ejecución de
/bin/magento config:show vendor_module/general/value
ahora devuelve0
o una cadena vacía como se esperaba. Anteriormente, devolvióConfiguration for path: "vendor_module/general/value" doesn't exist
. Corrección enviada por Vadim Malesh en la solicitud de extracción 28549. GitHub-23290
- La actualización ya no provoca el fallo repentino del clúster de Galera. Anteriormente, el clúster de Galera se cerraba abruptamente tras la reindexación inmediatamente después de la actualización. Durante una actualización, las tablas de índice se modifican y el motor se cambia de
MEMORY
aInnoDB
. En este punto, el contenido de estas tablas se desincronizó entre los nodos del clúster de Galera. GitHub-25334
- La desactivación del módulo PageBuilder ya no afecta a la representación de la página del producto. Anteriormente, los diseños personalizados de la página de producto desaparecían cuando se deshabilitaba el módulo y la aplicación mostraba una página en blanco.
- Ahora puede usar
bin/magento sampledata:deploy
para implementar datos de ejemplo como se espera después de instalar Adobe Commerce usando Composer. Anteriormente, la aplicación arrojó este error:Git installations must deploy sample data from GitHub; see https://devdocs.magento.com/guides/v2.3/install-gde/install/sample-data-after-clone.html for more information
. Corrección enviada por Andrii Beziazychnyi en la solicitud de extracción 27481. GitHub-19481
- El rendimiento de la tienda ha mejorado al eliminar la carga innecesaria del componente
Datepicker
. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27860. GitHub-28823
- La ejecución de
bin/magento setup:upgrade
ahora se completa según lo esperado. Anteriormente, la aplicación mostraba contenido de matriz impreso para las memorias caché. Corrección enviada por Sathish Subramanian en la solicitud de extracción 27567. GitHub-27091
bin/magento setup:static-content:deploy --language=all
ahora implementa todos los idiomas que se usan en la tienda y todos los idiomas configurados por los usuarios administradores cuando no se establece ningún parámetro de idioma. (en_US
siempre se implementa de manera predeterminada). Corrección enviada por Anton Evers en la solicitud de extracción 28922. GitHub-29218
- La aplicación ya no muestra el menú Copia de seguridad cuando la función Copia de seguridad está desactivada. Corrección enviada por Eden Duong en la solicitud de extracción 29222. GitHub-29280
- La inicialización del asistente de imagen de catálogo ahora utiliza el modelo de producto en lugar de
DataObject
. Corrección enviada por jmonteros422 en la solicitud de extracción 29435. GitHub-1711
- Los usuarios administradores ahora pueden guardar un campo vacío de Duración del token del cliente (horas) (Administradores Tiendas > Configuraciones > Servicios > OAuth > Caducidad del token de acceso). GitHub-29502
- La configuración Crear redireccionamiento permanente para la URL antigua ahora está deshabilitada de manera predeterminada para las categorías. Corrección enviada por Vadim Malesh en la solicitud de extracción 28752. GitHub-24922
AdminGWS
- La aplicación ya no muestra el botón Agregar atributo (Almacenes > Atributos o el botón Agregar conjunto de atributos (Almacenes > Atributos > Cliente) cuando el administrador que ha iniciado sesión carece de los permisos adecuados para crear estas entidades. Anteriormente, la aplicación arrojaba un error 404 cuando un administrador de sitio web que no tenía los permisos adecuados intentaba crear un Conjunto de atributos o un atributo Cliente.
- La aplicación ya no genera un error cuando un administrador con funciones restringidas para sitios web específicos intenta crear una subcategoría a partir del administrador.
Integración de Adobe Stock
- Las imágenes de la cuadrícula de imágenes de Adobe Stock ahora se alinean correctamente después de borrar los filtros. Corrección enviada por Nazar Klovanych en la solicitud de extracción 28366. GitHub-824, GitHub-972
- La sección Utilizada en de la página de detalles de imagen de la galería de Adobe Stock ahora identifica con precisión si la imagen está asociada a un producto. Corrección enviada por Nazar Klovanych en la solicitud de extracción 28798. GitHub-1474
\Magento\MediaGallery\Model\ResourceModel\Keyword\SaveAssetsKeywords::execute
ahora elimina los vínculos a las palabras clave que no se especifican en los parámetros e inserta las nuevas al eliminar etiquetas de palabra clave al editar detalles de imagen. Corrección enviada por jmonteros422 en la solicitud de extracción 29207. GitHub-1391
- El mensaje
Login failed
que muestra la aplicación cuando un comerciante hace clic en Licencia para una imagen de Adobe Stock guardada anteriormente sin licencia ya no contiene etiquetas de HTML. Corrección enviada por Yolouiese en la solicitud de extracción 29398. GitHub-1684
- Al hacer clic en los vínculos en la sección Utilizado en de la página Detalles de la imagen, ahora se muestra una cuadrícula que muestra todas las entidades filtradas por la imagen. El filtro de recursos también está configurado y se muestra correctamente. Anteriormente, la aplicación no mostraba el título del recurso en la sección Filtros aplicados. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29367. GitHub-1694
- La aplicación ya no muestra la sección Used in de la página de detalles de la imagen cuando la imagen no está en uso. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29367. GitHub-1699
- Se han corregido problemas de visualización al añadir una nueva etiqueta de imagen que supera el número máximo de caracteres. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29367. GitHub-1702
- Assets ahora se puede comprobar según lo esperado usando el filtro de recursos en la sección Detalles de la imagen Utilizada en. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29367. GitHub-1704
- La información acerca de las imágenes que utilizan diferentes entidades (por ejemplo,
page
ycategory
) ahora aparece corregida en la página Detalles de la imagen. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29367. GitHub-1747
- Ahora puede usar el nuevo componente
UrlFilterApplier
para aplicar filtros a las cuadrículas del productocms_page
ycms_block
mediante el parámetro GET URL. Corrección enviada por Gabriel da Gama en la solicitud de extracción 28932. GitHub-1501
- Al hacer clic en los vínculos de la sección Utilizada en para una imagen de la Galería multimedia, ahora se abre la cuadrícula de entidades que la imagen filtra según lo esperado. Anteriormente, el título de la imagen no se mostraba en la sección de filtros aplicados de la cuadrícula. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29429. GitHub-1694
- La aplicación ahora agrega etiquetas correctamente cuando edita varias imágenes sucesivamente en la Galería multimedia. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29429. GitHub-1755
- La aplicación ahora elimina las etiquetas de las imágenes de Adobe Stock después de que un comerciante las elimine y guarde los detalles de la imagen. Anteriormente, las etiquetas no se eliminaban hasta que se actualizaba la página. Corrección enviada por Honeymay Louiese Ignacio en la solicitud de extracción 29400. GitHub-1703
Amazon Pay
-
Amazon Pay ahora comprueba si un usuario ya ha iniciado sesión antes de procesar las opciones de pago.
-
Se han resuelto los problemas con la autenticación de varios factores y los carros de compras abandonados.
-
Amazon Pay ahora rellena correctamente
store name
en correos electrónicos y otras ubicaciones mostradas. Si el campo Store Name de la configuración de Amazon Pay está vacío, la extensión recupera el nombre predeterminado de la tienda (es decir, el nombre que le des a tu tienda en el Admin). -
Se han abordado los problemas de localización y traducción para los escenarios de rechazo. El texto mostrado ya no está siempre en inglés.
Analytics
- Los administradores con los permisos correctos ahora pueden acceder a los informes avanzados y a los informes de segmentos.
- Adobe Commerce genera correctamente archivos de datos de informes avanzados y los envía según lo esperado a Oracle Inventory en implementaciones con bases de datos divididas. Anteriormente, la aplicación no generaba ni enviaba el archivo
quotes.csv
a Inventario y, como resultado, Inventario no generaba los informes esperados.
Braintree
-
El Braintree ahora envía la cantidad correcta a PayPal cuando se aplica un código de promoción en la página de pago.
-
Apple Pay funciona ahora según lo esperado cuando los Términos y condiciones están activados en la página de pago.
-
Los errores del explorador ya no se producen durante la desprotección en dispositivos de escritorio cuando Venmo está habilitado desde el Administrador.
-
El cierre de compra ya no falla cuando el comprador introduce caracteres especiales en los campos Name del flujo de trabajo de cierre de compra. Anteriormente, la autenticación fallaba porque la API de Braintree 3DS no admitía caracteres que no fueran ASCII.
-
La aplicación ahora muestra el nombre de destinatario correcto en la sección de envío del flujo de trabajo de pago al realizar un pedido con PayPal.
-
La aplicación actualiza ahora la página de revisión de pedidos como se espera cuando un comprador cambia el método de envío más de una vez durante el cierre de compra.
Paquete de productos
- La aplicación ya no genera una excepción cuando intenta crear un producto en una implementación en la que está instalado Inventory pero el módulo
Magento_InventoryBundleProduct
está deshabilitado.
- La aplicación ahora calcula correctamente los reembolsos sin conexión para pedidos que contienen productos agrupados.
- El minicarrito ahora muestra los precios correctos para los productos agrupados cuando los precios de nivel también se asignan para productos simples. GitHub-22807
- Los comerciantes ahora pueden crear una nota de crédito para los productos agrupados que proporcione un reembolso sin requerir la devolución del producto. Anteriormente, la aplicación arrojaba un error. Corrección enviada por Dzung Nguyen en la solicitud de extracción 27455. GitHub-23440
- La aplicación ya no muestra mensajes de validación redundantes cuando un comprador agrega un paquete de producto al carro de compras sin seleccionar una opción requerida. Corrección enviada por Dzung Nguyen en la solicitud de extracción 27455. GitHub-23440
- GraphQL ahora admite la realización de un pedido de un producto agrupado con el tipo de opción
radio
ydropdown
con varias opciones. Anteriormente, la aplicación mostraba un mensaje sobre la entrada no válida paraBundleItem.type: radio/dropdown
. Corrección enviada por Michał Derlatka en la solicitud de extracción 29256. GitHub-26110
Caché
- El almacenamiento de caché local ahora se conserva durante el período de tiempo establecido en Almacenes > Configuración > General > Web > Configuración de cookies predeterminada. Anteriormente, la fecha de caducidad de las cookies estaba codificada en un día, lo que la desincronizaba con esta configuración. Como resultado, los mensajes de bienvenida no conservaban la información del cliente que devolvía durante el tiempo esperado.
- Se ha reducido el número de llamadas a la caché de página
config
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 28992. GitHub-29159
- Varnish ya no genera un error
Connection reset by peer
cuando se reindexa un catálogo grande según lo programado. Corrección enviada por Matthew O'Loughlin en la solicitud de extracción 26256. GitHub-26255
- La caché de la página completa ya no se borra para los productos no relacionados cuando se edita un producto en el Administrador. GitHub-25670
Carro y cierre de compra
- Las consultas SQL directas se han reemplazado por el proveedor de datos, que ha mejorado el rendimiento de desprotección. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 29376. GitHub-29453
- Ahora, las listas Productos en la comparación y Productos comparados recientemente funcionan según lo esperado. Anteriormente, cuando se expandía la lista de comparación, la aplicación no mostraba productos, aunque en la sección se indicaba que la lista contenía productos.
- El botón Eliminar de la sección Agregar al carro de compras por SKU de la página Administrar carro de compras de un cliente ahora funciona como se espera cuando se seleccionan varias filas.
- La aplicación ya no genera un error cuando intenta solicitar un producto por SKU cuando los dígitos introducidos coinciden con un SKU válido, pero el caso de estos dígitos difiere. Anteriormente, al escribir un SKU en Mi cuenta > Pedido por SKU que no coincidía exactamente con un SKU válido, la aplicación arrojó un error.
- Ahora, la dirección de envío de un cliente se selecciona de forma predeterminada al cerrar la compra, cuando la dirección se encuentra en el país identificado en la lista Permitir países y esa lista incluye únicamente ese país. Anteriormente, la aplicación no seleccionaba la dirección como predeterminada y mostraba este mensaje de error:
Please specify a regionId in shipping address
.
- Los comerciantes ahora pueden habilitar Aplicar al importe de envío en la pestaña Acción de Marketing > Reglas de precio del carro de compras > Agregar nueva regla cuando se aplique Descuento de cantidad fija para todo el carro de compras. GitHub-24422
- La aplicación ya no genera una excepción cuando un comprador intenta anular la configuración de la cookie de persistencia después de comenzar la compra y luego navegar a la página principal de la tienda. Anteriormente, cuando el comprador hacía clic en ¿No es usted? vínculo en la página principal, la aplicación produjo esta excepción:
The shipping address is missing. Set the address and try again
. GitHub-24218
- La aplicación ahora muestra un mensaje de éxito del complemento al carro de compras cuando un cliente agrega un producto agotado al carro de compras. Anteriormente, el producto se agregaba, pero la aplicación no mostraba un mensaje de éxito.
- Los atributos de dirección personalizados ahora se incluyen según lo esperado en el formulario que se muestra para el paso de pago en el flujo de trabajo de cierre de compra.
- El cuadro de entrada Estado/Provincia/Región ahora está habilitado según lo esperado en Mi cuenta > Libreta de direcciones > Agregar nueva dirección.
- Los descuentos ahora se aplican según lo esperado a los gastos de envío cuando Aplicar al importe de envío está habilitado. Corrección enviada por Andrii Kalinich en la solicitud de extracción 28839. GitHub-26723
- El código que admite el cierre del minicarrito se ha refactorizado para quitar la función
closeSidebar
. Se ha agregado el enlace de clic correspondiente al elemento[data-action="close"]
. Corrección enviada por lumnn en la solicitud de extracción 28906. GitHub-29161
- El nuevo botón Mostrar "Borrar carro de compras" en la página del carro de compras proporciona control para mostrar el botón Borrar carro en la página de vista del carro de compras. Esta configuración está deshabilitada de forma predeterminada. Corrección enviada por Pavlo Sydorenko en la solicitud de extracción 27917. GitHub-28705
- La validación se ha agregado al campo de teléfono del flujo de trabajo de cierre de compra. Corrección enviada por Oleh Usik en la solicitud de extracción 27537. GitHub-28800
- La desprotección de invitados ahora está deshabilitada como se espera cuando un carro de compras contiene productos descargables cuando la configuración Compartible y Deshabilitar la desprotección de invitados si el carro de compras contiene elementos descargables está deshabilitada. Corrección enviada por Rani Priya en la solicitud de extracción 23972. GitHub-23971
- El mensaje de éxito que muestra la aplicación cuando un comprador agrega un producto al carro de compras desde la barra lateral de la cuenta del cliente ahora contiene un vínculo al carro de compras del comprador. Corrección enviada por Ajith en la solicitud de extracción 27977. GitHub-29097
- La aplicación ahora selecciona un valor vacío de forma predeterminada para el menú desplegable de opciones de prefijo del flujo de trabajo de cierre de compra. Corrección enviada por Vadim Malesh en la solicitud de extracción 28238. GitHub-18823
- El mensaje emergente que la aplicación muestra al eliminar varios elementos de un carro de compras ahora describe con precisión la cantidad y el tipo de entidades que ha seleccionado para la eliminación. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29490. GitHub-1749
- La aplicación ahora muestra un formulario de registro de cliente cuando un usuario invitado completa el cierre de compra.
- Los campos de atributos de dirección de cliente personalizados ahora se muestran según lo esperado en el flujo de trabajo de cierre de compra de la tienda.
- La aplicación ahora recupera el grupo de clientes actual para una oferta activa durante el cierre de compra. Anteriormente, la aplicación utilizaba el grupo de clientes activo cuando el producto se agregaba al carro de compras por primera vez y, si ese grupo de clientes se eliminaba antes del cierre de compra, la aplicación generaba un error. Corrección enviada por Konstantin en la solicitud de extracción 28902. GitHub-29327
Catálogo
- La aplicación ahora elimina los productos desactivados del carro de compras antes del cierre de compra. Anteriormente, cuando un comprador agregaba un producto al carro que estaba deshabilitado antes de que se completara el cierre de compra, la aplicación eliminaba el producto deshabilitado del carro, pero el producto permanecía en la cotización y el comprador no podía cerrar la compra. GitHub-26680
- La aplicación clasifica ahora los productos más vendidos según lo esperado. Anteriormente, tanto el recuento de productos como la paginación de los resultados de ordenación eran incorrectos. GitHub-25955
- Los compradores ahora pueden abrir la página de detalles de un producto haciendo clic en el nombre del producto en la barra lateral de comparación de productos. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 27451. GitHub-21101
- Los valores de
children_count
ahora permanecen positivos cuando un administrador elimina categorías. Anteriormente, cuando un administrador eliminaba categorías, el valor dechildren_count
para las categorías restantes era negativo. Corrección enviada por Vitaliy Prokopov en la solicitud de extracción 28044. GitHub-27969
- La aplicación ahora usa la opción predeterminada (Configuración > Web > Diseños predeterminados > Diseño de producto predeterminado) que seleccionó para el atributo
page_layout
al crear un nuevo producto. Anteriormente, el valor predeterminado seleccionado no se aplicaba.
- Ahora puede realizar correctamente acciones masivas en stock de productos de inventario. Anteriormente, cuando se intentaba realizar una acción masiva en el inventario de existencias de productos, la aplicación mostraba una página en blanco. Si realizó esta acción con la aplicación en modo de desarrollador, la aplicación generó este error:
Notice: Undefined offset: 32000 in /Users/kodithuw/sites/m23inventory/inventory/InventoryCatalogAdminUi/view/adminhtml/templates/catalog/product/edit/action/inventory.phtml on line 24
- El recuento total de registros que se muestra al hacer clic en Agregar productos en la ficha Productos al agregar productos a una categoría de catálogo ya no cambia según el criterio de ordenación de productos.
- La consulta
{products(filter: {sku: {eq: "some sku"}}) {…}
ahora devuelve valores que se han convertido a la moneda esperada. Anteriormente,price_tiers.final_price.value
mostraba precios especiales en la moneda base. Corrección enviada por Petkovski Marjan en la solicitud de extracción 28890. GitHub-26121
Regla de catálogo
- La aplicación ya no genera un error grave al guardar una regla de catálogo con las siguientes condiciones:
If ALL of these conditions are FALSE:, If ALL of these conditions are TRUE:, Attribute set is default
Cleanup
- Se ha corregido la desalineación de la casilla de verificación de cuadrícula Administrador de pedidos de ventas. Corrección enviada por Tu Nguyen en la solicitud de extracción 27642. GitHub-27633
- Se ha corregido un error ortográfico en el captador de ID de dirección de envío en el controlador de guardado de dirección de pedido de ventas. Corrección enviada por Konstantin en la solicitud de extracción 28810. GitHub-28982
- Se corrigió el nombre de método
getRegionNameExpresion
engetRegionNameExpression
. Corrección enviada por Pierre Grimaud en la solicitud de extracción 28832. GitHub-28829
- Se ha quitado un método redundante
init
deapp/code/Magento/AdvancedPricingImportExport/Model/Import/AdvancedPricing/Validator/Website.php
yapp/code/Magento/AdvancedPricingImportExport/Model/Import/AdvancedPricing/Validator/TierPriceType.php
. Corrección enviada por Oleh Usik en la solicitud de extracción 28650. GitHub-29009
localStorage
polyfill se ha movido debase
afrontend
. Corrección enviada por Ihor Sviziev en la solicitud de extracción 28749. GitHub-28900
- Se ha actualizado el logotipo de Adobe Commerce y se han eliminado los espacios superfluos del archivo LÉAME. Corrección enviada por Rafael Corr̻êa Gomes en la solicitud de extracción 28891. GitHub-29056
- La clase
overflowed
innecesaria se ha eliminado del widget de barra lateral del minicarrito. Corrección enviada por lumnn en la solicitud de extracción 28963. GitHub-29160
- Se ha corregido un selector CSS incorrecto en la página Envío. Corrección enviada por Tu Nguyen en la solicitud de extracción 28639. GitHub-29261
- El archivo
lib/internal/Magento/Framework/App/Request/Http.php
se ha simplificado optimizando la lógica, eliminando las asignaciones de variables redundantes y el uso excesivo de los retornos dentro de una función. Corrección enviada por Chris Snedaker en la solicitud de extracción 28608. GitHub-29381
- El comando
bin/magento module:status
ahora acepta varios nombres de módulo como argumentos. Corrección enviada por Chandru Rajendran en la solicitud de extracción 28250. GitHub-29344
- Se corrigió un error tipográfico en la descripción de clase de
\Magento\Downloadable\Block\Sales\Order\Email\Items\Downloadable
. Corrección enviada por Benjamin Rosenberger en la solicitud de extracción 29451. GitHub-29470
- La clase
TierPriceManagement
se ha refactorizado para quitar el código redundante. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 29202. GitHub-29477
autoload.php
se ha refactorizado para mejorar la legibilidad y la velocidad de retorno. Corrección enviada por Vitaliy Ryaboy en la solicitud de extracción 28923. GitHub-29527
Contenido de CMS
- La pestaña Jerarquía de una vista de tienda predeterminada seleccionada ahora muestra la página principal seleccionada según lo esperado.
- La aplicación ya no genera un error durante la creación de la vista de tienda cuando la nueva vista de tienda contiene una página de CMS con la misma clave de URL que una página de una vista de tienda diferente. Corrección enviada por Vadim Malesh en la solicitud de extracción 28421. GitHub-28357
- La aplicación ahora genera un error cuando un comerciante crea una página de CMS con la misma URL que la página de estructura de la compañía. Anteriormente, la aplicación mostraba la página de CMS en lugar de la página de Estructura de la compañía.
Productos configurables
- Se han corregido los problemas de paginación con la lista Variaciones actuales de edición de productos configurables.
- La aplicación ya no actualiza el cuadro de precio Productos relacionados cada vez que un comprador selecciona opciones para un producto configurable. Anteriormente, la aplicación actualizaba la caja de precios cada vez que un comprador seleccionaba una opción para un producto configurable.
- La aplicación ahora muestra el precio correcto para los productos configurables con opciones personalizables en la página Administrador Crear Pedido. Como se espera, el precio mostrado es una suma del precio del producto secundario y del precio de la opción personalizada. Anteriormente, la aplicación solo mostraba el precio de opción personalizado. GitHub-25766
- El resumen del pedido ahora muestra el importe de descuento correcto cuando se ha aplicado una regla de precio del carro de compras. Anteriormente, la regla no redondeaba correctamente los importes al calcular los descuentos de envío.
- Las cuentas de usuario administrador creadas a partir de una cuenta de administrador con un ámbito restringido ahora pueden crear un producto configurable con atributos según lo esperado. Anteriormente, la aplicación arrojó este error:
Notice: Undefined index: value_index in 23develop/app/code/Magento/ConfigurableProduct/Helper/Product/Options/Factory.php on line 101
.
- La aplicación ya no genera un error de validación cuando se utiliza el POST
/V1/products
en un producto configurable con un valorint
de 0. Anteriormente, la aplicación arrojaba este error:Product with id "%1" does not contain required attribute "%2"."
Corrección enviada por Vadim Malesh en la solicitud de extracción 29001. GitHub-13210
- El atributo de opciones de configuración de un producto principal ya no se asigna al atributo
size
de un nuevo producto configurable. Corrección enviada por Abel Truong en la solicitud de extracción 27339. GitHub-26449
Cookies
- La aplicación ahora crea un máximo de una cookie
mage-translation-file-version
ymage-translation-storage
por sesión. Corrección enviada por Ihor Sviziev en la solicitud de extracción 27364. GitHub-27355
cron
- La configuración del consumidor de colas de mensajes se ha ampliado con nuevos parámetros que ayudan a controlar a los consumidores y a ahorrar recursos del servidor, y que potencialmente reducen el consumo de CPU de las colas de consumidores. Consulte Configurar colas de mensajes para obtener una descripción de los parámetros
maxIdleTime
,sleep
yonlySpawnWhenMessageAvailable
.
cron
expresiones como3/10 * * * *
se han programado según lo esperado. Corrección enviada por Anton Evers en la solicitud de extracción 28930. GitHub-29240
sales_clean_quotes
ya no carga todas las ofertas caducadas a la vez. Anteriormente, la aplicación fallaba con este error irrecuperable porque todas las comillas caducadas se cargaban simultáneamente:PHP Fatal error: Allowed memory size of 2147483648 bytes exhausted (tried to allocate 20480 bytes) in /path/to/magento2/vendor/magento/framework/Model/AbstractModel.php on line 359
,
CSS
- La aplicación ya no duplica CSS cuando Critical CSS está habilitado. Corrección enviada por Tu Nguyen en la solicitud de extracción 28480. GitHub-26498
- El compilador LESS del lado del servidor ahora importa todos los archivos CSS remotos como se espera cuando se ejecuta
bin/magento setup:static-content:deploy -f
. Anteriormente, la aplicación no importaba los archivos remotos y generaba un error. GitHub-25119
Atributos del cliente personalizados
- Se han corregido problemas de alineación para el texto explicativo sobre contraseñas y el campo Puesto en la página Cliente: Editar información de cuenta.
- CAPTCHA ahora funciona como se espera cuando un nuevo cliente hace clic en el botón Crear una cuenta en la página de registro de clientes de la tienda. Anteriormente, la aplicación no creaba la cuenta de cliente y mostraba un error cuando el cliente hacía clic en el botón.
- El flujo de trabajo de cierre de compra ya no muestra valores de atributo de dirección del cliente personalizados cuando el cliente no ha introducido ningún dato.
Cliente
- Los nombres de las regiones en las direcciones de los clientes de administración ahora se traducen según lo esperado.
- Los campos Estado/Provincia ahora se rellenan según lo esperado en la página Editar dirección (Mi cuenta > Libreta de direcciones).
- La aplicación ya no genera un error cuando un cliente hace clic en el botón Enviar varias veces en formularios en toda la tienda para los que se ha habilitado el reCAPTCHA invisible. Anteriormente, si se hacía clic en este botón varias veces, se producía un error interno similar al siguiente:
Internal error: Make sure you are using reCaptcha V3 api keys
.
- Guardar un cliente eliminado del administrador ahora solo genera un mensaje de error. Anteriormente, la aplicación mostraba una página en blanco y generaba un informe que contenía esta cadena:
"0":"No such entity with customerId = 3","1":"#1 Magento\\Customer\\Model CustomerRegistry->retrieve() called at [app\/code\/Magento\/Customer\/Model\/ResourceModel\/CustomerRepository.php:340"
.
- La aplicación ahora muestra un mensaje de error como se espera cuando un administrador intenta guardar una dirección para un cliente cuya cuenta acaba de ser eliminada. Anteriormente, la aplicación mostraba un cuadro de mensaje en blanco.
- Las etiquetas de los campos de dirección del flujo de trabajo de cierre de compra y de la libreta de direcciones se han editado para mantener la coherencia.
- Las etiquetas de front-end ahora vuelven a almacenar las etiquetas si sus valores no son nulos. Anteriormente, los atributos del cliente utilizaban las etiquetas de front-end predeterminadas. Corrección enviada por Toan Nguyen en la solicitud de extracción 27064. GitHub-27063
- Se ha corregido el número
sortOrder
de vínculos en el XML de diseño. Anteriormente, este orden se invertía y se utilizaba en orden descendente. Corrección enviada por Tu Nguyen en la solicitud de extracción 27340. GitHub-27162
Segmento de cliente
- Las operaciones masivas se han refactorizado para guardar y actualizar los segmentos de clientes de forma asíncrona, lo que ha mejorado el rendimiento de estas tareas para implementaciones que incluyen a muchos clientes (más de 3 000 000).
- Las condiciones de los segmentos de clientes ahora funcionan según lo esperado en una implementación de base de datos dividida. Anteriormente, la aplicación generaba un error al intentar editar un segmento de cliente agregando una condición:
SQLSTATE[42S02]: Base table or view not found
.
Directorio
- El formato del menú desplegable Estado/Provincia ahora es coherente en toda la administración.
dotdigital
-
La sincronización de pedidos ya no falla cuando un pedido contiene SKU de producto que ya no existen en el catálogo.
-
Las categorías de productos vacías ya no se incluyen en los datos de perspectivas web.
-
El seguimiento del comportamiento web ahora funciona para comerciantes con determinadas configuraciones de temas. Un nuevo selector de reserva resuelve esto.
-
El campo de datos de estado del suscriptor ya no incluye valores vacíos cuando la sincronización de clientes se ejecutó mediante cron. (La emulación de la aplicación soluciona este problema).
-
La asignación de libreta de direcciones funciona ahora según lo esperado cuando una cuenta dotdigital está habilitada en el nivel predeterminado pero deshabilitada para el sitio web principal.
-
Ahora se generan cupones (mediante la URL de contenido dinámico externo para la generación de cupones) para direcciones de correo electrónico que contienen signos más ("+").
-
Los contactos ya no se vuelven a suscribir cuando su valor
last_subscribed_at
es nulo. -
Se han resuelto los errores de actualización (que datan de la versión 4.5.2) que afectaban a versiones anteriores.
-
Se ha corregido un problema de regresión introducido en la versión 4.5.3 que afectaba al uso de un método para obtener el estado de suscriptor al preparar la exportación del suscriptor.
-
La cifra total de suscriptores sincronizados (presentada en los registros y en la pantalla) ahora se calcula correctamente.
Descargable
- El área Mis productos descargables ahora muestra vínculos a productos descargables comprados que forman parte de un producto agrupado según lo esperado.
- Al hacer clic en el botón Muestra de un producto descargable de la página de producto Administrador, ahora se descarga una muestra según lo esperado. Anteriormente, al hacer clic en Ejemplo, la aplicación mostraba este error:
The product that was requested doesn't exist. Verify the product and try again
.
- Los compradores ahora pueden descargar muestras de productos descargables que están agotados. Anteriormente, cuando un comprador intentaba descargar una muestra, la aplicación abría una pestaña nueva, pero no mostraba un mensaje informativo ni iniciaba el proceso de descarga. Corrección enviada por Vadim Malesh en la solicitud de extracción 28898. GitHub-23638
- Se ha mejorado el mensaje de excepción que la aplicación muestra cuando un comprador intenta establecer una dirección de envío para un producto descargable. Corrección enviada por Michał Derlatka en la solicitud de extracción 28904. GitHub-26107
- Los datos de
stock_item
de un producto se actualizan y los vínculos de productos descargables y las muestras se conservan según lo esperado cuando se utiliza una llamada de PUT REST para actualizar los valores destock_item
. Anteriormente, después de la actualización del producto, el producto ya no contenía vínculos para descargar contenido. Corrección enviada por Vadim Malesh en la solicitud de extracción 28799. GitHub-21811
- La aplicación ahora muestra un mensaje más informativo cuando un cliente establece la dirección de envío de un pedido que solo contiene productos descargables.
Bloque dinámico (anteriormente banner)
- El título de la tabla ahora coincide con la tabla de datos (según lo esperado) al crear un bloque dinámico y añadir una regla de precios de catálogo relacionada.
Correo electrónico
- La aplicación ahora envía notificaciones por correo electrónico sobre cambios en el pedido al correo electrónico del cliente correcto si el correo electrónico del cliente se ha cambiado después de crear el pedido.
- Los correos electrónicos de actualización de pedidos que se envían a los clientes ahora incluyen el estado de pedido correcto. Anteriormente, si un estado de pedido cambiaba de
processing
a otro estado, el correo electrónico de pedido no reflejaba el cambio de estado.
- La aplicación ya no muestra mensajes engañosos sobre cuentas existentes durante el cierre de compra de invitados. Anteriormente, cuando un invitado navegaba a la página de cierre de compra y luego regresaba a la página de envío, la aplicación mostraba este error:
You already have an account with us. Sign in or continue as guest
.
- Las plantillas de correo electrónico personalizadas ahora cargan los mismos elementos que las plantillas de correo electrónico predeterminadas nativas. Anteriormente faltaban algunos elementos, incluidos los valores de variables.
- Ahora puede crear una plantilla de correo electrónico que envíe correo electrónico con
Content-Type: "text/plain"
. Anteriormente, la aplicación ignoraba el tipo de contenido especificado en la plantilla. Corrección enviada por twoonesixdigital en la solicitud de extracción 26474. GitHub-26471
- Se ha eliminado CSS innecesario de la plantilla de vista previa de correo electrónico. Corrección enviada por Tu Nguyen en la solicitud de extracción 27828. GitHub-27543
- Se ha eliminado el texto de la plantilla de correo electrónico que duplica el texto que ya se muestra en el pie de página. Corrección enviada por Paweł Tylek en la solicitud de extracción 27356. GitHub-28433
- Los correos electrónicos de alerta de producto ahora se envían desde el almacén desde el que se suscribe la alerta. Anteriormente, este correo electrónico siempre se enviaba desde el almacén predeterminado. Corrección enviada por Maciej Pawłowski en la solicitud de extracción 26534. GitHub-28968
- Se ha eliminado una variable
customer.name
duplicada de la plantilla de correo electrónico. Corrección enviada por Paweł Tylek en la solicitud de extracción 29054. GitHub-29087
- Los correos electrónicos de notificación que se envían a los representantes de ventas asignados a una empresa ahora incluyen el logotipo corporativo asignado. Anteriormente, el correo electrónico de notificación incluía el logotipo de LUMA predeterminado, no el correo electrónico del logotipo corporativo cargado.
Marcos
- El campo Hora del día para enviar datos de la página Administrador Tiendas > Configuración > GENERAL > Informes avanzados ahora se muestra correctamente.
- Los compradores ahora pueden cambiar el número de pedidos que se muestran por página cuando la lista Pedidos abarca varias páginas. Anteriormente, la aplicación mostraba este mensaje cuando se navegaba hasta la última página de pedidos y se intentaba cambiar el número de pedidos mostrados por página:
You have placed no orders
. Este era un problema conocido de la versión 2.4.0.
- Ahora puede añadir productos a una categoría al implementar la caché de nivel 2.
X-Magento-Tags
encabezados ya no superan el tamaño permitido por la especificación HTTP. Anteriormente, las páginas de categoría que contenían muchos productos devolvían un encabezadoX-Magento-Tag
que generaba un error 503.
sales_order_shipment_track_save_commit_after
ahora se activa según lo esperado cuando utilizó la API de REST para crear un envío.
- La aplicación ahora muestra un mensaje de error informativo cuando un
di compile
falla debido a una dependencia inexistente. Anteriormente, el mensaje mostrado no identificaba la clase en la que se producía la excepción.
- La aplicación ya no genera el siguiente error irrecuperable cuando Redis utiliza toda la memoria permitida:
report.CRITICAL: OOM command not allowed when used memory > 'maxmemory'
.
- Los compradores ahora pueden agregar varios productos al carro de compras cuando el módulo
Persistent
está deshabilitado. GitHub-14486
Correcciones generales
- Al ordenar productos en el Administrador (Tiendas > Atributos > Productos), ahora se muestran todos los productos que cumplen con los criterios de búsqueda. Anteriormente, la aplicación no mostraba registros y para ordenarlos había que ir a la primera página de resultados de búsqueda.
- Se han quitado las comillas innecesarias y el escape alrededor de una dirección URL en
tracking.phtml
.
- El
var/log/system.log
muestra ahora un mensaje más preciso cuando un usuario intenta obtener acceso a un archivo de recursos no existente en el directorio estático y el modo de producción y SCD OnDemand están habilitados. La aplicación ahora registra un error 404. Anteriormente, la aplicación registraba el mismo mensaje que se registra cuando el error se produce en el modo de desarrollador.
- La minificación de JavaScript ahora funciona correctamente. El solucionador de archivos de minificación ya no filtra variables al ámbito global. Anteriormente, se filtraron las variables
ctx
,origNameToUrl
ybaseUrl
en window. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27622. GitHub-28110
- Cuando se depura un error que impide la creación de objetos, la aplicación ahora imprime y registra el mensaje de excepción original. Anteriormente, el mensaje solo se registraba. Corrección enviada por Marvin Hinz en la solicitud de extracción 26572. GitHub-26550
- Se ha mejorado la ejecución de devoluciones de llamada después de confirmar los cambios en la base de datos. Anteriormente, si una llamada de retorno fallaba con una excepción, todas las llamadas de retorno fallaban. Corrección enviada por Alok Patel en la solicitud de extracción 27134. GitHub-28167
- Los mixins para módulos sin dependencias definidas ya no generan este error:
TypeError: Cannot read property 'map' of null
. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27690. GitHub-28340
- El polyfill de almacenamiento ahora se carga y aplica solamente cuando
localStorage
osessionStorage
no están disponibles. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27619. GitHub-28381
- Las listas de pedidos de tiendas de varias páginas ahora se comportan como se espera cuando un comprador cambia el número de resultados mostrados por página desde la segunda página o desde una página de resultados posterior. Anteriormente, la aplicación mostraba este error cuando un comprador cambiaba el número de resultados de búsqueda mostrados en la lista Mi cuenta > Mis pedidos:
You have placed no orders
. Corrección enviada por Vadim Malesh en la solicitud de extracción 28417. GitHub-28488
- El método
addWarning
obsoleto se ha reemplazado con el métodoaddWarningMessage
en el módulo de seguridad. Corrección enviada por kishorekumarkesavan en la solicitud de extracción 28264. GitHub-28308
- El código generado mediante los comandos de línea de comandos
bin/magento
ahora es coherente con los requisitos y los estándares de codificación. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 28351. GitHub-28376
- La aplicación ya no muestra una página CMS más de una vez en la jerarquía del sitio si la página está asignada a varias vistas de tienda.
- Al guardar un atributo con
backend_type = static
, ya no se quita el contenido del campofrontend_class
. Corrección enviada por jiten-patel en la solicitud de extracción 27369. GitHub-27051
- Código innecesario y
responsive.js
se han eliminado de los archivos cargados por las temáticas. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27617. GitHub-28811
- La validación se ha agregado al campo Número de símbolos de la página de configuración de Admin CAPTCHA. Corrección enviada por Eden Duong en la solicitud de extracción 29199. GitHub-29198
- La fuente RSS ahora se carga correctamente. Anteriormente, la fuente no se cargaba por primera vez, aunque se cargaba según lo esperado cuando se actualizó la página. Corrección enviada por Vadim Malesh en la solicitud de extracción 29455. GitHub-25211
- Una sesión persistente caducada ahora se renueva según lo esperado cuando el comprador vuelve a iniciar sesión.
- Ahora se cumple la vigencia de la contraseña establecida en Tiendas > Configuración > Avanzado > Administrador. Anteriormente, si hacía clic en ¿Olvidó la contraseña? cuando se le pida que restablezca su contraseña, podría omitir el restablecimiento de contraseña.
- Los códigos de cupones ahora se aplican solo al producto especificado. Anteriormente, la aplicación aplicaba el código de cupón a todos los productos del carro de compras. GitHub-28246
- La configuración de caducidad del carro de compras ya no se restablece cuando se produce una actualización de inventario o precio. Anteriormente, cuando un carro de compras estaba configurado para que caducara en 24 horas y se produjo una actualización de inventario o una actualización de precios, los indizadores rellenaban
updated_at table
, lo que restablecía la hora de caducidad.
- La aplicación ya no genera un error grave cuando un administrador asigna un cliente que tiene un carro de compras activo a un grupo de clientes.
- Si se selecciona una opción de la barra de herramientas de Herramientas para desarrolladores > Red en una página de producto cuando se ejecuta el explorador Chrome, ya no se inicializa
toolbar.js
dos veces. Corrección enviada por Paweł Tylek en la solicitud de extracción 28838. GitHub-25934
- La aplicación ahora agrega el ID de rol ACL de un usuario administrador al ID de caché del árbol de categorías de productos. Esto limitará los árboles de categorías que un administrador con ámbito limitado puede ver como se espera. Corrección enviada por quangdo-aligent en la solicitud de extracción 27429. GitHub-28306
Tarjetas de regalo
- Las cuentas de tarjetas de regalo ahora capturan los números de pedido según lo esperado. Anteriormente, el campo Más información de la pestaña Historial de la cuenta de regalo seleccionada no mostraba las ID de pedidos.
- El uso de una coma como separador decimal ahora funciona según lo esperado. Anteriormente, el separador de comas ignoraba los valores decimales.
- Las tarjetas de regalo ahora se muestran como se espera en el minicarrito. Anteriormente, la aplicación procesaba objetos de HTML como texto.
- Ahora, las notas de crédito reflejan correctamente el total general de los pedidos que incluían productos con descuento y que se pagaron mediante una combinación de tarjeta de regalo y crédito de la tienda.
Google Tag Manager
- La aplicación ya no genera un error de JavaScript durante la desprotección cuando la configuración Modo de restricción de cookies y el Administrador de etiquetas de Google están habilitados.
GraphQL
- Los compradores pueden seleccionar el mensaje de regalo y las opciones de envoltorio durante el pago. GraphQL ahora cubre las opciones de mensajes de regalo para diferentes tipos de artículos del carro de compras. Ver
setGiftOptionsOnCart
mutación yupdateCartItems
mutación. Corrección enviada por Oleh Usik en las solicitudes de extracción 28519, 27956, 28072, 28072 y 246 en los socios de repositorios privados-magento2ee. GitHub-253
- Los clientes y los huéspedes pueden escribir comentarios sobre los productos. Los clientes también pueden recuperar sus historiales de críticas de productos. Consulte Crear una revisión de producto y productReviewRatingsMetadata query para obtener información sobre cómo recuperar información sobre la infraestructura de revisiones. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 27882. GitHub-28523
- Los clientes pueden aplicar o eliminar puntos de recompensa a sus carros de compras. También pueden ver el historial de puntos de recompensa. Consulte
applyRewardPointsToCart
yremoveRewardPointsFromCart
para ver una discusión sobre la administración de puntos de recompensa dentro de un carro de compras. Corrección enviada por Petkovski Marjan en la solicitud de extracción 285 en los socios de repositorios privados-magento2ee y Dmitriy Gallyamov en las solicitudes de extracción 284 y 281 en los socios de repositorios privados-magento2ee. GitHub-28835, GitHub-28833
- La mutación
addProductsToCart
le permite agregar cualquier tipo de producto al carro de compras activo. Se recomienda usar esta mutación en lugar de mutaciones de un solo propósito comoaddSimpleProductsToCart
. Corrección enviada por Yaroslav Rogoza en la solicitud de extracción 27914. GitHub-28524
- Las consultas de GraphQL para productos relacionados ahora devuelven valores para productos relacionados creados a partir de reglas de segmentación. Anteriormente, las consultas de productos relacionados (mejora de venta y venta cruzada) solo devolvían valores si los productos relacionados se añadían desde la configuración del producto. Corrección enviada por Ulzii en la solicitud de extracción 288 en el repositorio privado partners-magento2ee. GitHub-28566
- La nueva consulta
availableStores
devuelve una lista de atributos de configuración para varias tiendas disponibles en el mismo sitio web (según la tienda actual). No expone la lista de sitios web. VeravailableStores
consulta. Corrección enviada por Dmitriy Gallyamov en la solicitud de extracción 28794. GitHub-28569
- Ahora, GraphQL solo utiliza un token de autorización para recuperar un tipo de usuario y su ID. Anteriormente, GraphQL utilizaba las cookies de un cliente activo para recuperar esta información cuando el token de autorización estaba vacío. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 27373. GitHub-28040
- Hemos agregado las mutaciones
createCustomerV2
yupdateCustomerV2
para administrar las cuentas de cliente. Estas nuevas mutaciones requieren objetos de entrada diferentes a las mutacionescreateCustomer
yupdateCustomer
. Para cambiar la dirección de correo electrónico de un cliente, use la nueva mutaciónupdateCustomerEmail
. Corrección enviada por Michał Derlatka en la solicitud de extracción 28888. GitHub-28570
updateCustomer
ya no le permite establecer un valorINT
no válido en el argumentogender
. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 28487. GitHub-28481
- Puede usar la mutación
subscribeEmailToNewsletter
para suscribir a los clientes a un boletín informativo. VersubscribeEmailToNewsletter
mutación. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 27586. GitHub-27337
- Se ha eliminado la lógica redundante en la resolución de mutaciones
setShippingMethodsOnCart
. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 27349. GitHub-28262
- Se agregó cobertura de prueba para el error
Please provide Email of sender
asociado con la mutaciónsendEmailToFriend
. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 28034. GitHub-28138
- La consulta
products
ahora devuelve etiquetas de opciones de atributos de producto para la vista de tienda predeterminada según lo esperado. Anteriormente, esta consulta devolvía las etiquetas de opciones de atributos de producto establecidas para el administrador. Corrección enviada por Dmitriy Gallyamov en la solicitud de extracción 28647. GitHub-28568
- Las agregaciones de atributos personalizadas ahora devuelven valores de opción específicos del almacén. Corrección enviada por Dmitriy Gallyamov en la solicitud de extracción 28647. GitHub-28572
- Los intervalos de precio que se devuelven en una agregación de producto ahora solo pueden ser numéricos (no se permiten caracteres comodín). Corrección enviada por Dmitriy Gallyamov en la solicitud de extracción 28745. GitHub-28628
- La consulta
categoryList
ahora devuelve la respuesta correcta al usar fragmentos. Corrección enviada por Ulzii en la solicitud de extracción 28710. GitHub-28584
- La búsqueda de productos de GraphQL ahora considera los permisos de categoría configurados. Anteriormente, la búsqueda de productos ignoraba la configuración Enable (Stores > Configuration > Catalog > Catalog > Permisos de categoría). Corrección enviada por Petkovski Marjan en la solicitud de extracción 28757 y la solicitud de extracción 271 en el repositorio privado
partners-magento2ee
. GitHub-28563
-
Ahora puede agregar un producto a un carro de compras usando
addSimpleProductToCart
cuando otros artículos del carro de compras estén agotados. Anteriormente, la aplicación devolvió este error:Some of the products are out of stock
. GitHub-26683 -
El método predeterminado GraphQL
Category
ahora ordena por posición de categoría según lo esperado. Corrección enviada por Derrik Nyomo en la solicitud de extracción 29301. GitHub-104 -
Se ha agregado compatibilidad con listas de deseos en el Magento Open Source. Puede agregar elementos a, actualizar elementos en y quitar elementos de una lista de artículos deseados. Corrección enviada por Eduard Chitoraga en las solicitudes de extracción 28205 y 264 en los socios de repositorios privados-magento2ee. GitHub-28551
-
La mutación
addProductsToCart
le permite agregar cualquier tipo de producto al carro de compras activo. Se recomienda usar esta mutación en lugar de mutaciones de un solo propósito comoaddSimpleProductsToCart
. Corrección enviada por Yaroslav Rogoza en la solicitud de extracción 27914. GitHub-28524 -
Se ha agregado compatibilidad con GraphQL Vault para el método de pago Payflow Pro Vault. Corrección enviada por Oleh Usik en la solicitud de extracción 28821. GitHub-28520
-
Se ha actualizado la consulta
storeConfig
de GraphQL para incluir nuevas opciones de configuración de cliente. Corrección enviada por Oleh Usik en la solicitud de extracción 27876. GitHub-28521 -
Se agregó la mutación
resetPassword
. Corrección enviada por Oleh Usik en la solicitud de extracción 27876. GitHub-28521 -
Se agregó la mutación
requestPasswordResetEmail
, que almacena en déclencheur el correo electrónico de restablecimiento de contraseña para la dirección de correo electrónico proporcionada. Corrección enviada por Oleh Usik en la solicitud de extracción 27876. GitHub-28521 -
Se agregó una discusión sobre Klarna GraphQL en método de pago de Klarna y
createKlarnaPaymentsSession
Imágenes
- Se ha mejorado el marcado del HTML para imágenes en miniatura. Corrección enviada por Tu Nguyen en la solicitud de extracción 28642. GitHub-29468
Importar/exportar
- El archivo
error_report.csv
ahora se descarga con contenido y está disponible dentro del directoriovar/import_history/
según lo esperado. Anteriormente, este archivo no se generaba después de la importación.
- La importación de un producto mediante un archivo CSV ahora genera un archivo
error_report.csv
según lo esperado. Anteriormente, la aplicación generaba el archivo, pero lo quitaba después de completarse la importación. Corrección enviada por Vadim Malesh en la solicitud de extracción 28460. GitHub-28420
- Se eliminaron las importaciones de clases redundantes en toda la base de código. Corrección enviada por Oleh Usik en la solicitud de extracción 28696. GitHub-29012
- La aplicación ahora importa correctamente las direcciones de clientes que contienen una región para un país que no tiene regiones definidas. Anteriormente, la aplicación arrojó este error:
Please enter a valid region
.
- La aplicación ahora carga el conjunto de atributos de entidad correcto cuando un comerciante selecciona un tipo de entidad al programar una nueva exportación.
- La posición de los productos en la tabla
catalog_category_product
ahora se actualiza como se espera cuando un administrador crea un producto en el Administrador y lo asigna a una categoría. Anteriormente, a la posición de los nuevos productos siempre se le asignaba un valor 0.
- Los datos del cliente ahora se exportan correctamente desde Admin y la cuadrícula de datos de exportación muestra los datos del cliente según lo esperado. Anteriormente, se producía un error relacionado con la asignación de memoria durante la exportación.
- Los archivos CSV importados ahora capturan información de productos relacionada según lo esperado. Anteriormente, la información del producto relacionado no se cargaba de forma coherente la primera vez que se importaba el archivo CSV.
- Se eliminaron los parámetros de construcción no utilizados en
AdvancedPricing.php
. GitHub-29531
Índice
Magento_CacheInvalidate
ahora administra correctamente los patrones de etiquetas grandes al hacerPURGE
.sendPurgeRequest
se ha refactorizado para administrar una matriz de etiquetas en lugar de requerir que el llamador useimplode()
. Corrección enviada por Matthew O'Loughlin en la solicitud de extracción 26256. GitHub-26255
- Los indexadores compartidos ahora muestran un estado de valid después de ejecutar
bin/magento indexer:status
después de volver a indexar. Anteriormente, los indexadores compartidos tenían un estado no válido después de un reindexado completo.
Infraestructura
- Ya no se producen problemas al cargar las páginas de catálogo y producto en implementaciones que ejecutan PHP 7.4.9. Anteriormente, la aplicación arrojaba este error al intentar cargar el catálogo y las páginas de producto:
There has been an error processing your request. Exception printing is disabled by default for security reasons
. GitHub-29502
- Todas las excepciones que se producen cuando los diseños se representan en el modo de producción ahora se registran en el archivo de registro de excepciones (
var/report
). Anteriormente, la aplicación registraba estos mensajes en el registro del sistema como problemas críticos.
- Las expresiones regulares ahora funcionan correctamente en páginas grandes como resultado de un aumento de
ipcre.backtrack_limi
t ypcre.recursion_limit
a aproximadamente 1000000. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27270. GitHub-26026
- Se ha mejorado la generación de interceptores. Se han quitado
} else {
instrucciones de los interceptores yarray_map
ha reemplazado aforeach
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27902. GitHub-28383
- La creación de matrices es ahora coherente en toda la clase (
app/code/Magento/Sales/Model/Order/Pdf/Items/Invoice/DefaultInvoice.php
). Corrección enviada por Nathan de Graaf en la solicitud de extracción 28515. GitHub-28795
- Los complementos se han migrado fuera del marco de trabajo para seguir la práctica recomendada de prohibir complementos en el área de nombres de marco de trabajo. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27965. GitHub-27962
- La aplicación ya no genera un error
Undefined class constant
cuando se genera un interceptor. Corrección enviada por Vova Yatsyuk en la solicitud de extracción 28797. GitHub-28981
- Los datos de formulario ahora se conservan cuando la aplicación genera una excepción de integración al guardar una integración con un nombre que ya está en uso. Corrección enviada por Aditya Yadav en la solicitud de extracción 26660. GitHub-28143
- La aplicación ya no trunca los encabezados
X-Forwarded-For
a 32 caracteres. Corrección enviada por Ihor Sviziev en la solicitud de extracción 27221. GitHub-28693
- La lógica que comprueba si una redirección es interna ahora funciona correctamente en el administrador al utilizar un dominio de administrador personalizado. Anteriormente, los problemas con esta lógica provocaban que muchos administradores redirigieran a la página principal del almacén predeterminado. Corrección enviada por Vadim Malesh en la solicitud de extracción 29066. GitHub-28943
- Los problemas con el archivo
styles-old.less
se han eliminado y el linting ya no identifica errores. Corrección enviada por Tu Nguyen en la solicitud de extracción 28895. GitHub-24004
NonComposerComponentRegistration.php
se ha refactorizado. Corrección enviada por Vitaliy Ryaboy en la solicitud de extracción 28975. GitHub-29308
ResourceConnection.php
se ha refactorizado para mejorar la legibilidad de la clase. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 29341. GitHub-29389
- El archivo LÉAME del servidor web integrado se ha actualizado para incluir todos los parámetros del Elasticsearch. Corrección enviada por Yevhenii Dumskyi en la solicitud de extracción 29300. GitHub-29299
- El complemento
Magento\CmsUrlRewrite\Plugin\Cms\Model\Store\View::aftersSave
ahora devuelve un valor como se esperaba. Anteriormente, este complemento no devolvía un valor y, como resultado, al guardar una vista de tienda, se producía un error. Corrección enviada por el host de Pieter en la solicitud de extracción 29035. GitHub-29034
-
Se agregó la siguiente compatibilidad con métodos mágicos para
DataObject
:- nueva extensión que admite
get/set/has/uns
métodos mágicos (con uso de__call
) - compatibilidad con SessionManager, que reenvía todas las llamadas al contenedor DataObject
- cobertura de prueba para extensiones
- pruebas actualizadas para la comprobación de errores filtrados
- aumentó el nivel de comprobación de PHPStan de 0 a 1. Corrección enviada por Oleksandr Kravchuk en la solicitud de extracción 27905. GitHub-28303
- nueva extensión que admite
ScopeConfigInterface
ahora puede ser más que una cadena. La restricción demagentoConfigFixture
a la cadena solamente fue el resultado involuntario de una solicitud de extracción anterior y se revirtió. Corrección enviada por Kristof, Fooman en la solicitud de extracción 29305. GitHub-29345
- El método
convertConfigTimeToUtc
ya no genera un error grave debido al envío de parámetros incorrectos al constructorPhrase
. Corrección enviada por Kos Rafał en la solicitud de extracción 29483. GitHub-29525
- Los filtros de precio ahora funcionan como se espera en los datos de cuadrícula cuando
Magento\Backend\Block\Widget\Grid\Column\Filter\Price::getCondition
yMagento\Backend\Block\Widget\Grid\Column\Filter\Price::getValue()
devuelven una matriz con índices que contienen datos de cadenafrom
oto
. Anteriormente, la aplicación arrojó este error:Notice: A non well formed numeric value encountered in vendor/magento/module-backend/Block/Widget/Grid/Column/Filter/Price.php on line 197
. Corrección enviada por Nikita Sarychev en la solicitud de extracción 29214. GitHub-29213
- Se ha añadido un punto de extensión para admitir la adición de un HTML a la página de categoría. Esto corrige un error introducido por una solicitud de extracción anterior. Corrección enviada por iGerchak en la solicitud de extracción 29291. GitHub-29286
Inventario
- Se eliminaron comentarios de código innecesarios de
app/code/Magento/CatalogInventory/Model/StockState.php
. Corrección enviada por Vitaliy Prokopov en la solicitud de extracción 27758. GitHub-26702
Navegación por capas
- La barra lateral de navegación por capas ahora muestra atributos booleanos con opciones (yes/no) y recuentos de productos coincidentes. Anteriormente, la navegación por capas no arrojaba una opción no para atributos booleanos en implementaciones que usaban Elasticsearch.
- El filtro de navegación por capas de muestra ahora es coherente con los filtros estándar utilizados en Adobe Commerce. Corrección enviada por Bartłomiej Szubert en la solicitud de extracción 28015. GitHub-28011
Registro
- Todos los errores de referencia rotos ahora se registran cuando las implementaciones solo están en modo de desarrollador. Anteriormente, también se registraba un error para implementaciones en modo de producción, que inflaba los registros de errores. Corrección enviada por Bartłomiej Szubert en la solicitud de extracción 28735. GitHub-26504
Galería de medios
- La interfaz de usuario de configuración de Media Gallery (Administrador Tiendas > Configuración > Avanzado > Sistema) se ha reorganizado. Corrección enviada por Shankar Konar en la solicitud de extracción 29433. GitHub-28011
- Se agregaron pruebas para cubrir los vínculos Usados en para una imagen en la galería multimedia. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29392. GitHub-1963
- La aplicación ya no genera una excepción cuando un comerciante intenta guardar un producto con su imagen asociada cuando Media Gallery está desactivada. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29492. GitHub-1750
MFTF
AdminSubmitAdvancedInventoryFormActionGroup
,AdminClickOnAdvancedInventoryLinkActionGroup
yAdminSetStockStatusConfigActionGroup
grupos de acción ahora se utilizan en pruebas de acuerdo con las prácticas recomendadas. Corrección enviada por Oleh USIA en la solicitud de extracción 29386. GitHub-29420
SearchProductGridByKeywordActionGroup
ahora se usa para la búsqueda en la cuadrícula de productos. Corrección enviada por Oleh Usik en la solicitud de extracción 29385. GitHub-29434
AdminCategoriesClickDoneButtonOnPopupActionGroup
se usa ahora para hacer clic en Listo en la ventana emergente Buscar categorías. Corrección enviada por Oleh Usik en la solicitud de extracción 28989. GitHub-29380
LoginToStorefrontActionGroup
se usa ahora para reemplazar una secuencia de acciones que se usa para el inicio de sesión de clientes de tienda. Corrección enviada por Sathish Subramanian en la solicitud de extracción 28113. GitHub-28165
AdminUpdateCustomURLRewritesPermanentTest
se ha refactorizado para cumplir con las prácticas recomendadas de MFTF. Corrección enviada por Kate Kyzyma en la solicitud de extracción 28361. GitHub-28393
- Se han cambiado los nombres de las pruebas para que cumplan las convenciones MFTF. Corrección enviada por Evgeny Levinsky en la solicitud de extracción 27839. GitHub-28305
Nuevos grupos de acción
StorefrontCheckoutClickNextButtonActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29472. GitHub-29539
AdminProductFormSaveActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29142. GitHub-29292
AdminSaveCategoryActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 28993. GitHub-29388
AdminProductGridSectionClickFirstRowActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29000. GitHub-29295
AdminProductFormCategoryExistInCategoryListActionGroup
yAdminProductFormCategoryNotExistInCategoryListActionGroup
Corrección enviada por Alexander Steshuk en la solicitud de extracción 28287. GitHub-28392
AdminExpandCategoryTreeActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29133. GitHub-29289
AdminTaxRateGridOpenPageActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29007. GitHub-29281
AdminNavigateNewCustomerActionGroup
Corrección enviada por Oleh Usik en la solicitud de extracción 29134. GitHub-29287
Nuevas pruebas
-
Se ha añadido la prueba para eliminar una página de CMS como usuario administrador. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28112. GitHub-28202
-
Se agregó la prueba
StorefrontShareCustomerWishlistActionGroup
para el uso compartido de listas de deseos de clientes con direcciones de correo electrónico no válidas. Se ha refactorizado la prueba existente para el uso compartido de listas de deseos (StorefrontShareWishlistEntityTest
).StorefrontCustomerShareWishlistActionGroup
se ha desaprobado.
- Se agregó una prueba para comprobar la implementación de la configuración Solo X del umbral izquierdo. Corrección enviada por Oleh Usik en la solicitud de extracción 27549. GitHub-28755
Newsletter
- Exportar la lista de suscriptores de la newsletter mediante la opción
Excel XML
ahora resulta en la exportación de todas las filas según lo esperado. Anteriormente, los datos exportados solo incluían el valor de paginación de la página, no todas las filas.
- Los correos electrónicos de suscripción a la newsletter ahora utilizan las mismas etiquetas de HTML que otros correos electrónicos relacionados con la newsletter. Corrección enviada por Paweł Tylek en la solicitud de extracción 27357. GitHub-28166
- Agrega una prueba para eliminar el suscriptor del boletín informativo como usuario administrador. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28972. GitHub-29032
- Se han añadido pruebas para la suscripción al boletín informativo de los invitados con una opción no permitida en las instrucciones de configuración. Esta prueba reemplaza a
VerifyRegistredLinkDisplayedForGuestSubscriptionNoTest
yStorefrontCreateNewSubscriberActionGroup
obsoletos. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28872. GitHub-29039
Pedidos
- El
GetAssetIdByContentFieldInterface
y su implementación en módulos deMediaContent
ahora permiten que la integración de Adobe Stock amplíe la funcionalidad de filtroMediaGallery
. Corrección enviada por Gabriel da Gama en la solicitud de extracción 29058. GitHub-1464
- Los valores
CustomerAddressI
de un cliente recién creado ahora se validan entre comillas. Corrección enviada por Andrii Kalinich en la solicitud de extracción 29139. GitHub-28793
- El estado del pedido de una nota de abono con un total cero es ahora
Closed
. Anteriormente, la aplicación informaba de su estado de pedido comoComplete
. Corrección enviada por Andrii Kalinich en la solicitud de extracción 29023. GitHub-22762
Page Builder
- Los atributos de producto
description
yshort_description
se han reorganizado para adaptarse mejor a los cambios planificados en el ensayo de contenido de Page Builder. Corrección enviada por Matt Walters en la solicitud de extracción 29238. GitHub-543
Métodos de pago
- La aplicación ahora muestra un mensaje que te pide que introduzcas los datos obligatorios de la tarjeta de crédito al hacer clic en Enviar para obtener una orden de administrador sin introducir información de pago válida. Anteriormente, el validador de tarjetas de Braintree no generaba un error cuando los campos de entrada de pago no eran válidos y la página estaba inactiva.
- Ahora puede cambiar el método de envío para un pedido que cree desde el Administrador para un cliente cuya cuenta tenga una tarjeta de crédito almacenada (Braintree). Anteriormente, al seleccionar un método de envío diferente, la tarjeta almacenada no se seleccionaba y la aplicación no realizaba el pedido.
PayPal
- La página Revisión de pedidos del flujo de trabajo de cierre de compra ahora muestra el importe de envío correcto para PayPal a través de pedidos de Braintree para los que se ha cambiado el método de envío durante el cierre de compra. Anteriormente, cuando un cliente cambiaba el método de envío en la página de revisión de pedidos de PayPal del flujo de trabajo de cierre de compra, la aplicación no actualizaba el total del pedido con el método correcto.
- Los comerciantes ahora pueden cancelar correctamente los pedidos autorizados mediante PayPal. Anteriormente, la aplicación no cancelaba la solicitud y mostraba este error:
Declined: 10601-Authorization has expired
.
- La aplicación ya no vacía el carro de compras cuando se cancela un pedido cerrando la ventana emergente de pago de PayPal tras completar otro pedido por primera vez.
Rendimiento
- Tres nuevos ajustes de configuración admiten una disminución del consumo de CPU en cola de consumo. Estos parámetros opcionales proporcionan un mayor control sobre los consumidores y ahorran recursos de servidor. Consulte Configurar colas de mensajes para obtener una descripción de los parámetros
maxIdleTime
,sleep
yonlySpawnWhenMessageAvailable
.
-
La configuración de la lista de complementos ahora se genera durante la ejecución del comando
di:compile
. Esta información de configuración se escribe en carpetas de metadatos generadas en función del ámbito. Anteriormente, esta información se almacenaba en la caché. Las mejoras de rendimiento resultantes incluyen:- El tamaño de la caché de red ha disminuido
- Se ha mejorado el tiempo de ejecución de muchos escenarios.
- La aplicación ahora carga el widget de deslizador adecuado bajo demanda, lo que ha mejorado la carga de páginas. La personalización del widget de deslizador táctil se ha movido a un archivo independiente para que solo se pueda cargar en dispositivos compatibles. El tipo de widget de control deslizante adecuado ahora solo se carga cuando el enlace de intervalo se utiliza realmente en la página. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27616. GitHub-28807
- Se ha mejorado el rendimiento del cierre de compra con varios pedidos simultáneos.
- Los interbloqueos ya no se producen cuando el proceso de importación ejecuta una inserción masiva y el proceso de reindexación ejecuta simultáneamente una inserción grande desde la selección. Anteriormente, la aplicación mostraba este error:
PDOException: SQLSTATE[40001]: Serialization failure: 1213 Deadlock found when trying to get lock
. GitHub-8933
Autorizaciones de devolución de mercancía (RMA)
- La página Devoluciones ahora funciona según lo esperado después de crear una etiqueta de envío para una Autorización de devolución de mercancía (RMA). Anteriormente, los comerciantes no podían interactuar con ningún elemento de página en la página Devoluciones después de crear una etiqueta de envío para una autorización de devolución de material. Este era un problema conocido de la versión 2.4.0 y
MC-35984-2.4.0-CE-composer.patch
solucionó el problema de la versión 2.4.0.
- La aplicación ahora muestra un mensaje de error informativo o todos los productos disponibles cuando un administrador con permisos restringidos intenta crear una devolución para los productos que ya no están en el ámbito del sitio web asignado. Anteriormente, la aplicación mostraba una página en blanco.
Críticas
- Se ha agregado una clave única para
entity_pk_value-entity_type-store_id
a la tablareview_entity_summary
, lo que impide la creación de filas duplicadas para el mismo id. de producto (entity_pk_value
). Anteriormente, esta falta de clave única provocaba la duplicación de filas para el mismo ID de producto y errores de SQL.
Ventas
- La aplicación ya no asigna el estado
Complete
después de la facturación a un pedido que no requiere pago alguno.
- El correo electrónico Nuevo envío generado por la API de REST ahora contiene la misma información de envío y cliente que los envíos creados manualmente desde el administrador. Anteriormente, este correo electrónico no contenía el nombre del cliente, la información de seguimiento, los productos pedidos y otra información de pedidos.
- Los nombres de usuario invitados ahora están visibles como se espera en los correos electrónicos relacionados con las facturas y los envíos cuando los correos electrónicos se cargan o personalizan desde el administrador.
- La factura del PDF ahora se traduce al idioma de la vista de tienda donde se realizó el pedido. Anteriormente, la factura del PDF se traducía al idioma del administrador.
- Ahora puede emitir un reembolso según lo esperado desde la página de nota de abono. GitHub-29014
- Los nombres de regiones localizados que se muestran en la página de pedidos de tiendas ahora se traducen correctamente. Anteriormente, el nombre de región no se basaba en la configuración regional especificada a menos que se editara en el Administrador.
- Los envíos creados a través del extremo de POST
/rest/V1/shipment
ahora actualizan correctamente los pedidos. Anteriormente, la aplicación creaba un envío, pero el estado del envío permanecía en el estado de procesamiento.
- Ahora, las notas de abono muestran el método de pago derivado del ámbito del almacén en el que se realizó el pedido. Anteriormente, las notas de abono mostraban el nombre tal como se definía en el ámbito de almacenamiento predeterminado. Corrección enviada por Ledian Hymetllari en la solicitud de extracción 27582. GitHub-27570
Buscar search-heading
- Ahora puede buscar productos por atributo desde la vista Administrador del cliente mediante QuickSearch. Anteriormente, se producía una excepción en la página de resultados de búsqueda del catálogo.
- La aplicación ahora muestra los productos configurables en la página de categoría como se espera después de agregar un atributo de producto.
- Los resultados del Elasticsearch ahora incluyen los valores correctos para las opciones de atributos de cada vista de tienda. Si un atributo Dropdown o Multiple Select tiene un valor de opción diferente en la vista de almacén no predeterminada que en la vista de almacén predeterminada, Elasticsearch ahora indexa ese valor o devuelve el producto con ese valor en los resultados. Anteriormente, Elasticsearch no indexaba ese valor ni devolvía el producto con ese valor en los resultados.
- La búsqueda por SKU ahora funciona según lo esperado en la búsqueda avanzada con Elasticsearch. Anteriormente, al intentar buscar por SKU, la aplicación mostraba este mensaje de error:
We can't find any items matching these search criteria. Modify your search
.
- La búsqueda avanzada ya no permite que los compradores filtren precios negativos. Corrección enviada por Rohan Hapani en la solicitud de extracción 27359. GitHub-27358
- Los valores de ámbito ahora se restablecen según lo esperado en el formulario Nuevo grupo de sinónimos. Corrección enviada por Sathish Subramanian en la solicitud de extracción 29206. GitHub-28947
Envío
- La aplicación ahora calcula correctamente las tarifas de la tabla de envío después de la actualización. Anteriormente, las tarifas de envío se calculaban en función del precio neto, que excluía el IVA.
- Los clientes ahora pueden eliminar correctamente los puntos de recompensa en la página de revisión de pedidos del flujo de trabajo de cierre de compra al realizar el cierre de compra con varias direcciones. Anteriormente, la aplicación arrojaba un error
404 Not Found
cuando un cliente hacía clic en el botón Quitar para quitar puntos de cualquier dirección. Este era un problema conocido en 2.4.0.
- La aplicación ahora muestra las tarifas de envío en la moneda correcta en el flujo de trabajo de cierre de compra para pedidos que especifican FedEx como método de envío.
- Los PDF de varias páginas de las etiquetas de envío de los pedidos enviados por UPS ahora muestran el recuento correcto.
- Se han resuelto problemas con los componentes de JavaScript de la página Crear paquetes. Anteriormente, la aplicación no mostraba la casilla de verificación Crear etiqueta de envío en esta página y no se podía crear una etiqueta de envío para un pedido existente.
Sitemap
- El mapa del sitio de
robots.txt
ahora es específico de la tienda. Corrección enviada por Vadim Malesh en la solicitud de extracción 29331. GitHub-28901
- Los valores codificados ahora se escapan correctamente en el archivo
sitemap.xml
. Anteriormente, cuando se incluían caracteres codificados en el nombre de un producto o en el título de una imagen, el mapa del sitio generado no era válido.
Ensayo
- La etiqueta de atributo Establecer producto como nuevo ahora aparece según lo esperado en las páginas de detalles y actualización programada de un producto.
- Ahora puede previsualizar correctamente la programación de ensayo de un bloque CMS. Anteriormente, la aplicación arrojaba un error grave.
- Ahora puede acceder a la página Vista previa de CMS al editar una página de CMS con una actualización programada y reasignarla del almacén predeterminado a otro almacén. Anteriormente, la aplicación arrojaba un error 404 al hacer clic en el vínculo de vista previa.
- Ahora puede usar el POST
/V1/products/special-price
para actualizar el precio especial de un producto sin especificar un valor de parámetroprice_to
. Anteriormente, no se pudo establecer la actualización de precios sin el parámetroprice_to
especificado.
Almacenar
- La eliminación de una vista de almacén creada anteriormente ya no provoca un error en las implementaciones con una configuración de base de datos dividida. Anteriormente, la aplicación arrojaba una excepción.
- Ahora puede exportar
config.php
y el código de sitio web predeterminado de un sitio web para instalar y configurar la aplicación en un segundo sitio web en una implementación de varios sitios web. Anteriormente, la tienda y la vista predeterminadas desaparecían después de la exportación y se producían errores en la tienda.
Swagger
- Ahora puede generar un token de cliente con Swagger. Anteriormente, Swagger no generaba un código de respuesta cuando se escribía información de acceso de cliente válida y la aplicación mostraba este error:
The account sign-in was incorrect or your account is disabled temporarily. Please wait and try again later
. Corrección enviada por Vadim Malesh en la solicitud de extracción 28822. GitHub-27098
Muestras
- Los productos configurables con muestras ahora muestran precios de nivel cuando un comprador hace clic en Editar en el carro de compras. Anteriormente, la aplicación no mostraba los precios de nivel en el carro de compras antes del cierre de compra. Corrección enviada por Sathish Subramanian en la solicitud de extracción 29137. GitHub-28270
- La aplicación ahora muestra los precios de nivel según lo esperado para las variaciones de productos configurables.
TargetRule
-
Se ha mejorado el rendimiento de la página de producto en las siguientes condiciones:
- El módulo de regla de destino está instalado
- Se ha implementado la funcionalidad de producto vinculada (productos relacionados, de mejora de ventas y de venta cruzada)
Impuestos
- La aplicación ya no muestra un atributo de impuesto de producto fijo en la tienda de un producto después de que un comerciante lo haya desasignado del conjunto de atributos del producto.
Prueba
- Los errores de PHPUnit 9 se han corregido en las pruebas unitarias. Corrección enviada por Anton Evers en la solicitud de extracción 29244. GitHub-29329
- Se han añadido pruebas unitarias para aprobar un pedido de compra que se ha realizado con un descuento que ha caducado desde entonces. Esto colocará un pedido en el importe total y no actualizará el total del pedido de compra. Corrección enviada por Joan He en la solicitud de extracción 18. GitHub-204
SynchronizeFilesInterface
ahora está cubierto por pruebas de integración. Corrección enviada por jmonteros422 en la solicitud de extracción 29493. GitHub-1742
- Se ha agregado una función a
\Magento\TestFramework\TestCase\WebapiAbstract
que permite la comparación de matrices anidadas grandes de resultados esperados y reales en pruebas y permite a los probadores ignorar claves irrelevantes en el resultado real. Corrección enviada por Jekabs en la solicitud de extracción 29458. GitHub-29498
- Se corrigió la inversión del valor esperado con el valor real en
app/code/Magento/Newsletter/Test/Unit/Model/SubscriptionManagerTest.php
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 29271. GitHub-29283
- Se ha reemplazado el uso de
ObjectManager
para crear instancias de clases durante la prueba por la nueva palabra clave en las pruebas unitarias. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 29272. GitHub-29346
- Se ha agregado cobertura de prueba para estos casos de la mutación
updateCustomer
: fecha de nacimiento no válida, dirección de correo electrónico no válida y apellidos de cliente vacío. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 28304. GitHub-28394
- El cliente de GraphQL
ApiFunctional TestFramework
ahora analiza correctamente los encabezados. GitHub-26425
Tema
- Los temas que se agregan en las reglas del agente de usuario ahora se ven afectados como se espera cuando se ejecuta
bin/magento catalog:images:resize
. Anteriormente, solo los temas asignados a las tiendas se veían afectados cuando se ejecutababin/magento catalog:images:resize
.
Traducción y configuraciones regionales
- La aplicación ya no genera un error cuando un administrador cambia el campo Date durante la creación del producto Administrador o lo guarda cuando la configuración regional del Administrador es china o japonesa. GitHub-24696
- La aplicación ahora comprueba el área (front-end o
adminhtml
) antes de procesar el marcado de traducción en línea. Anteriormente, si se realizaba una llamada de API a/rest/V1/integration/admin/token
con credenciales incorrectas mientras la traducción en línea estaba habilitada, se incluía el marcado de traducción en línea alrededor del mensaje de error en la respuesta de la API. Corrección enviada por Zach Nanninga en la solicitud de extracción 28856. GitHub-28656
- Se han agregado regiones búlgaras a la tabla
directory_country_region
. Corrección enviada por Nikola Lardev en la solicitud de extracción 27957. GitHub-28215
- Ahora se pueden traducir los títulos y botones de los modelos de Administración Clientes > Agregar nueva dirección y Editar producto > Inventario avanzado. Corrección enviada por Sathish Subramanian en la solicitud de extracción 28174. GitHub-28201
- El término FPT ahora se puede traducir en Administradores Tiendas > Configuración > Ventas > Impuestos > Impuestos fijos de productos. Corrección enviada por Vadim Malesh en la solicitud de extracción 28108. GitHub-5477
- La etiqueta de botón Enviar aquí del modal de la dirección de envío del flujo de trabajo de cierre de compra se ha cambiado para que coincida con el caso de camello utilizado para otros botones. Este caso ahora coincide con el que se utiliza en los archivos de traducción. Anteriormente, debido a la discrepancia de mayúsculas y minúsculas, esta etiqueta no se traducía. Corrección enviada por WK en la solicitud de extracción 28547. GitHub-28685
IU
- El vínculo de política de privacidad y cookies del pie de página ahora se muestra como un vínculo activo cuando se muestra la página Política de privacidad y cookies. Corrección enviada por Sathish Subramanian en la solicitud de extracción 28004. GitHub-27985
- Se ha corregido la desalineación del cursor en el área de texto Comentarios de factura de la factura asociada con un pedido que ha seleccionado de Administración Ventas > Pedidos.
- La página Crear nuevo pedido ahora muestra los botones Agregar productos por SKU y Agregar productos según lo esperado.
- La aplicación ahora muestra correctamente la página Editar revisión cuando hay una clasificación de productos disponible para el producto seleccionado.
- La aplicación ahora muestra correctamente la página de edición de administración del cliente en un iPhone que ejecuta Safari.
- Se ha corregido el desplazamiento innecesario en la página Crear nuevo pedido.
- Al hacer clic directamente en el botón Exportar tasas de impuestos de la página Agregar nueva regla fiscal (Tiendas > Reglas fiscales), ahora se descarga el archivo
tax_rates.csv
según lo esperado. Anteriormente, los comerciantes tenían que hacer clic en el borde del botón Exportar tasas de impuestos. Este era un problema conocido en 2.4.0.
- El botón Agregar selecciones a mi carro en la parte inferior del carro de compras ahora funciona según lo esperado. Este era un problema conocido en 2.4.0.
- El botón Actualizar de la sección Productos vistos recientemente de la página Actividades del cliente ahora funciona según lo esperado. Anteriormente, al hacer clic en Actualizar, la lista de productos no se actualizaba y la página se desplazaba.
- La aplicación ahora muestra correctamente el icono de calendario utilizado para seleccionar la fecha de nacimiento de un cliente en la pestaña Condiciones de Clientes > Segmentos > Agregar segmento.
- La sección de resumen de cierre de compra del flujo de trabajo de cierre de compra ya no parpadea cuando un comprador se desplaza por esta página en Internet Explorer 11.x.
- La aplicación ahora muestra correctamente el widget Ordenar por SKU en la página Categoría de la tienda. Anteriormente, el código de HTML de este widget no se representaba y la aplicación no mostraba el vínculo Cargar una lista de SKU.
- Los componentes de la interfaz de usuario que se deshabilitaron usando
this.disabled(true)
ya no aparecen en la tienda. GitHub-29098
- La aplicación ahora muestra correctamente el widget de productos vistos recientemente en la vista móvil. Corrección enviada por Tu Nguyen en la solicitud de extracción 27572. GitHub-27058
- El cambio de posición de un producto respecto al administrador ahora se refleja en la posición del producto en la tienda. Corrección enviada por Oleg Aleksin en la solicitud de extracción 28150. GitHub-28149
- El estilo del formulario de inicio de sesión ahora es coherente con el estilo de otros formularios de la temática En blanco. Se han eliminado estilos innecesarios que establecen el ancho de los campos de entrada de ajuste de control de contenedor. Corrección enviada por Tu Nguyen en la solicitud de extracción 28084. GitHub-28059
- El botón Aceptar de la ventana emergente de confirmación para eliminar el producto del minicarrito ahora se comporta según lo esperado. Corrección enviada por Tu Nguyen en la solicitud de extracción 28083. GitHub-27095
- Los elementos de la galería de productos ya no parpadean al cargar la página. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 27871. GitHub-28339
- La clase CSS que controla el ancho de campo ahora se aplica como se espera para el elemento Hora de inicio en todo el administrador. Corrección enviada por Shankar Konar en la solicitud de extracción 29511. GitHub-29496
- La etiqueta de texto Términos y condiciones ahora puede mostrar correctamente cadenas de texto más largas. Corrección enviada por Bartłomiej Szubert en la solicitud de extracción 29413. GitHub-24060
- El título de la página de error de pedido se ha reescrito para garantizar su precisión. Anteriormente, cuando un comprador cancelaba un pedido, la aplicación mostraba una página con este título:
We received your order!
. Corrección enviada por Angelo Romano en la solicitud de extracción 29410. GitHub-29416
- El número total de artículos cancelados en la página de vista de pedidos cancelados ahora se identifica correctamente en la página de vista de pedidos cancelados. Anteriormente, este campo se denominaba Vencimiento total. Corrección enviada por Madhu Rajawat en la solicitud de extracción 27516. GitHub-26191
- El botón de alternancia en la página Crear producto configurable ahora funciona según lo esperado. Corrección enviada por Tu Nguyen en la solicitud de extracción 28032. GitHub-22702
- El icono de bloque de propiedades de atributo avanzadas de la página Propiedades de atributo avanzadas ahora se comporta como se espera. Corrección enviada por Tu Nguyen en la solicitud de extracción 28032. GitHub-26022
- La sección Administración de la página de configuración del sistema ahora se expande para mostrar los campos obligatorios como se espera cuando intenta guardar los ajustes de configuración de un módulo nuevo. Corrección enviada por Bartłomiej Szubert en la solicitud de extracción 28285. GitHub-26427
- Se corrigió el comportamiento de la lupa cuando el modo está establecido en
inside
. Corrección enviada por Sean van Zuidam en la solicitud de extracción 29077. GitHub-29076
- Se ha corregido el ancho del campo de entrada, distraídamente largo, que se producía cuando un comprador escribía una dirección de correo electrónico no válida en el campo de suscripción del pie de página. Corrección enviada por Dipesh Rangani en la solicitud de extracción 27106. GitHub-27099
- Ya no aparece un error
Uncaught ReferenceError
en la consola de desarrollo al agregar una etiqueta nueva y mover el cursor del ratón sobre ella. Corrección enviada por Nazar Klovanych en la solicitud de extracción 29392. GitHub-1700
- Se eliminó una prueba
AdminAnalytics
que no se usa (TrackingScriptTest
). Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 28605. GitHub-28850
- Se han resuelto los problemas con la serialización y la no serialización de propiedades estáticas al ejecutar pruebas consecutivas. Corrección enviada por Pavel Bystritsky en la solicitud de extracción 26175. GitHub-28319, GitHub-29313
Reescrituras de URL
-
Al mover una vista de tienda a otro sitio web, las direcciones URL ya no se restablecen. Anteriormente, la aplicación regeneraba incorrectamente el CMS y reescribía la URL del producto.
-
Ahora puede previsualizar correctamente la programación de ensayo de un bloque CMS. Anteriormente, la aplicación arrojaba un error grave.
- La aplicación ahora conserva las reescrituras de URL del catálogo existentes según lo esperado cuando se asigna una vista de tienda a una tienda diferente. Anteriormente, la aplicación eliminaba las reescrituras de URL específicas del almacén.
Barniz
- El reinicio del barniz ya no provoca errores 503. Corrección enviada por Ihor Sviziev en la solicitud de extracción 28137. GitHub-24353
Bóveda
- La aplicación ya no guarda los números de la tarjeta de crédito cuando la casilla de verificación Guardar para uso posterior de la sección de pago del flujo de trabajo de pago no está seleccionada.
Visual Merchandiser
- La aplicación ahora muestra las existencias de origen en lugar de las existencias de producto predeterminadas cuando se ordenan los productos en Visual Merchandiser y el inventario está habilitado.
Marco de API web
- Las facturas creadas con REST ahora incluyen información de tarjeta regalo similar a las facturas creadas en el Administrador. Anteriormente, al usar el POST
/V1/order/:id/invoice
para facturar el pedido no se mostraba el código de tarjeta regalo ni el importe de tarjeta regalo aplicado.
- Los comerciantes con varios sitios web ahora pueden utilizar la API de REST para crear y actualizar productos, preservando al mismo tiempo la herencia de imágenes y funciones de imagen. Anteriormente, cuando un comerciante utilizaba la API de REST para crear y actualizar productos, y se actualizaba un producto para la vista de tienda, y las funciones de imagen predeterminadas se cargaban y guardaban para esa vista de tienda. Como resultado, las funciones de imagen de vista de tienda dejaron de heredar del ámbito predeterminado después de la actualización.
- Una cuenta de usuario de integración sin ámbito ahora puede acceder a un recurso a través de la API de REST cuando los permisos de recursos permiten el acceso.
- Los filtros de criterios de búsqueda ahora funcionan según lo esperado para los atributos de producto que se utilizan durante la creación de un producto configurable. GitHub-29126
- El identificador del grupo de clientes se ha validado para las solicitudes del POST
/rest/V1/customers
. Anteriormente, la aplicación no mostraba un mensaje de error cuando se usaba ungroup_id
no válido en estas solicitudes. Corrección enviada por Vadim Malesh en la solicitud de extracción 28903. GitHub-28064
- Las sesiones PHP no se crean de forma predeterminada para llamadas REST anónimas. Anteriormente, las sesiones se iniciaban incluso cuando eran innecesarias. Corrección enviada por Maciej Pawłowski en la solicitud de extracción 26032. GitHub-7213
- El uso de varios extremos REST para actualizar pedidos que contienen opciones personalizadas ya no elimina la información de las opciones personalizadas. Anteriormente, los valores de
info_buyRequest
se eliminaban. Corrección enviada por Vadim Malesh en la solicitud de extracción 28483. GitHub-22431
- El uso de la GET
V1/customers/me
ahora respeta la configuración de Compartir cuentas de cliente (Administración Tiendas > Configuración > Clientes > Configuración de cliente > Opciones de uso compartido de cuentas) al recuperar información de usuario. Corrección enviada por Pavel Bystritsky en la solicitud de extracción 28213. GitHub-26089
- Los atributos de extensión relacionados con la dirección se pueden establecer como matrices de datos. Anteriormente, la aplicación arrojaba un error cuando una solicitud del POST contenía
extension_attributes
se envió aestimate-shipping-methods
. Este error, introducido por una confirmación anterior, afectaba a cualquier atributo de extensión establecido enMagento\Quote\Api\Data\AddressInterface
que no fueran objetos. Corrección enviada por Alexander Menk en la solicitud de extracción 27338. GitHub-26682
- Ahora puede especificar un solo campo al actualizar un cliente con el extremo del PUT
V1/customers/:id
. Anteriormente, el punto de conexión requería que especificara el correo electrónico del cliente y otros campos necesarios para crear un cliente. Corrección enviada por Vadim Malesh en la solicitud de extracción 28332. GitHub-21237
Restricciones de sitio web
- La activación de la restricción del sitio web ya no bloquea las solicitudes de ESI de Varnish para los clientes que han iniciado sesión como invitados. Anteriormente, estos invitados no podían acceder al menú principal de la página principal.
- La aplicación ahora carga la página de inicio del producto como se espera cuando las restricciones del sitio web están habilitadas.
Lista de deseos
- Ahora puede utilizar la función de búsqueda de listas de deseos para encontrar un producto en una lista de deseos pública en implementaciones en las que se habilita la compatibilidad con varias listas de deseos. Anteriormente, después de que un cliente usara la búsqueda en la lista de artículos deseados para encontrar un producto, seleccionarlo y hacer clic en Agregar al carro, la aplicación no agregó el producto al carro y mostró este error:
Invalid Form Key. Please refresh the page
.
- Los clientes ahora pueden cambiar la cantidad de un producto en una lista de artículos deseados desde la propia lista de artículos deseados. Anteriormente, la aplicación no actualizaba la cantidad del producto y no mostraba ningún mensaje.
- Los clientes ahora pueden cambiar la cantidad de un producto agrupado en una lista de artículos deseados desde la propia lista de artículos deseados. Anteriormente, la aplicación no actualizaba la cantidad del producto ni mostraba un mensaje.
- La página Categoría de la tienda ahora muestra el widget de búsqueda de la lista de deseos según lo esperado.
- Los polirellenos de
Map
,WeakMap
,FormData
yMutationObserver
ahora se cargan solamente según sea necesario. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28330 y Mateusz Krzeszowiak en la solicitud de extracción 27618. GitHub-28377, GitHub-28382
- El proceso de actualización de la lista de artículos deseados ahora admite la actualización simultánea de un artículo de la lista de artículos deseados y su descripción. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 28222. GitHub-28261
- La aplicación ahora valida correctamente el máximo permitido de listas de deseos que un comprador puede crear. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 247 en el repositorio privado partners-magento2ee.
- Los administradores ahora pueden configurar un producto configurable que un cliente haya agregado a una lista de deseos desde una tienda no predeterminada. Anteriormente, cuando el cliente también había agregado el producto configurable desde un almacén no predeterminado, la aplicación arrojaba un error.
- Se ha añadido una prueba para compartir la lista de deseos de un cliente con más correos electrónicos de los permitidos. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28641. GitHub-28720
- Se ha añadido una prueba para eliminar elementos de la lista de deseos de un cliente como usuario administrador. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28632. GitHub-28721
- Se ha añadido una prueba para deshabilitar la funcionalidad de la lista de deseos. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28635. GitHub-28744
- Se ha añadido una prueba para el uso de direcciones de correo electrónico no válidas al compartir listas de deseos de clientes.
StorefrontShareWishlistEntityTest
se ha refactorizado.StorefrontCustomerShareWishlistActionGroup
se ha desaprobado. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28330. GitHub-28377
- Se ha añadido una prueba para compartir la lista de deseos de un cliente que supera el límite de longitud de texto permitido. Corrección enviada por Dmitry Tsymbol en la solicitud de extracción 28812. GitHub-28969
Problemas conocidos
Problema: La nueva característica CAPTCHA para el cierre de compra no funciona como se esperaba en la página Realizar pedido cuando se usan proveedores de pago de terceros. Los comerciantes que ejecuten 2.3.6 o 2.4.1 y que hayan habilitado la protección CAPTCHA en la página Colocar frente de tienda de pedidos verán este error al realizar la comprobación con un proveedor de pagos de terceros como PayPal: Please provide CAPTCHA code and try again
. Solución alternativa: Ya está disponible una solución para este problema. Consulte el CAPTCHA de Adobe Commerce v2.3.6/2.4.1 en el artículo de la base de conocimiento del cierre de compra no funciona. También se incluirá una corrección en nuestro próximo parche trimestral (Q12021).
Problema: los usuarios sin privilegios de administrador no pueden configurar actualmente su acceso personal de 2FA. 2FA incluye dos funciones ACL. Una función afecta a la configuración global del sistema y solo es necesaria al configurarlo. La segunda función ACL afecta a las cuentas 2FA de usuario individual. Un usuario administrador debe configurar este segundo tipo de ACL 2FA. Solución alternativa: una vez que el usuario ha iniciado sesión y ha visto la pantalla Acceso denegado, puede visitar https://<magento store>/<admin_path>/tfa/tfa/requestconfig/
para forzar la configuración. Nota: No se recomienda deshabilitar la configuración de seguridad. Sin embargo, esta solución solo es eficaz cuando las claves secretas de URL de administración están desactivadas.
Problema: El botón Crear una cuenta de la página Crear nueva cuenta permanece deshabilitado si un comprador ha especificado datos no válidos. Esto evita que los compradores vuelvan a intentar crear una cuenta después de cometer un error. Solución alternativa: aplique el parche MC-38509
. También se incluirá una corrección en nuestras próximas versiones trimestrales (2.4.2, 2.4.1-p1 y 2.3.6-p1), que se lanzarán en el primer trimestre de 2021. Consulte el artículo de la base de conocimiento 2.4.1 y 2.3.6 Crear un botón de cuenta deshabilitada revisión. GitHub-30513
Problema: los comerciantes no pueden iniciar sesión en dotdigital desde el administrador en Safari cuando dotdigital está habilitado. Ver Es imposible iniciar sesión en dotdigital a través del panel de administración cuando la cuenta dotdigital está habilitada Artículo de la Base de conocimiento.
Problema: la validación de direcciones de vértice no funciona durante el pago cuando el comprador selecciona una dirección de envío que difiere de la dirección de facturación. El problema se solucionará en la versión 2.4.2. Ver el problema conocido de 2.4.1: el mensaje de validación de direcciones de vértice no desaparece después de actualizar el artículo de Knowledge Basede la dirección.
Problema: la aplicación muestra una página vacía cuando un comerciante guarda un formulario de Page Builder dotdigital en el explorador Safari. Solución alternativa: vuelva a cargar la página para aplicar los cambios. Ver el problema conocido de 2.4.1: página vacía después de guardar el formulario de dotdigital Page Builder Artículo de la base de conocimiento.
Problema: En ciertas condiciones, la aplicación inicia sesión automáticamente en los clientes a cuentas de Amazon usadas anteriormente, en lugar de pedirles que inicien sesión durante el cierre de compra con Amazon Pay. Consulte el problema conocido 2.4.1: no se puede cambiar la cuenta de Amazon en el artículo de la Base de conocimiento de Google Chrome.
Problema: la aplicación muestra brevemente un mensaje de error en la página de facturación del flujo de trabajo de pago cuando se seleccionan el pago de Braintree de PayPal y el envío de direcciones múltiples. Ver el 2.4.1 problema conocido: aparece un error al cerrar la compra con el Braintree de PayPal artículo de la Base de conocimiento.
Problema: la aplicación muestra un mensaje de error no informativo cuando un cliente invitado intenta realizar un pedido con PayPal a través del Braintree cuando el cierre de compra de un invitado está deshabilitado. Ver el problema conocido de 2.4.1: mensaje de error no informativo durante el cierre de compra de un invitado usando Paypal a través del artículo de la Base de conocimiento Braintree.
Contribuciones comunitarias
Agradecemos a la comunidad Magento Open Source en general y quisiéramos agradecer sus aportaciones a esta versión. Consulte las siguientes maneras de obtener información sobre las contribuciones de la comunidad a nuestras versiones actuales:
-
Si un miembro de la comunidad ha proporcionado una corrección para esta versión, identificamos la corrección en la sección Problema corregido de estas notas con la frase "Corrección proporcionada por el miembro de la comunidad".
-
El equipo de ingeniería de la comunidad Colaboradores Magento mantiene una lista de las principales personas y socios que aportan contribuciones 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, la 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. En esta tabla se enumeran las solicitudes de extracción externas, el número de problema de GitHub asociado a ellas (si está disponible) y el miembro de la comunidad que contribuyó con la solicitud de extracción.
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.1 mediante Composer.
Kits de herramientas de migración
La herramienta de migración de datos ayuda a transferir los datos del almacén de Magento 1.x existente al Magento 2.x. Esta interfaz de línea de comandos incluye funciones de verificación, seguimiento de progreso, registro y prueba. Para obtener instrucciones de instalación, consulte Instalar la herramienta de migración de datos. Considere la posibilidad de explorar o contribuir al repositorio de migración de datos.
El Kit de herramientas de migración de código ayuda a transferir las personalizaciones y extensiones de almacén de Magento 1.x existentes a Magento 2.x. La interfaz de línea de comandos incluye secuencias de comandos para convertir módulos y diseños de Magento 1.x.