Notas de la versión de Adobe Commerce 2.4.0
Adobe Commerce 2.4.0 incorpora compatibilidad con PHP 7.4, Elasticsearch 7.6.x y MySQL 8.0. Los cambios sustanciales en la seguridad incluyen la habilitación de la autenticación de doble factor en el Administrador de forma predeterminada. Las mejoras de B2B incluyen el nuevo flujo de trabajo Aprobación de pedidos.
Con esta versión, las integraciones de métodos de pago Authorize.Net, eWay, CyberSource y Worldpay se han eliminado del código principal. Los comerciantes deben migrar a las extensiones oficiales disponibles en el Commerce Marketplace.
Esta versión incluye todas las mejoras en la calidad principal incluidas en la versión 2.3.5-p1, más de 100 nuevas correcciones en el código principal y 30 mejoras de seguridad. Incluye la resolución de 226 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 Inventory management y GraphQL.
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 septiembre de 2022. 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.3.5-p2). El parche 2.3.5.2 (Composer package 2.3.5-p2) es un parche de seguridad que proporciona correcciones para vulnerabilidades que se han identificado en nuestra versión trimestral anterior, 2.3.5-p1. Todas las correcciones rápidas aplicadas a la versión 2.3.5 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 Inicio rápido de la instalación 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, Inventory management 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 30 correcciones de seguridad y mejoras de seguridad de la plataforma.
Más de 30 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
-
Implementación de 2FA para cuentas de administrador, cuentas de usuario de magento.com y acceso a Cloud SSH
-
Protegiendo su cuenta de administrador. Ahora se requiere autenticación de doble factor (2FA) para el administrador. Los usuarios administradores deben configurar primero su 2FA antes de iniciar sesión en el administrador a través de la interfaz de usuario o una API web. 2FA está habilitado de forma predeterminada. Se recomienda encarecidamente no deshabilitar el módulo 2FA. Este paso adicional de autenticación dificulta que los usuarios malintencionados inicien sesión en el administrador sin autorización. Ver Autenticación de doble factor (2FA).
-
Protegiendo su cuenta. La autenticación de doble factor (2FA) proporciona un nivel de seguridad adicional y opcional para proteger mejor su cuenta de magento.com de usuarios no autorizados que podrían querer usar su cuenta de formas que usted no desea. Ver Proteger tu cuenta.
-
Protección del acceso SSH en la nube. El Adobe en la infraestructura en la nube proporciona aplicación de autenticación de varios factores (MFA) para administrar los requisitos de autenticación para el acceso SSH a los entornos en la nube. La autenticación de varios factores para 2FA no está habilitada de manera predeterminada en un proyecto. El Adobe recomienda habilitar esta función. Póngase en contacto con Soporte técnico para obtener ayuda. Consulte Habilitar la autenticación multifactor para el acceso SSH.
-
-
El modo estricto de filtro de plantilla ahora está habilitado de manera predeterminada. Los componentes (incluidas las páginas y los bloques de CMS) que utilizan el filtro de plantilla en el modo heredado pueden ser vulnerables a la ejecución remota de código (RCE). Habilitar el modo estricto de forma predeterminada garantiza que los ataques RCE no se puedan habilitar deliberadamente.
-
La representación de datos para los proveedores de datos de la interfaz de usuario está deshabilitada de manera predeterminada. Esto elimina la oportunidad de que usuarios malintencionados ejecuten JavaScript arbitrario.
-
Nueva
\Magento\Framework\Escaper
clase. Esta clase se proporciona para.phtml
plantillas y las clases PHP responsables de generar el HTML. Esta clase contiene métodos de saneamiento de HTML relevantes para varios contextos. La variable local$escaper
está disponible dentro de.phtml
plantillas y se debe usar en lugar de la variable obsoleta$block->escape{method}
. Use$escaper
en lugar de$block
, ya que el uso de$block->escape{method}
ha quedado obsoleto. -
Compatibilidad con el archivo security.txt. Este archivo es un archivo estándar del sector en el servidor que ayuda a los investigadores de seguridad a informar de posibles problemas de seguridad a los administradores del sitio.
-
Mejoras en la compatibilidad con la Política de seguridad de contenido (CSP).
SecureHtmlRenderer
se ha agregado al marco de trabajo y está disponible en.phtml
plantillas para incluir en la lista blanca etiquetasstyle
yscript
en línea. Los scripts y estilos en línea no están permitidos con la configuración CSP predeterminada, que los archivos XML pueden anular.
Actualizaciones de plataforma
Las siguientes actualizaciones de la plataforma ayudan a mejorar la seguridad y el rendimiento del sitio web. Las versiones compatibles de PHP y PHPUnit, Elasticsearch, MySQL y otras dependencias se enumeran en requisitos de pila tecnológica.
-
Se introdujo compatibilidad con PHP 7.4 y PHP 7.1 y 7.2 quedaron obsoletas. 2.4.0 incorpora soporte para PHP 7.4.
-
Compatibilidad con PHPUnit 9.x y desaprobación de PHPUnit 6.5. PHP 7.4 requiere el uso del último marco de pruebas PHPUnit, que es PHPUnit 9.x. Los proveedores de extensiones de Commerce Marketplace deben confirmar que todas las nuevas versiones de extensión son compatibles con PHP 7.4 y que todas las pruebas de unidad e integración se han configurado para ejecutarse con PHPUnit 9.
-
Compatibilidad con Elasticsearch 7.6.x. Elasticsearch 7.6.x es ahora el motor de búsqueda de catálogo predeterminado para Adobe Commerce y Adobe Commerce. No puede instalar ni actualizar a la versión 2.4.0 sin instalar también Elasticsearch 7.6.x. Se ha eliminado el código de la versión 2.x del Elasticsearch. Las versiones 5.x y 6.x de Elasticsearch han quedado obsoletas y ya no son compatibles. Consulte Requisitos previos del motor de búsqueda.
-
Compatibilidad con MySQL 8.0. La versión 2.4.x es compatible con MySQL 8.x. (La versión 2.4.0 se ha probado con MySQL 8.0.20). Se recomienda a los comerciantes migrar sus implementaciones a MySQL 8.x para aprovechar su rendimiento, seguridad y fiabilidad mejorados. Aunque MySQL 5.7 sigue siendo compatible con el Magento 2.4.x, MySQL 5.6 ya no es compatible. No se puede alojar 2.4.x con una base de datos MySQL 5.6. Consulte MySQL.
-
Compatibilidad con MariaDB 10.4. La compatibilidad con MySQL 8.0 ofrece a los comerciantes la oportunidad de implementar MariaDB 10.4 con Adobe Commerce. Aunque los comerciantes aún pueden utilizar MariaDB 10.2 con 2.4.0, recomendamos actualizar a MariaDB 10.4 para mejorar el rendimiento y la fiabilidad. MariaDB 10.0 y 10.1 ya no son compatibles (como resultado de la eliminación de la compatibilidad con MySQL 5.6 en esta versión).
-
Eliminación del motor de búsqueda del catálogo MySQL. El motor de búsqueda MySQL se ha eliminado de la versión 2.4.0 y se ha sustituido por Elasticsearch como motor de búsqueda predeterminado. Elasticsearch ofrece funciones de búsqueda superiores, así como optimizaciones del rendimiento del catálogo. Todos los comerciantes deben tener un Elasticsearch para instalar e implementar la versión 2.4.0. Consulte Comprobar que el Elasticsearch está instalado.
-
Migración de dependencias de Zend Framework al proyecto Laminas para reflejar la transición de Zend Framework al proyecto Laminas de la Fundación Linux. Zend Framework ha quedado obsoleto. Ver la migración de Zend Framework al proyecto Laminas publicación DevBlog.
-
La descomposición de controladores permite a los desarrolladores de extensiones implementar ActionInterface directamente sin clases de "supertipo de capa". Ver la publicación de DevBlog Descomposición de controladores. Mejora iniciada por Vinai Kopp en la solicitud de extracción 16268 y finalizada por Lukasz Bajsarowicz en la solicitud de extracción 26778. GitHub-9582
-
Eliminación de la integración principal del código de protección contra fraude Signifyd. Esta función principal ya no es compatible. Los comerciantes deberían migrar a la extensión Signifyd Fraud & Chargeback Protection que está disponible en el Commerce Marketplace.
-
El módulo del Braintree principal se ha eliminado de la base de código. El módulo Pagos a Braintree ahora proporciona el mismo conjunto de funciones. Ver Pagos de Braintree.
-
El explorador Internet Explorer 11.x ya no es compatible.
Mejoras de infraestructura
Esta versión contiene mejoras en la calidad principal, que mejoran la calidad del marco de trabajo y estos módulos: Cuenta de cliente, Catálogo, CMS, Importación, Carro y cierre de compra, y B2B.
-
Eliminación de la integración principal de los métodos de pago de terceros. Con esta versión, la integración del método de pago Authorize.Net se ha eliminado del código principal. Los comerciantes deben migrar a la extensión oficial que está disponible en el Commerce Marketplace. Ver la publicación de devblog Deprecation of payment integrations.
-
Compatibilidad con la búsqueda de palabras parciales para el Elasticsearch (nuevo motor de búsqueda predeterminado). El Elasticsearch ahora admite el uso de palabras parciales en los términos de búsqueda para nombres de productos y SKU al utilizar la búsqueda rápida. Esta capacidad era compatible con el motor de búsqueda MySQL, que ha quedado obsoleto y sustituido por Elasticsearch en esta versión.
-
Actualización del SDK de JavaScript de PayPal. Hemos migrado la integración de Pago y envío de PayPal Express al SDK de JavaScript de PayPal más reciente, un SDK que recopila y pasa automáticamente a PayPal los parámetros de riesgo necesarios. El comportamiento de la forma de pago PayPal Express Checkout permanece inalterado. Sin embargo, la actualización de este SDK a la versión más reciente permite a los comerciantes acceder a las últimas funciones y mejoras de seguridad.
-
Desaprobación y eliminación del Asistente para configuración web. Debe utilizar la línea de comandos para instalar o actualizar la versión 2.4.0. Consulte Magento de instalación.
-
Complemento de actualización del compositor. El complemento Composer optimiza el proceso de actualización al resolver los cambios que deben realizarse en el archivo del proyecto raíz
composer.json
antes de actualizar a una nueva versión. Este complemento protege contra la sobrescritura de las personalizaciones. Consulte Actualizar mediante el complemento raíz del compositor. -
Compras asistidas por el vendedor. Esta función permite a los comerciantes ver la tienda en nombre de sus clientes. Los clientes optan por permitir el acceso de tienda a sus cuentas. Esta característica desarrollada por la comunidad incluye una extensión original desarrollada por MAGEFAN. Ver Compras asistidas por el vendedor. Las funciones incluyen:
- ACL para controlar qué administradores pueden iniciar sesión en las cuentas de cliente se pueden configurar por sitio web
- Compatibilidad con varios sitios web y ámbitos de cuenta de cliente
- Los pedidos realizados en nombre de los clientes se registran en la tienda y en el administrador
- Todas las sesiones se destruyen tras el cierre de sesión del administrador y los administradores no pueden acceder a las contraseñas de los clientes.
Mejoras de rendimiento
-
Mejoras en la lógica de invalidación de la sección de datos del cliente. Esta versión presenta una nueva forma de invalidar todos los datos de secciones de clientes que evita un problema conocido con el almacenamiento local cuando las invalidaciones de
sections.xml
personalizadas están activas. (Anteriormente, el contenido privado (almacenamiento local) no se rellenaba correctamente cuando tenía un etc/frontend/sections.xml personalizado con invalidaciones de acción). Ver contenido privado. -
Varias optimizaciones para mejorar el rendimiento. Las mejoras minimizan el número de consultas a Redis que se realizan en cada solicitud. Estas optimizaciones incluyen:
-
Reducción del tamaño de las transferencias de datos de red entre Redis y Magento
-
Reducción del consumo de ciclos de CPU de Redis al mejorar la capacidad del adaptador para determinar automáticamente lo que debe cargarse
-
Reducción de las condiciones de carrera en las operaciones de escritura de Redis
Consulte Usar Redis para la página y la caché predeterminada y Configurar el almacenamiento en caché.
-
-
Se mejoró el almacenamiento en caché de los resultados de las consultas SQL en las tablas de inventario. Estas mejoras incluyen:
-
Almacenamiento en caché de consultas SQL en la tabla
inventory_stock_sales_channel
(1 consulta en lugar de 16) -
Almacenamiento en caché del resultado de las consultas en la tabla
inventory_stock
(1 consulta en lugar de 16)
-
-
Mejora de hasta un 25 a un 30% en el rendimiento del complemento de pedidos rápidos.
-
Los comerciantes ahora pueden usar carga diferida para cargar imágenes.
Integración de Adobe Stock v2.0
Capacidad de obtener licencias de vistas previas de imágenes de archivo de la Galería multimedia. Los comerciantes ahora pueden encontrar cualquier imagen de vista previa de Adobe Stock en la Galería de medios, lo que reduce el número de pasos necesarios para obtener una licencia de la imagen de vista previa de stock.
Galería de medios nuevos
Este reemplazo de la antigua Galería multimedia ofrece una nueva interfaz en la que se pueden realizar búsquedas de recursos multimedia. Los administradores ahora pueden buscar, filtrar y ordenar imágenes hasta 30 veces más rápido de lo que lo podían hacer en la versión anterior de esta función. Los comerciantes pueden utilizar esta herramienta para evaluar el uso de imágenes de tienda. Los desarrolladores de extensiones deben tener en cuenta que las extensiones desarrolladas para Media Gallery no funcionarán como se espera con la nueva Media Gallery.
Page Builder
Page Builder ahora es compatible con PHP 7.4.
Inventory management
Las mejoras de Inventory management para esta versión incluyen compatibilidad con la recogida en tienda y con el paquete de soporte de productos. Consulte Notas de la versión de Inventory management para obtener un análisis más detallado de las correcciones de errores recientes de Inventory management.
GraphQL
Las mejoras de GraphQL incluyen:
- La consulta
pickupLocations
admite la función de recogida en tienda de inventario categories
consulta devuelve una lista de categorías que coinciden con un filtro especificado. Esta consulta difiere de la consultacategoryList
en que admite paginación.- La mutación
reorderItems
permite que un usuario que ha iniciado sesión añada todos los productos de un pedido anterior al carro de compras.
Consulte la Guía para desarrolladores de GraphQL para obtener más información sobre esta y otras mejoras. Consulte Notas de la versión para obtener un análisis detallado de las correcciones de errores recientes de GraphQL.
PWA Studio
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
Función de flujo de trabajo de aprobación de pedidos para B2B. Las aprobaciones de pedidos permiten a los responsables de las organizaciones compradoras configurar reglas de aprobación para sus compradores. Ver Reglas de aprobación. Las funciones incluyen:
- Configuración de autoservicio de reglas de aprobación únicas para cada cuenta de compañía
- Criterios de regla que pueden basarse en el importe del pedido, el número de artículos de línea o el coste del envío con umbrales configurables
- Permisos personalizables para todos los aspectos de la función
- Vista de tienda rápida de pedidos de compra que requieren aprobación
- Registro del historial completo de las acciones que se han realizado en cada pedido de compra
- Notificación por correo electrónico para las partes relevantes durante todos los pasos del proceso de aprobación.
Esta versión también incluye varias correcciones de errores. Ver Notas de la versión B2B.
Marco de prueba funcional (MFTF)
MFTF v3.0.0 incluye estas nuevas características e incluye soporte para PHP 7.4 y PHPUnit 9:
- Ayudantes MFTF, que pueden crear acciones personalizadas fuera del marco de prueba
- actualizaciones de esquema para entidades de prueba
- subcarpetas en módulos de prueba
- sintaxis de afirmación anidada
- comprobación estática que comprueba e informa de referencias a entidades de prueba obsoletas
Esta versión también elimina las acciones obsoletas y actualiza los scripts que se añadieron a las pruebas de actualización a los requisitos de versión principales de MFTF.
Mejoras en las extensiones desarrolladas por el proveedor
Esta versión incluye extensiones desarrolladas por proveedores externos. Introduce mejoras tanto de calidad como de experiencia de usuario en estas extensiones y una expansión de la cobertura de MFTF.
Los proveedores de extensiones de Commerce Marketplace deben confirmar que sus extensiones son compatibles con PHP 7.4 al publicar una nueva versión de su extensión para 2.4.0.
dotdigital
Esta versión incluye las siguientes mejoras:
- Los valores de atributos del cliente capturados por cualquier tipo de entrada (por ejemplo, desplegable o de selección múltiple) ahora se sincronizan correctamente como campos de datos.
- Los datos de perspectivas del carro de compras ahora se envían para todas las ofertas activas, incluso si no contienen elementos. Esto permite a los comerciantes salir de los contactos de un programa si vacían el carro de compras.
- Los comerciantes ahora pueden sincronizar el nombre del sitio web, el nombre de la tienda y el nombre de la vista de la tienda por campos de datos individuales.
- Las sincronizaciones de listas de deseos, revisiones y pedidos ahora buscan el límite de sincronización de datos transaccionales solo una vez.
- Se ha mejorado el resultado del registro de la clase Client y ahora es coherente en todos los métodos del contenedor de API.
- Los productos configurables ahora tienen una cifra de stock que es la suma de sus productos secundarios.
- Un nuevo complemento detecta las actualizaciones de stock realizadas por código de terceros (fuera del administrador).
- Se ha actualizado la información de asignación de datos y configuración de correo electrónico transaccional.
Amazon Pay
Esta versión incluye:
- Actualizaciones en listas de permitidos CSP
- Capacidad para realizar varias autorizaciones para un pedido de varios artículos
- Compatibilidad con direcciones en japonés
Pagos de Braintree
Esta extensión agrupada sustituye a la integración de Braintree principal, que se ha eliminado en esta versión. Ver Pagos de Braintree.
Klarna
Esta versión incluye nuevas opciones de mensajería en el sitio para ayudar a los compradores a comprender las opciones de crédito y financiación disponibles. También incluye mejoras en lo siguiente:
- devoluciones
- Eficiencia de API
- cookies y pruebas unitarias
- descuentos
- Las opciones de configuración ahora contienen la sección Mensajería en el sitio para el control de la visualización de la tienda de mensajes promocionales de Klarna
Vértice
Esta versión de Vertex incluye las siguientes nuevas funciones y mejoras:
- Mejoras en la experiencia del usuario de configuración de administración
- Reemplazo de scripts de instalación y actualización con archivos y parches de esquema XML
- Eliminación de código obsoleto (
ApiClient
yClientInterface
)
Yotpo
Las valoraciones y críticas de Yotpo están integradas con Page Builder.
Problemas solucionados
Hemos corregido cientos de problemas en el código principal 2.4.0.
Instalación, actualización e implementación
- Ahora puede quitar correctamente un sitio web junto con las opciones de configuración específicas del ámbito del sitio web en
app/etc/config.php
según lo esperado. Anteriormente, al intentar quitar el sitio web, se produjo un error en la operación y la aplicación mostró este error:The website with code xxx that was requested wasn't found. Verify the website and try again
. Además, la aplicación mostró este error en la tienda:Config files have changed. Run app:config:import or setup:upgrade command to synchronize configuration
. GitHub-24061
- Las opciones de configuración que están deshabilitadas en
index.php
ya no se pueden editar desde el Administrador.
- La instalación de Adobe Commerce ahora se completa correctamente y las tiendas se crean según lo esperado cuando la configuración de la tienda está predefinida en
config.php
.
\Magento\Store\App\Config\Source\RuntimeConfigSource::getEntities
se ha refactorizado para reducir el número deSHOW TABLE STATUS
consultas que realiza. (Este cambio revierte al comportamiento de esta función mostrado en 2.3.3.)
- Los scripts de datos ya no se vuelven a ejecutar cuando intenta actualizar la base de datos ejecutando
bin/magento setup:upgrade
. Anteriormente, los scripts de actualización se volvían a ejecutar innecesariamente, lo que afectaba al rendimiento. GitHub-19469
-
La aplicación ahora muestra los siguientes comportamientos cuando se interrumpe la conexión con Redis. Anteriormente, la aplicación no volvió a cargar la página actual y mostró este error:
An error has happened during application run. See exception log for details
.- Las sesiones de administración y tienda caducan
- Los usuarios administradores y de tienda deben volver a iniciar sesión
- Los datos de la sesión se guardaron en
var/session/
- No se registran errores ni excepciones.
- El comando
bin/magento setup:di:compile
ya no genera errores con las clases anónimas. Corrección enviada por Yevhen Sentiabov en la solicitud de extracción 26533. GitHub-26532, GitHub-21555
- Se han resuelto los problemas con la compilación LESS en el tema de Luma de Magento al utilizar un compilador LESS alternativo que el que se envía con la aplicación de forma predeterminada. Corrección enviada por el host de Pieter en la solicitud de extracción 24003. GitHub-23619
- Ya no necesita tener un archivo
env.php
grabable al cambiar al modo de mantenimiento. En su lugar, la aplicación establece los encabezadosno-cache
para todas las solicitudes de front-end en modo de mantenimiento (Cache-Control
). Anteriormente, no se podía habilitar el modo de mantenimiento cuandoenv.php
era de solo lectura y la aplicación intentó deshabilitar el FPC al cambiar al modo de mantenimiento. Corrección enviada por Marco K̦pcke en la solicitud de extracción 25790. GitHub-24229
db-ssl-verify
ya no genera un error de índice no definido durante la configuración deddev
. Corrección enviada por Daniel Ruf en la solicitud de extracción 26763. GitHub-26762
- Las dependencias del Compositor se han actualizado para implementar la caducidad de claves de Redis, lo que ha mejorado el rendimiento de Redis. Corrección enviada por toxix en la solicitud de extracción 25488. GitHub-25487
AdminGWS
- Los administradores con un ámbito de función limitado ahora pueden modificar el texto alternativo y la aplicación guarda esos valores. Si no se permite a un administrador modificar el texto alternativo, el cuadro de texto alternativo aparece atenuado.
Integración de Adobe Stock
- Se han agregado estilos CSS a la visualización de imagen de Adobe Stock para admitir el resaltado de la imagen seleccionada. Corrección enviada por Serhiy Zhovnir en la solicitud de extracción 25864. GitHub-761
- La navegación a través de las imágenes de vista previa de Adobe Stock ya no se activa moviendo el cursor del campo de entrada mediante las teclas de flecha. Corrección enviada por Adarsh Manickam en la solicitud de extracción 27138. GitHub-973
- La aplicación ahora almacena en caché los mensajes en busca de errores que se producen cuando un cliente intenta aplicar un filtro a las imágenes de Adobe Stock. Corrección enviada por Shankar Konar en la solicitud de extracción 26502. GitHub-863
- La aplicación ya no guarda una vista previa de una imagen de Adobe Stock cuando mueve el cursor a la barra de desplazamiento vertical izquierda de la ventana después de hacer clic en Guardar vista previa, pero sin confirmar la operación de guardado. Corrección enviada por Serhiy Zhovnir en la solicitud de extracción 27399. GitHub-1002
Analytics
- El informe de análisis de una tienda ya está disponible como se espera después de cambiar la dirección URL de la tienda. Anteriormente, al intentar acceder al informe después de cambiar la dirección URL, la aplicación mostraba un error 404.
- La sincronización de datos para informes de Analytics ahora está habilitada según lo esperado cuando las suscripciones de AR están habilitadas.
Servidor
- Ahora se pueden obtener vistas previas de las plantillas de correo electrónico (Administrador > Marketing > Comunicaciones > Plantillas de correo electrónico) desde el administrador cuando la minificación de JavaScript esté habilitada. Anteriormente, cuando se intentaba previsualizar una plantilla de correo electrónico, la ventana emergente Vista previa de correo electrónico estaba vacía. GitHub-25068
- Los administradores ahora pueden iniciar sesión en Admin como se espera después de crear una cuenta de administrador con privilegios limitados. Anteriormente, el administrador no era accesible. En su lugar, los usuarios con estos permisos se redirigieron a la tienda con un error 404. Corrección enviada por Eden Duong en la solicitud de extracción 25909. GitHub-25881
- La aplicación ya no duplica datos de SEO, como la clave URL, el meta título, las palabras clave meta y la meta descripción, al duplicar un producto. Corrección enviada por Dasharth patel en la solicitud de extracción 26659. GitHub-26054
- La aplicación ya no genera un error cuando se elimina una imagen de una página al crearla desde Admin > Contenido > Páginas > Agregar nueva página. Anteriormente, la aplicación arrojaba este error en la consola de desarrollador:
500 (Internal Server Error)
. Corrección enviada por Eden Duong en la solicitud de extracción 25924. GitHub-25893
Paquete de productos
- Se ha mejorado el rendimiento de la operación de reindexación de
catalog_product_price
para los productos agrupados.
- Los administradores ya no pueden introducir manualmente una clase de impuestos en el Administrador para un producto agrupado cuando la configuración de Clase de impuestos y Precio dinámico del producto agrupado está deshabilitada para la vista de tienda predeterminada. Anteriormente, cuando un administrador desmarcaba la opción Usar valor predeterminado junto a Clase de impuesto, la aplicación habilitaba la opción, lo que permitía a un administrador introducir otro valor y guardar el producto.
- Los precios de los paquetes de productos ahora se calculan correctamente en las páginas de productos.
- Ahora puede agregar cualquier cantidad de productos agrupados al carro de compras sin errores. Anteriormente, cuando se agregaba un producto agrupado al carro y se navegaba hasta él, la aplicación mostraba este error:
Please correct the quantity for some products
.
Caché
- El esquema
cache.xsd
deMagento\Framework\Cache
se ha refactorizado para que un tipo de caché sin un atributoinstance
ya no genere excepciones cuando se deshabilita un módulo mediante la administración de caché. Anteriormente, cuando se creaba un tipo de caché concache.xml
sin el argumentoinstance
, la aplicación generaba una excepción al intentar deshabilitarla. Corrección enviada por Andrii Beziazychnyi en la solicitud de extracción 27307. GitHub-26224
health_check.php
ya no falla si se configura un motor de caché de base de datos en la implementación. Corrección enviada por Andrii Beziazychnyi en la solicitud de extracción 25722. GitHub-25669
Carro y cierre de compra
- La aplicación ya no genera un error durante la desprotección cuando la opción de configuración Sincronizar con servidor está habilitada. GitHub-23833
- Los botones de opción para los métodos de envío ahora están activados según lo esperado en el flujo de trabajo de cierre de compra.
- La página de revisión de pedidos del flujo de trabajo de cierre de compra ahora se carga correctamente para un pedido que se envía a varias direcciones cuando los Términos y condiciones con la configuración Aplicado manualmente están habilitados. Anteriormente, la página Revisar no pasaba la validación y la aplicación mostraba un error 404.
- La aplicación ahora muestra el icono giratorio mientras los precios se actualizan en el carro de compras.
- La aplicación ahora muestra un mensaje informativo cuando un producto del minicarrito se queda sin existencias antes del cierre de compra. Una vez que hayas eliminado el artículo agotado, la aplicación mostrará el botón Continuar con la compra. Anteriormente, la aplicación no mostraba este botón.
- La aplicación ahora muestra un mensaje de error informativo cuando intenta agregar un producto haciendo clic en Ordenar por SKU cuando el archivo para cargar está dañado. Anteriormente, la aplicación mostraba una página en blanco.
- La aplicación ahora aplica reglas de precio de carro de compras solo a los productos secundarios de paquete que coinciden con los criterios de regla. Anteriormente, la aplicación aplicaba la regla de precio del carro de compras a todos los productos secundarios que pertenecían al producto del paquete.
StorefrontMiniCartSection
se ha reemplazado porStorefrontMinicartSection
en pruebas MFTF. Corrección enviada por Andrii Kalinich en la solicitud de extracción 27955. GitHub-27897
- Se han eliminado las referencias codificadas al componente selector de país en el formulario de dirección de envío. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 25541. GitHub-22416
- La aplicación ya no subraya el icono Eliminar del carro de compras cuando el cursor se pasa por encima del icono mientras ve la tienda en Internet Explorer. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26173. GitHub-26164
- Al cambiar la calle de facturación ya no se cambia la dirección de envío de un cliente cuando se ha seleccionado una sola dirección tanto para la facturación como para la de envío. Corrección enviada por Yurii Tvardyi en la solicitud de extracción 26279. GitHub-26276
- La región de promoción del minicarrito ahora se representa según lo esperado. Corrección enviada por Matti Vapa en la solicitud de extracción 25375. GitHub-25373
Regla de precio del carro
- Las reglas de precios del carro de compras basadas en métodos de pago ahora se aplican durante el flujo de trabajo de cierre de compra. GitHub-24206
- Se ha corregido el comportamiento del elemento de página Selector de fecha en Administración > Marketing > Promociones > Regla de precio de catálogo. Corrección enviada por Hitesh en la solicitud de extracción 26290. GitHub-26289
StorefrontMiniCartSection
ha sido reemplazado porStorefrontMinicartSection
en pruebas MFTF. Corrección enviada por Andrii Kalinich en la solicitud de extracción 27955. GitHub-27897
- Se ha desactivado la cuadrícula de cupones no utilizada en el flujo de trabajo Crear nueva regla de precios del carro de compras. Corrección enviada por Eden Duong en la solicitud de extracción 24471. GitHub-24468
- Al cambiar la calle de facturación ya no se cambia la dirección de envío de un cliente cuando se ha seleccionado una sola dirección tanto para la dirección de facturación como para la de envío. Corrección enviada por Yurii Tvardyi en la solicitud de extracción 26279. GitHub-26276
Catálogo
- La aplicación ahora deshabilita la capacidad de un administrador restringido para cambiar el atributo de cantidad de un producto y deshabilita el inventario avanzado según lo esperado. Anteriormente, solo se veía afectada la visualización del atributo de cantidad y la aplicación cambiaba el valor de cantidad en la base de datos después de guardar el producto.
- La aplicación ya no genera un error cuando cambia el nombre de un producto interconectado que se incluye en una actualización programada. Anteriormente, al intentar guardar el producto con un nombre nuevo, la aplicación mostraba este error:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '3-0-0-2.0000-0' for key 'UNQ_EBC6A54F44DFA66FA9024CAD97FED6C7', query was: INSERT INTO catalog_product_entity_tier_price (all_groups, customer_group_id, qty, value, website_id, percentage_value, row_id) VALUES (?, ?, ?, ?, ?, ?, ?)
- Ahora, los valores de atributo personalizados se pueden guardar según lo esperado desde el administrador.
- La función Productos de vista reciente ahora muestra productos que están asociados solamente con la vista de tienda actual en implementaciones de varias tiendas cuando Tiendas > Configuraciones > Catálogo > Productos vistos o comparados recientemente > Mostrar para actual está establecido en Vista de tienda. Anteriormente, la aplicación mostraba productos vistos recientemente de todos los sitios web, independientemente del sitio web al que estuviera asignado el producto.
- La aplicación ahora muestra imágenes de productos en el minicarrito sin distorsión. Anteriormente, la aplicación ampliaba la imagen en el minicarrito para rellenar toda la anchura y altura del contenedor de imágenes.
- La función
getBasePrice
ahora devuelve un valor flotante como se esperaba en lugar de una cadena.
- La función de comparación de productos ahora funciona según lo esperado. Ahora solo muestra los productos de la lista de comparación del usuario actual.
- Ahora puede asignar una marca de agua predeterminada a una temática. Anteriormente, después de asignar la marca de agua, la aplicación arrojaba un error grave.
- Ahora puede editar correctamente un producto configurable con muchas variantes (aproximadamente 5000) del administrador. Anteriormente, al intentar editar un producto configurable con muchos subproductos, la aplicación mostraba este error:
Warning: DOMDocumentFragment::appendXML(): Entity: line 1: parser error : CData section too big found in /vendor/magento/framework/View/TemplateEngine/Xhtml/Template.php on line 60
- La ordenación en conjuntos de atributos en Administración > Catálogo > Productos ahora se basa en el orden alfabético esperado.
- La función Productos vistos recientemente ahora funciona como se espera en implementaciones de varias tiendas.
- Los administradores con permisos restringidos en Catálogo ahora pueden crear un producto descargable. Anteriormente, los administradores no podían crear un producto descargable y la aplicación arrojaba un error.
- La casilla de verificación Producto en sitios web de la nueva página de producto ahora está habilitada de manera predeterminada para administradores restringidos en implementaciones de varios sitios. Anteriormente, la casilla de verificación del sitio web no predeterminado no estaba preseleccionada y, si el administrador dejaba la casilla de verificación sin seleccionar, la aplicación mostraba un mensaje de error.
addToCart
eventos ahora se rastrean como se espera en la capa de datos. Anteriormente, después de cambiar las opciones configurables de un producto y hacer clic en Agregar al carro, el nuevo eventoaddToCart
no se agregó a la capa de datos.
- El minicarrito y el carro de compras del administrador (Administrador > Clientes > Administrar carro de compras) ahora muestran los precios de productos correctos cuando se aplica una regla de precios de catálogo. Anteriormente, el carro de compras de la tienda mostraba el precio de producto correcto, pero el carro de compras del administrador y el minicarrito mostraban el precio de producto original.
- El filtrado en la columna del sitio web de la cuadrícula de productos de administración ahora funciona según lo esperado. Anteriormente, los resultados de los filtros no mostraban el número correcto de productos, pero mostraban de forma coherente el número total de productos como 1.
- La condición de precio usa
catalog_product_entity_decimal
para filtrar por precio. Sin embargo, esta tabla no contiene registros para productos configurables, dinámicos del paquete y agrupados, porque estos productos no tienen un precio fijo. La tabla correcta que se va a usar para filtrar por precio escatalog_product_index_price
.
- El catálogo de administración y las listas de productos ahora muestran símbolos de moneda en las columnas MSRP, Coste y Precio especial. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27261. GitHub-21910, GitHub-20906, GitHub-20472
- La ventana emergente Agregar precio de grupo de clientes (Administrador > Catálogo > Productos > Nuevo producto > Precios avanzados) ahora se cierra según lo esperado al hacer clic en el icono de cierre. Corrección enviada por Ashna-Jahan en la solicitud de extracción 25759. GitHub-25433
- La descripción de ejemplo proporcionada para la descripción y el título del nuevo producto ya no contiene comillas dobles. Corrección enviada por Nathan Morgan en la solicitud de extracción 25655. GitHub-25654
- La aplicación ya no genera un error cuando intenta filtrar productos en la página Categoría utilizando un precio no válido. Anteriormente, la aplicación registraba este error en el registro del sistema. Corrección enviada por Ihor Sviziev en la solicitud de extracción 25912. GitHub-25911
- Ahora puede navegar por los resultados de búsqueda de categorías de varias páginas. Anteriormente, la aplicación creaba páginas duplicadas de resultados de búsqueda cuando se intentaba usar el botón Atrás para volver a la primera página de resultados. Corrección enviada por Douglas Radburn en la solicitud de extracción 25337. GitHub-14971
- Se corrigió el tipo devuelto a
string|null
para el métodogetSourceModel
en la claseEav\Attribute.php
. Corrección enviada por Mychailo en la solicitud de extracción 25333. GitHub-25278
- Guardar un nuevo producto (duplicado) ya no resulta en la duplicación de imágenes del producto cientos de veces. Corrección enviada por Jeroen en la solicitud de extracción 25875. GitHub-9466
- La aplicación ya no genera un error de JavaScript cuando se elimina un producto con una opción personalizada de tipo
file
durante la creación de un pedido del administrador. Corrección enviada por adrian-martinez-interactive4 en la solicitud de extracción 24843. GitHub-24842
- Si crea un producto sin imagen con
product_page_image_large
en el diseño, la imagen del marcador de posición se mostrará según lo esperado. Anteriormente, la aplicación arrojó este error:Fatal error: PHP Fatal error: Uncaught TypeError: Argument 1 passed to Magento\Catalog\Block\Product\ImageFactory::getRatio() must be of the type integer, null given
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26974. GitHub-26973
- Puede usar el extremo
POST /V1/:sku/links
para establecer vínculos de producto con una matriz vacía de productos cuando el producto tiene vínculos existentes. Anteriormente, la aplicación arrojaba un error. Corrección enviada por Sathish Subramanian en la solicitud de extracción 26979. GitHub-26800
- Ahora puede utilizar el menú desplegable Acciones de la cuadrícula Productos para especificar si un producto tiene peso al actualizar los atributos de varios productos desde el Administrador. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26075. GitHub-6310
- La lógica de validación se ha agregado a los campos Valores permitidos por cuadrícula por página y Productos por página en valor predeterminado de cuadrícula de la página de configuración de la tienda. Anteriormente, los administradores de tiendas podían introducir valores no disponibles en estos campos. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27093. GitHub-27089_
Regla de catálogo
- Se ha corregido el comportamiento del elemento de página Selector de fecha en Administración > Marketing > Promociones > Regla de precio de catálogo. Corrección enviada por Hitesh en la solicitud de extracción 26290. GitHub-26289
- Las reglas de precios de catálogo ahora funcionan con opciones personalizadas como se espera en las páginas de detalles del producto. Corrección enviada por Pavel Bystritsky en la solicitud de extracción 22917. GitHub-22856
Widget del catálogo
- La lista de productos
CatalogWidget
ahora funciona según lo esperado con categorías de anclaje, y los productos de las categorías de anclaje ahora coinciden y se muestran. Anteriormente, al seleccionar una categoría principal que era un anclaje, pero que no contenía productos asignados, los productos no eran visibles en el widget.
- La aplicación ahora muestra todos los elementos secundarios de una categoría principal seleccionada según lo esperado. Anteriormente, si seleccionaba una categoría principal que era un anclaje, pero que no contenía productos asignados, la aplicación no mostraba todos los productos anidados.
- El widget de productos vistos recientemente ahora funciona correctamente cuando Tiendas > Configuración > Catálogo > Catálogo > Vistos o comparados recientemente > Sincronizar productos del widget con almacenamiento back-end se establece en Sí.
Contenido de CMS
- Ahora puede guardar y duplicar todas las páginas de CMS. Anteriormente, la aplicación produjo esta excepción al intentar duplicar determinadas páginas:
Unique constraint violation found
.
- La aplicación ahora permite crear bloques de CMS con nombres idénticos si los bloques están asignados a diferentes vistas de tienda.
- Las miniaturas seleccionadas de la Galería ahora se almacenan en caché según lo esperado. Anteriormente, estas imágenes cambiaban de tamaño sobre la marcha.
- La aplicación ya no genera un error al guardar una página de CMS que se ha asignado a varias tiendas. Anteriormente, al crear o editar una página de CMS, la aplicación guardó la página pero también arrojó este error:
Item (Magento\VersionsCms\Model\Hierarchy\Node) with the same ID "PAGE_ID" already exists
.
- Las nuevas páginas de CMS ahora se añaden según lo esperado a la jerarquía de páginas de tienda de un sitio web.
- Se ha mejorado la lógica de actualización del diseño personalizado de la página CMS. La aplicación ahora aplica cambios de diseño específicos de
cms_page_view_selectable_home_somechanges.xml
. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27131. GitHub-26758
Cleanup
- Se ha eliminado una etiqueta de cierre adicional del XML del módulo. Corrección enviada por Tejash Kumbhare en la solicitud de extracción 26339. GitHub-26338
- Se ha corregido la desalineación de Mis direcciones de facturación y envío son la misma casilla de verificación en la sección de la página Revisar y pagos del flujo de trabajo de pago. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26169. GitHub-26168
- Se ha eliminado el espacio en blanco innecesario entre las etiquetas de campo y los asteriscos de la sección Dirección de envío del flujo de trabajo de cierre de compra. Corrección enviada por Daniel Ruf en la solicitud de extracción 26285. GitHub-26275
- Se ha corregido la desalineación de los botones de opción de la sección Métodos de envío del flujo de trabajo de cierre de compra. Corrección enviada por Hitesh en la solicitud de extracción 25966. GitHub-25962
- Se corrigió un espaciado de menú incoherente en la vista móvil. Corrección enviada por Hitesh en la solicitud de extracción 26238. GitHub-26235
- Se ha corregido la desalineación de los iconos de edición y eliminación del minicarrito en la vista móvil. Corrección enviada por Vasili Burlacu en la solicitud de extracción 27493. GitHub-26652
- Se ha corregido la desalineación del intervalo y la casilla de verificación del código postal de la tasa de impuestos en la página Agregar nueva tasa de impuestos/código postal (Administrador > Tienda > Impuestos > Zonas fiscales y tasas). Corrección enviada por Sathish Subramanian en la solicitud de extracción 26932. GitHub-26917
- El vínculo del Asistente de configuración al administrador ahora funciona según lo esperado. Corrección enviada por Oleh Usik en la solicitud de extracción 26100. GitHub-24990
- La ordenación se ha deshabilitado en la columna de estado de la cuadrícula Administración de caché en el Administrador. Corrección enviada por Sathish Subramanian en la solicitud de extracción 26215. GitHub-26208
- Se ha corregido la desalineación de los elementos de página en Administración > Tiendas > Atributos > Clasificaciones > Agregar nuevas clasificaciones del cuadro de diálogo. Corrección enviada por Sathish Subramanian en la solicitud de extracción 27014. GitHub-26992
- Se ha corregido la desalineación del icono de calendario en la página Agregar cambio de diseño. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 26063. GitHub-20379
- Se ha eliminado el espacio innecesario en la visualización del submenú en el menú de desplazamiento de la página principal. Corrección enviada por Hitesh en la solicitud de extracción 25973. GitHub-25972
- Se ha corregido la desalineación de las etiquetas de precio en la página de detalles del producto de la tienda. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26237. GitHub-25936
- Se ha corregido la desalineación del texto sin existencias en relación con el botón Agregar al carro de la página de lista de productos en la vista móvil. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26183. GitHub-26181
- El mensaje de integración correcta que se muestra en Administración > Sistema > Extensiones > Integraciones ahora se muestra correctamente. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26011. GitHub-25930
Productos configurables
- Los productos secundarios de un producto configurable ahora se pueden deshabilitar correctamente a través de la API.
- Las reglas de precios del carro de compras con una condición establecida como Categoría (solo principal) ahora funcionan de manera consistente según lo esperado.
- Ahora puede agregar un producto configurable al carro de compras desde la pestaña Ventas cruzadas. Al seleccionar un producto y hacer clic en Agregar al carro de compras desde esta pestaña, ahora se le redirige a la página de detalles del producto, donde puede seleccionar opciones específicas de productos. Anteriormente, la aplicación le redirigía a una página de error 404.
- La aplicación ya no vincula un producto simple a un producto configurable cuando falla la llamada de API para vincular estos productos.
- Se ha corregido el procesamiento de los SKU en la lista Variaciones actuales de un producto configurable. Corrección enviada por KaushikChavda en la solicitud de extracción 26007. GitHub-25591
- Ahora puede guardar la información de configuración de
system.xml
introduciendo valores en Administración > Sistema > Configuración en campos que no tienen etiquetas asociadas. Corrección enviada por Andrii Chorniy en la solicitud de extracción 25985. GitHub-23899
- Se ha optimizado el rendimiento de
\Magento\ConfigurableProduct\Model\Product\Type\Configurable::isSalable
. Corrección enviada por Stanislav Ilnytskyi en la solicitud de extracción 26071. GitHub-26065
- Se ha mejorado la lógica responsable de actualizar las imágenes de productos configurables. Anteriormente, los productos simples asociados a un producto configurable solo mostraban la imagen predeterminada asociada con el producto configurable y, a veces, la aplicación mostraba la imagen principal incorrecta para el producto. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 26560. GitHub-26473, GitHub-26856, GitHub-26858
- La aplicación ahora muestra el precio especial de un producto como se espera cuando se selecciona una opción de descuento de un producto configurable. Anteriormente,
class="normal-price"
no se cambiaba aclass="special-price"
cuando se seleccionaba una opción de descuento. Corrección enviada por Ravi Chandra en la solicitud de extracción 26170. GitHub-24972
Cookies
- Las funciones
setRedirectCookie
yclearRedirectCookie
ahora funcionan según lo esperado. Anteriormente, estas funciones enviaban cookies al explorador, pero faltaban todos los parámetros de las cookies. GitHub-24547
- Las etiquetas de Google Tag Manager ya no se activan cuando un cliente navega a una nueva tienda sin aceptar la cookie de Google Tag Manager.
- Se han agregado metadatos a las funciones
setRedirectCookie
yclearRedirectCookie
. Corrección enviada por Alexander Lukyanov en la solicitud de extracción 24612. GitHub-24547
Atributos del cliente personalizados
- La aplicación ahora muestra los valores de atributo de dirección del cliente personalizados como se espera en la sección de dirección del flujo de trabajo de cierre de compra. Anteriormente, la aplicación mostraba el código de atributo de dirección del cliente personalizado en lugar del valor y se activaba un error de JavaScript.
- La aplicación ya no genera un error cuando se incluye un campo de atributo de cliente vacío en el campo Forms que se usará en al crear una cuenta de compañía en la tienda. Anteriormente, la aplicación arrojó este error:
PHP Fatal error: Uncaught TypeError: Argument 2 passed to Magento\Eav\Model\Attribute\Data\Text::validateLength() must be of the type string, null given
.
- La aplicación ahora guarda atributos de dirección de cliente personalizados y los implementa en formularios de registro según lo esperado. Anteriormente, cuando se creaba un nuevo atributo de dirección de cliente personalizado mientras se creaba una cuenta desde el carro de compras, la aplicación no guardaba la información del atributo.
Cliente
- Los clientes suscritos a boletines como invitados ya no cancelan la suscripción después de registrarse para obtener una nueva cuenta.
- La aplicación ahora usa un nuevo(a)
PHPSession
para cada cambio de contraseña.
- Ahora puede crear correctamente un cliente y asociarlo a un sitio web en particular mediante el menú desplegable Asociar a sitio web en Clientes > Todos los clientes > Agregar nuevo cliente. Anteriormente, al intentar asociar un nuevo cliente con el sitio web no predeterminado en una implementación de varios sitios, la aplicación mostraba este error:
The store view is not in the associated website
.
- La aplicación ahora guarda la información que un cliente introduce en los campos de facturación y envío predeterminados durante el cierre de compra cuando la transacción se rechaza inicialmente debido a una tarjeta de crédito no válida, pero se completa correctamente más tarde. Anteriormente, aunque la aplicación creaba el pedido cuando el cliente especificaba la información de pago válida, no actualizaba las direcciones de facturación o envío predeterminadas en la sección Mi cuenta del flujo de trabajo de cierre de compra.
- La aplicación ahora respeta la configuración del grupo de clientes cuando crea un nuevo cliente desde el administrador en una implementación de varios sitios.
- La aplicación ahora importa correctamente los datos del cliente mediante la opción Cliente y direcciones (un solo archivo) cuando
cron
está habilitado y el indizador de cuadrícula del cliente está establecido en Actualizar según el horario. Después de quecron
se ejecute, la información de clientes importada estará disponible en el Administrador según lo esperado. Anteriormente, la aplicación importaba los datos del cliente, pero no actualizaba la cuadrícula del cliente con los registros del cliente recién importados.
- Ahora puede crear un nuevo cliente a partir de la tienda cuando se requiera la fecha de nacimiento. Anteriormente, no se podía crear un nuevo cliente cuando este campo era necesario, incluso cuando se introducían valores DOB válidos. GitHub-26700
- La creación de clientes desde Admin ahora respeta la configuración predeterminada del grupo de clientes según lo esperado.
- El
PHPSessionId
ahora cambia según lo esperado después de que un cliente cierre la sesión y luego la vuelva a iniciar.
- La vista Administrador de un carro de compras de clientes ahora muestra todos los productos que se agregaron al carro de compras desde varios sitios web en una implementación de varios sitios web. Anteriormente, cuando un cliente agregaba un producto al carro de compras desde un sitio web no predeterminado, el producto no se mostraba en el Administrador aunque Compartir cuenta de cliente estuviera establecida en Global.
- La validación ahora funciona según lo esperado para el campo Fecha de nacimiento al editar un cliente desde el administrador. Anteriormente, la aplicación no tenía en cuenta la configuración regional del usuario y para algunos cumpleaños se mostraba este error:
The Date of Birth should not be greater than today
. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27149. GitHub-27027
- El campo de correo electrónico ya no es necesario al realizar un pedido desde el administrador. Corrección enviada por solwininfotech en la solicitud de extracción 24479. GitHub-22251
- La aplicación ahora muestra únicamente los productos que el cliente ha colocado en el carro de compras cuando este se ve desde el administrador. Anteriormente, el carro de compras de un cliente mostraba todos los productos del catálogo cuando se visualizaban desde el administrador. Corrección enviada por Ravinder en la solicitud de extracción 26489. GitHub-26437
- El panel Mi cuenta ahora muestra correctamente los valores de direcciones de correo electrónico en la vista móvil. Corrección enviada por Eden Duong en la solicitud de extracción 25942. GitHub-25935
- Si hace clic varias veces en el botón Crear una cuenta del formulario de registro de cliente, ya no se enviará la solicitud de registro más de una vez. Corrección enviada por princeCB en la solicitud de extracción 26642. GitHub-26590
Segmento de cliente
- La aplicación ya no elimina la cuenta de cliente de un segmento de cliente cuando se inicia sesión como un usuario asignado al segmento de cliente cuando el segmento incluye una condición para pedidos anteriores. Anteriormente, tenía que hacer clic en Actualizar datos del segmento después de iniciar sesión antes de que la aplicación mostrara su cuenta en la lista Clientes coincidentes.
- Los segmentos de clientes ahora funcionan según lo esperado cuando las condiciones del segmento incluyen el número total de pedidos.
- Las reglas de segmentos del cliente ahora se aplican según lo esperado cuando las cuentas de cliente se configuran para compartirse globalmente.
- Hemos mejorado el rendimiento al editar y guardar segmentos de clientes que contienen un gran número de clientes (más de tres millones). Anteriormente, al crear o editar un segmento de cliente que contenía muchos clientes, la aplicación arrojaba un error 500.
Directorio
- El menú desplegable Estado predeterminado ahora se rellena con datos basados en los países permitidos que se han asignado al sitio web seleccionado al configurar un valor para el campo Cálculo predeterminado de destino de impuestos. Anteriormente, este menú desplegable enumeraba los países asignados al sitio web predeterminado.
Descargable
- Ahora puede utilizar un archivo de importación para actualizar los productos descargables de forma masiva por SKU y descripción. Anteriormente, se producían errores de validación y la importación fallaba.
Bloque dinámico (anteriormente banner)
- Los bloques dinámicos ahora funcionan con segmentos de clientes según lo esperado. La aplicación ya no muestra un bloque dinámico cuando no se cumple la condición que debería déclencheur. Anteriormente, la aplicación mostraba un bloque dinámico para los usuarios que iniciaban sesión como invitados cuando el carro de compras estaba vacío.
- Los bloques dinámicos ahora se representan en la tienda en función del segmento del cliente y la vista de la tienda.
EAV
- La aplicación ahora respeta la configuración específica de la tienda que determina si el campo del número de teléfono del flujo de trabajo de cierre de compra es necesario en una implementación de varios sitios. Anteriormente, en implementaciones en las que un almacén requería este campo en el flujo de trabajo de cierre de compra y otro almacén no, los clientes que no completaban este campo mientras desprotegían el almacén que no lo requería encontraban este error:
Please check the shipping address information. "telephone" is required. Enter and try again
.
- El criterio de ordenación EAV de
attribute option_id
ahora funciona según lo esperado. Corrección enviada por Tan Sezer en la solicitud de extracción 24360. GitHub-24357
- Ahora puede crear un nuevo producto después de agregar un nuevo atributo a través de REST y asignarlo a un conjunto de atributos desde Admin. Anteriormente, la aplicación arrojaba un error 500. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27191. GitHub-26827
Correo electrónico
- Los correos electrónicos de autorización enviados a un cliente cuando solicita una devolución ahora contienen el estado de RMA esperado. Anteriormente, este correo electrónico mostraba una cadena vacía en lugar del estado de retorno esperado.
- Los clientes ya no son redirigidos fuera del sitio web actual cuando informan de una contraseña olvidada en implementaciones de varios sitios en las que se comparten cuentas de clientes de forma global. Anteriormente, los clientes se redirigían al sitio web en el que se creaba la cuenta.
- Los correos electrónicos de confirmación de pedido que se envían a los clientes ahora incluyen la lista de artículos pedidos según lo esperado. Anteriormente, cuando se creaba una plantilla de correo electrónico en Admin al cargar y guardar la plantilla predeterminada, los correos electrónicos generados a partir de esta plantilla no incluían la lista de elementos pedidos. GitHub-26882
Marcos
- Las dependencias de Zend Framework se han migrado al proyecto Laminas para reflejar la transición de Zend Framework al proyecto Laminas de la Fundación Linux. Zend Framework ha quedado obsoleto. Corrección enviada por Ihor Sviziev en la solicitud de extracción 26436. GitHub-26335
- La configuración de rango de precios especiales (fechas de/a) ahora funciona correctamente para cuentas de administrador que utilizan una configuración regional neerlandesa.
-
php bin/magento cron:run
ya no procesa elementos de la tabla de registro de cambios varias veces. Anteriormente, cuando había más de 100000 versiones nuevas en la tabla de registro de cambios, se podía llamar varias veces a las acciones para el mismoentity id
. -
El comando
php bin/magento setup:cron:run
se ha eliminado. Además, quite las referencias a este archivo en crontabs al actualizar. -
El archivo
update/cron.php
se quitó en la versión 2.4.0; si existe en la instalación, se puede quitar de forma segura. Además, quite las referencias a este archivo en crontabs al actualizar.
- La acción Actualizar atributo ahora actualiza correctamente la marca de tiempo de
updated_at column
de un producto decatalog_product_entity
cuando actualiza el producto desde la página de producto de edición de administrador.
- La configuración
'persistent' => '1'
enenv.php
ya no genera un error cuando ejecutasetup:upgrade
.
- Clave De Formulario No Válida. Actualice la cadena de texto de la página en la página de inicio de sesión y ahora se traduzca según lo esperado.
- Hemos mejorado el rendimiento de la función
Magento\Framework\App\DeploymentConfig\Reader::load
. Anteriormente, cuando se realizaba una solicitud al Magento, se realizaba una llamada repetitiva a esta función, lo que provocaba que se cargaranconfig.php
yenv.php config
archivos cada vez que se realizaba una llamada al método.
- La aplicación ya no descarga una página de
blank.html
cuando un administrador hace clic en un producto al crear un pedido del administrador.
- Los bloques no almacenables en caché añadidos al diseño predeterminado en las instrucciones de referencia para componentes inexistentes (no declarados) en la página ya no afectan al almacenamiento en caché de la página. Al agregar bloques no almacenables en caché a los controladores de diseño predeterminados, todas las páginas se vuelven no almacenables en caché. Esto es el resultado del proceso de generación de diseños: durante la generación de diseños, la aplicación recopila todos los controladores de diseño disponibles para una página en particular y combina las instrucciones de los mismos en la estructura de diseño final de la página. El controlador de diseño predeterminado se utiliza como controlador básico para cada página. Como resultado, las actualizaciones de diseño declaradas para el controlador predeterminado aparecen en todas las páginas. GitHub-9041
- El administrador de bloqueos MySQL es ahora el administrador de bloqueos principal. Como resultado, la versión mínima requerida de MySQL es 5.7.9.
queue_consumer.xml
ahora permite números en la clasehandler
. Anteriormente, cuando un controlador contenía un número en su ruta, se producía un error de validación de XSD. Corrección enviada por Eden Duong en la solicitud de extracción 25952. GitHub-25731
- Se ha corregido una referencia
@var
incorrecta en el bloquedoc
de la variable miembro de clase$queueIterator
de la clase\Magento\Framework\MessageQueue\Topology\Config
. Corrección enviada por Artem Voloznov en la solicitud de extracción 24976. GitHub-24971
- Los oyentes de carga de página de JavaScript ahora se activan para activarse cuando un documento ya no es
loading
en lugar de esperar hasta que se marque comocomplete
como esperando hasta que el documento se marque comocomplete
puede provocar retrasos graves en la representación del contenido de JavaScript. Corrección enviada por John Hughes en la solicitud de extracción 23313 y la solicitud de extracción 50. GitHub-22909
- La aplicación ahora muestra el siguiente mensaje informativo cuando intenta agregar un producto a su lista de deseos con una cantidad de 0 o un número negativo:
Please enter a valid number in this field
. Anteriormente, la aplicación mostraba este error:We can't update your Wish List right now
. Corrección enviada por Pawe Tylek en la solicitud de extracción 25641. GitHub-25032
- La aplicación ya no admite la herencia de clases DTO de la clase
Magento\Framework\Api\AbstractExtensibleObject
. Falta la anotación PHP@api
se ha agregado aAbstractExtensibleModel
, y falta@deprecated
se ha agregado la anotación aAbstractExtensibleObject
. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 22011. GitHub-22010
- Ahora puede guardar los productos como se espera después de cambiar una fecha relacionada con el producto (por ejemplo,
news_from_date
,news_to_date
,special_price_from_date
,special_price_to_date
) en tiendas que implementan configuraciones regionales que no están en inglés. Anteriormente, la aplicación arrojó un error similar a este:Invalid input datetime format of value '22/5/2019
.
Correcciones generales
- El módulo Cliente ya no depende del módulo Revisar. Anteriormente, no se podía deshabilitar el módulo Revisar debido a esta dependencia.
- La página de edición del producto ahora se carga correctamente cuando el conjunto de atributos predeterminado de la página contiene un atributo desplegable con la etiqueta de selección.
- El gráfico de pedidos al que se puede acceder desde la pestaña Pedidos de la Admin ahora refleja con precisión la cantidad de pedidos.
- La URL de administración de una tienda ya no redirige a la URL de la tienda cuando estas dos URL difieren.
- La generación de reescritura de URL para subcategorías ahora funciona correctamente al utilizar el perfil del kit de herramientas de rendimiento con más de un sitio web.
- Ahora puede eliminar un modelo de usuario vacío sin eliminar la función Administradores a la que está asignado.
- El editor TinyMCE4 ahora es compatible con todas las etiquetas de HTML.
- Al hacer clic en el botón Reembolsar sin conexión en el flujo de trabajo Crear una nota de abono, ahora se genera una nota de abono según lo esperado. Anteriormente, un error de JavaScript deshabilitaba este botón y la aplicación no creaba una nota de crédito.
- Los comerciantes ahora pueden crear un atributo de producto de tipo
Decimal
. Anteriormente, debido a una corrección de errores anterior, la aplicación no mostraba el tipo de atributo de productoPrice
. GitHub-26949
- La aplicación ya no devuelve el error 500 al intentar abrir una página Categoría en la tienda cuando Diseño = Producto - Anchura completa se ha establecido desde la pestaña Diseño de la página Categoría.
- Se corrigió un error en
AbstractSimpleObjectBuilder.php
.
- MAP (precio mínimo anunciado) ahora funciona como se espera para los productos del grupo.
- La aplicación ahora le redirige a la página principal de la vista de tienda adecuada cuando cambia de idioma en páginas de CMS en una implementación de varias tiendas. Anteriormente, la aplicación mostraba una página 404 cuando se cambiaba de idioma en determinadas páginas de CMS.
- Las consultas de pedidos (
SalesOrderIndexGridAsyncInsertCron
) se han refactorizado para reducir el tamaño del conjunto de datos devuelto y la frecuencia de las consultas.
- Ahora puede crear correctamente una página de CMS y asignarla a la categoría raíz del sitio web en la jerarquía de CMS.
- Los invitados ahora pueden mostrar un precio de producto o agregar un producto al carro de compras cuando los permisos de categoría están habilitados (por ejemplo, cuando el grupo de clientes No ha iniciado sesión tiene concedidos estos privilegios).
- Las reglas de producto ahora se aplican a productos sin existencias según lo esperado. Anteriormente, la aplicación no mostraba productos sin existencias en la lista de productos relacionados aunque la regla se configurara para mostrar productos sin existencias.
- Al hacer clic en el botón Seguimiento del envío de un pedido del administrador, ahora se muestra la información de seguimiento en una ventana emergente, según lo esperado. Anteriormente, este vínculo llevaba al administrador a la página Iniciar sesión.
- La aplicación ahora muestra un mensaje de error informativo y continúa mostrando el formulario de registro como se espera si se produce un error cuando un cliente intenta completar un formulario de registro que contiene un atributo de cliente de selección múltiple. Anteriormente, la aplicación mostraba un error 500.
- La solicitud ahora muestra el botón Nota de crédito después del reembolso parcial de un pedido. Anteriormente, la aplicación no mostraba este botón después de crear una devolución parcial y no se podía crear una nota de abono para el resto del pedido.
- Las actualizaciones de pedidos masivos a través de REST ahora modifican el estado del pedido según lo esperado. Anteriormente, la aplicación arrojó este error:
report.ERROR: Property "AdditionalInformation" does not have accessor method "setAdditionalInformation" in class "Magento\Sales\Api\Data\OrderPaymentInterface".
- Los filtros de atributo ahora se muestran según lo esperado en el bloque Opciones de compra de la página Categoría.
- Ahora puede cambiar el límite de productos en la página Categoría de 24 a 36 en implementaciones en las que B2B está instalado. Anteriormente, la aplicación generaba un error grave al aumentar este límite de productos a 36.
- Las direcciones de facturación y envío del cliente ahora se muestran según lo esperado en la pestaña Direcciones de la página Admin Customer Edit cuando se muestra en Internet Explorer. Corrección enviada por Vasili Burlacu en la solicitud de extracción 27383. GitHub-27370
- Todas las vistas de marcadores ahora permanecen editables cuando se elimina una. Anteriormente, todas las vistas de marcadores no se podían editar después de eliminar la primera vista de las cuentas con varias vistas de marcadores. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26263. GitHub-14913
- La navegación por capas ya no interrumpe la validación HTML 5 del módulo de muestras. Anteriormente, se producían errores de validación del HTML para atributos que no estaban definidos en el servicio de validación de marcado W3C, pero esos atributos se han cambiado a atributos de datos. Corrección enviada por Nirav Patel en la solicitud de extracción 26055. GitHub-22363
- Un alias
require.JS
sin usar (critical-css-loader
) has been removed from app/code/Magento/Theme/view/frontend/requirejs-config.js
). Corrección enviada por Tu Nguyen en la solicitud de extracción 26987. GitHub-26963
- La aplicación ahora implementa la interfaz lanzable de PHP7.x para habilitar la captura de todos los errores que podrían exponer potencialmente información confidencial como contraseñas. Corrección enviada por miszyman en la solicitud de extracción 25250. GitHub-23350
- Al pulsar la tecla ESC al introducir el nombre de una nueva carpeta en la ventana emergente Crear una nueva carpeta, ahora se cierra la ventana emergente como se espera sin crear la carpeta. Corrección enviada por Shankar Konar en la solicitud de extracción 25349. GitHub-572
- Se ha corregido una estructura de HTML anidada incorrectamente. Anteriormente, esta estructura provocaba un diseño roto para la lista de productos relacionados, de mejora de ventas o de venta cruzada. Corrección enviada por el host de Pieter en la solicitud de extracción 27926. GitHub-27920
- Se quitó la llamada duplicada a
addToolbarBlock
, lo que resultó en dos condiciones similares enORDER BY
. Corrección enviada por Vasili Burlacu en la solicitud de extracción 27263. GitHub-26708
- Los comerciantes ahora pueden establecer una fecha de caducidad para las cuentas de usuario de administrador. Corrección enviada por Laura Folco en la solicitud de extracción 22837. GitHub-22833
- Hemos agregado la anotación PHP
@api
aAbstractExtensibleModel
, la anotación PHP@deprecated
aAbstractExtensibleObject
y@see
aAbstractExtensibleModel
. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 22011. GitHub-22010
Tarjetas de regalo
- La llamada de GET
V1/orders/:orderId
devuelve códigos de tarjeta regalo según lo esperado.
Envoltorio para regalos
- El envoltorio para regalos ahora se puede agregar al carro de compras cuando está habilitado en el nivel de producto. Anteriormente, se podía agregar un envoltorio para regalos a un producto de la tienda, pero la aplicación no incluía dicho envoltorio en el resumen del pedido.
- Una tarjeta regalo caducada se activa como se espera cuando cambia su fecha de caducidad a una fecha futura. Anteriormente, la tarjeta regalo permanecía caducada.
- La página Crear pedido del administrador ahora se carga correctamente cuando la opción Permitir mensajes de regalo en el nivel de pedido y la minificación de plantillas están habilitadas. Anteriormente, al intentar abrir esta página cuando esta configuración estaba habilitada, la aplicación arrojó este error:
Warning: require(content.phtml): failed to open stream: No such file or directory
.
- La aplicación ahora calcula correctamente el coste del envoltorio para regalos en función del número de productos para los que ha pedido el envoltorio para regalos. Anteriormente, la aplicación incluía el coste del envoltorio para regalos para un solo producto en el pedido.
Google Tag Manager
- Los comerciantes ahora pueden posponer el envío de datos a los Google Analytics hasta que se cumplan las condiciones especificadas.
- Se ha restaurado la plantilla
Magento_GoogleTagManager::checkout/set_checkout_option.phtml
que falta.
GraphQL
- La aplicación ahora devuelve el mensaje de GraphQL
The cart isn't active
en lugar deCurrent user does not have an active cart
en determinadas circunstancias cuando un carro de compras se vuelve inactivo y se crea un nuevo ID de carro de compras. Corrección enviada por Vadim Malesh en la solicitud de extracción 27187. GitHub-26117
- Se ha eliminado un código que provocaba un error al usar GraphQL para agregar productos a un carro de compras cuando un producto añadido anteriormente estaba agotado. Corrección enviada por AleksLi en la solicitud de extracción 27015. GitHub-26683
-
Se ha corregido un problema en GraphQL en el cual la aplicación no devolvía toda la información necesaria al utilizar fragmentos en la consulta de productos. Corrección enviada por Riccardo Tempesta en la solicitud de extracción 26218. GitHub-26217
-
La mutación de GraphQL
setShippingMethodsOnCart
ya no recupera los datos incorrectos en el atributoavailable_shipping_methods
. Corrección enviada por Vadim Malesh en la solicitud de extracción 27004. GitHub-26742
Productos agrupados
- Ahora puede agregar un producto simple que pertenezca a un producto de grupo al carro de compras cuando otro producto simple que pertenezca a ese mismo grupo esté agotado. Corrección enviada por Gihovani Filipp Pereira Dem̩trio en la solicitud de extracción 24955. GitHub-22304
- La aplicación ahora envía correos electrónicos a los clientes sobre los productos del grupo reembolsados según lo esperado. Corrección enviada por Alexander Taranovsky en la solicitud de extracción 26246. GitHub-26245
- Ahora puede agregar al carro de compras un producto secundario de un producto agrupado cuando uno de los demás productos secundarios del producto agrupado esté agotado. Anteriormente, cuando un producto secundario estaba agotado, no se podía agregar ningún otro producto secundario al carro de compras.
Imágenes
- Las imágenes ahora se guardan en
pub/media/catalog/category
como se espera cuando se guardan imágenes de categoría. Anteriormente, la aplicación guardó estas imágenes enpub/media/catalog/tmp/category
.
- Las imágenes de filigrana ya no oscurecen la imagen del producto que superponen. Anteriormente, cuando la imagen de marca de agua era más grande que la imagen de producto a la que se aplicaba, la imagen del producto no era visible.
- Ahora puede guardar correctamente una imagen en una categoría desde el Administrador. Anteriormente, después de guardar la imagen, faltaba parte de la dirección URL y no se podía volver a abrir la imagen.
- La aplicación ahora muestra
.png
imágenes como se espera después de la carga.
- Las imágenes que se han cargado en un bloque de CMS mediante Page Builder ahora se muestran en la vista previa como se espera cuando se cargan desde un administrador que tiene una URL base que difiere de la URL de la tienda.
- Si utiliza REST para agregar o actualizar una imagen, ahora se crea una miniatura de imagen según lo esperado. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27170. GitHub-26825
- Los atributos personalizados de las imágenes generadas por
Block\Product\ImageFactory
ahora se representan correctamente. Anteriormente, no se podían agregar atributos personalizados propios al marcado de atributos debido a un escape incorrecto de la salida del HTML. Corrección enviada por Alexander-aleman en la solicitud de extracción 26959. GitHub-25219
- Las imágenes ya no se difuminan cuando se ve una tienda desde una iPhone. Corrección enviada por Dmitriy en la solicitud de extracción 24743. GitHub-24735
- Las imágenes de la tienda ahora responden. Anteriormente, la altura de la imagen se distorsionaba. Corrección enviada por Sean van Zuidam en la solicitud de extracción 27041. GitHub-27040
- El logotipo de tienda predeterminado ahora está visible en la tienda cuando se usa el tema
Magento_blank
. Corrección enviada por Vasili Burlacu en la solicitud de extracción 27497. GitHub-27496
Importar/exportar
- La aplicación ya no genera un error durante la importación cuando los datos importados incluyen una clave de vista de almacén
swatch_image
con un valor deno_selection
. Anteriormente, la aplicación arrojó este error:Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s): 1
. GitHub-25026
- La aplicación ahora actualiza las imágenes según lo esperado cuando se usa la configuración
hide_from_product_page
al importar productos en implementaciones con varias vistas de tienda.
- Las opciones personalizables ahora se importan como se espera cuando
row_id
no es igual aentity_id
de un producto. Anteriormente, la aplicación no importaba opciones personalizables cuandorow_id
no era igual aentity_id
de un producto, lo que provocaba que no se importaran determinados productos.
- Las imágenes asociadas con productos configurables ahora se cargan correctamente durante la importación y están disponibles para su visualización según lo esperado en la página de edición del producto.
- Los archivos exportados de
.csv
ahora reflejan la configuración del filtro para incluir productos en existencia o sin existencias. Anteriormente, la aplicación exportaba todos los productos, independientemente de la configuración de stock que seleccionara.
- Ahora puede importar o actualizar correctamente los clientes mediante la opción Cliente y direcciones de un solo archivo del flujo de trabajo de importación. Anteriormente, al seleccionar esta opción, la aplicación no importaba los datos del cliente y mostraba este error:
Invalid data for insert
.
- El Indexador de valores ahora se activa como se espera después de importar y actualizar el estado del producto. Anteriormente, el Indexador de cotizaciones no indizaba los datos de inventario de productos modificados.
- La aplicación ahora importa correctamente todas las opciones personalizadas para los productos secundarios de un producto configurable cuando se especifica
store_view_code
. Esto funciona tanto si elige importar productos configurables de forma individual como colectiva. Anteriormente, la aplicación no importaba correctamente todas las opciones personalizadas cuando el archivo de importación contenía más de un elemento y se especificabastore_view_code
.
- La aplicación ahora proporciona un mensaje durante la importación del producto que identifica qué productos del archivo
.csv
importado tienen claves duplicadas. Los comerciantes pueden utilizar esta información para resolver conflictos. Anteriormente, la aplicación mostraba este error:Notice: Undefined index: name in /var/www/html/ee233dev/app/code/Magento/CatalogImportExport/Model/Import/Product.php on line 2524
- La aplicación muestra ahora un mensaje de error más informativo y no muestra un vínculo de descarga cuando intenta eliminar un directorio de la lista Sistema > Exportar. Anteriormente, cuando se intentaba eliminar un directorio de esta lista, la aplicación seguía mostrando un vínculo de descarga para los archivos que no se podían descargar y mostraba un mensaje de error no informativo.
- El archivo
.csv
que se usa durante la importación ahora contiene los vínculos correctos para los productos descargables y ahora tiene el formato correcto para admitir la importación y actualización de productos descargables.
- La aplicación ahora exporta correctamente un archivo
.csv
cuando establece el comportamiento de importación para Reemplazar, selecciona un archivo.csv
exportado anteriormente y hace clic en Comprobar datos. Anteriormente, la aplicación mostraba este error:Data validation failed. Please fix the following errors and upload the file again
yFollowing Error(s) has been occurred during importing process
.
- El Indexador de valores ahora se activa como se espera después de importar y actualizar el estado del producto. Anteriormente, el Indexador de cotizaciones no indizaba los datos de inventario de productos modificados.
.csv
archivos generados durante la importación de productos ahora contienen títulos de grupo para productos descargables según lo esperado. Anteriormente, la validación innecesaria degroup_title
durante la importación impedía que se mostraran los títulos de grupos de los productos descargables.
- Cuando
cron
está habilitado y usted realiza una importación de cliente utilizando la opción (Cliente y direcciones (un solo archivo)), la aplicación rellena los datos en la cuadrícula del cliente de administración según lo esperado. La cuadrícula cliente muestra los clientes una vez que se completa la reindexación manual decustomer_grid indexer
. Anteriormente, la aplicación no actualizaba la cuadrícula del cliente con direcciones de clientes recién importadas.
- La aplicación ahora muestra la lista de clientes como se espera después de la reindexación automática. Anteriormente, aunque la ejecución manual de
bin/magento index:reindex
funcionaba, la cuadrícula del cliente no mostraba información del cliente después de la reindexación automática.
- La aplicación ahora elimina los archivos temporales de
<Magento_home>/var
como se esperaba después de que la importación del producto se haya completado.
- La aplicación ya no crea SKU duplicadas en el administrador cuando los productos se importan mediante el archivo
.csv
.
- La importación ya no falla cuando el atributo configurable importado incluye un signo igual (=) en su valor. Corrección enviada por dhoang89 en la solicitud de extracción 25194. GitHub-25188
- Ahora, todos los datos de cuadrícula exportados (tanto los datos de Adobe Commerce como los personalizados) tienen rótulos de opciones en lugar de valores de opciones para todas las columnas con el tipo
Select
oMultiselect
. Anteriormente, al exportar estos datos, la hoja de cálculo exportada contenía Columnas con Id. en lugar de los valores mostrados en la cuadrícula. Corrección enviada por Maksym Novik en la solicitud de extracción 26523. GitHub-25963
- La aplicación ahora muestra los productos agrupados en la tienda como se espera después de actualizar un producto importando un archivo de
.csv
. Corrección enviada por Pavel Bystritsky en la solicitud de extracción 25664. GitHub-25540
Índice
- Hemos mejorado el rendimiento de
indexer_update_all_views
. La indexación ahora es más rápida, ya no se procesan reglas inactivas y las cachés se borran de las entradas solo para los productos modificados.
- Los precios de los productos en la tienda ahora reflejan con precisión la aplicación de una actualización programada de la regla de precios de catálogo. Anteriormente, los precios no reflejaban la regla de precios del carro de compras programada hasta que se volvió a indexar manualmente (
php bin/magento indexer:reindex catalogrule_rule
).
- Ahora puede reindexar correctamente la base de datos de productos después de agregar un atributo que no se puede buscar (es decir, los atributos
is_searchable
,is_filterable
,is_visible_in_advanced_search
están deshabilitados).
- La aplicación ahora muestra un mensaje que identifica el indizador y el tiempo que tardó la operación de indización cuando falla una operación de reindexación. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26207. GitHub-26206
- Los productos que se guardan en tiendas donde el indizador
onthefly
y las tablas planas están habilitados ahora respetan las asignaciones de sitios web. Anteriormente, si se eliminaban todas las asignaciones de sitios web de un producto y después se guardaba, todas las tablas planas incluían el producto, a pesar de las asignaciones de sitios web especificadas. Corrección enviada por Abel Truong en la solicitud de extracción 27365. GitHub-16315
Infraestructura
- El explorador Internet Explorer 11.x ya no es compatible.
- La lógica de validación asociada con el campo Fecha de nacimiento del formulario de registro de cliente ya no déclencheur un error de JavaScript.
- Se agregó una prueba de integración para cubrir
$storeId
para el método de Repositorio de categoríasget()
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27048. GitHub-27044
- Si habilita la configuración Bloquear todas las cookies en Safari, ya no se producirán errores de JavaScript y la aplicación mostrará el mensaje
cookies disabled
según lo esperado. Anteriormente, la aplicación mostraba varios erroresSecurityError (DOM Exception 18): The operation is insecure
en la consola. Corrección enviada por Ra̼l Verdugo Lorenzo en la solicitud de extracción 25324. GitHub-13865
- La aplicación ya no genera este error al ejecutar pruebas de integración:
Error: Call to a member function findFile() on array (/var/www/html/lib/internal/Magento/Framework/Code/Generator/DefinedClasses.php:59)
. Anteriormente, un problema conAutoloaderRegistry::getAutoloader
provocaba que las pruebas de integración fallaran aleatoriamente. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26480. GitHub-26479
- La etiqueta
date
de/module-sales/view/frontend/templates/order/order_date.phtml
se ha corregido aspan
. Anteriormente, la aplicación registraba un error en el archivoexception.log
al hacer clic en Ver pedido en la página de la tienda Mi cuenta > Mis pedidos. Corrección enviada por Andrii Chorniy en la solicitud de extracción 25895. GitHub-13269, GitHub-25738
- El módulo de mezcla de JavaScript se ha refactorizado para mejorar la carga y aplicación de mezclas para módulos agrupados avanzados. Anteriormente, la aplicación no cargaba ni aplicaba mezclas para módulos agrupados avanzados. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 25587. GitHub-25586
- El comando
grunt clean
ahora limpia el código generado y las carpetas de metadatos según lo esperado. Corrección enviada por Andrii Beziazychnyi en la solicitud de extracción 25765. GitHub-25739
- El resultado
getVersion
(ProductMetadata::getVersion
) ahora se almacena en caché, lo que mejora el rendimiento del métodoProductMetadata::getVersion
. Corrección enviada por Lukasz Lewandowski en la solicitud de extracción 26001. GitHub-24025
- Se ha agregado un establecedor que falta para
additional_information
aOrderPaymentInterface
, lo que resuelve una incoherencia entre su declaración de esquema y las propiedades aceptadas. Corrección enviada por Antonino Bonumore en la solicitud de extracción 26748. GitHub-26745, GitHub-13222
Navegación por capas
- La aplicación ahora procesa el atributo Yes/No en la página Categoría cuando Usar en navegación por capas: filtrable (con resultados) para las propiedades de tienda está habilitado.
- La redundancia
\Magento\Sales\Model\Order\Email\Sender\ShipmentSender
ha quedado obsoleta en favor de\Magento\Sales\Model\Order\Shipment\Sender\EmailSender
. Corrección enviada por Adarsh Manickam en la solicitud de extracción 26714. GitHub-14885
Registro
- Los cambios de estado de los pedidos ahora se registran según lo esperado en Sistema > Registros de acciones > Informe.
- La aplicación ahora registra las acciones de envío de ventas en el registro de acciones de administración según lo esperado.
- Las acciones de guardar la página de CMS ahora se registran en los registros de acciones de administración. Anteriormente, solo se registraban las acciones de vista.
- Las acciones de guardar en páginas de CMS ahora se registran según lo esperado en los registros de acciones de administración cuando Seleccionar todas las acciones que se van a registrar está habilitado en la pestaña Registro de acciones de administración (Administración > Tiendas > Configuración > Avanzado).
- Las modificaciones de la página de CMS ahora se registran según lo esperado en el registro de acciones. Ahora, MFTF cubre esta función. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27597. GitHub-171
Galería de medios
- Al hacer clic en Introducir después de asignar un nombre a una nueva carpeta en la Galería multimedia, ahora se guardarán todos los cambios que haya realizado. Anteriormente, al hacer clic en Entrar en lugar de usar el mouse para seleccionar Aceptar, se perdieron todos los cambios. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27029. GitHub-26847
- Ahora puede crear una subcarpeta en la Galería multimedia que tenga el mismo nombre que la carpeta principal. Anteriormente, no se podía guardar la subcarpeta con el mismo nombre. Corrección enviada por Vadim Malesh en la solicitud de extracción 27976. GitHub-1270
Almacenamiento de medios
var/resource_config.json
ya no se regenera cada vez queget.php
solicita una imagen. Anteriormente, este archivo se reescribía en cada llamada aget.php
.
New Relic
- Los nombres de trabajo de Adobe Commerce
cron
ahora se incluyen como se espera dentro de los seguimientos de transacción en NewRelic APM Monitoring - Transactions. Esto incluyecron
trabajos que se ejecutan desde la línea de comandos, así como trabajos ejecutados por el programador estándar. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 25957. GitHub-22047
Newsletter
- Los clientes ahora pueden suscribirse según lo esperado a los boletines informativos. Anteriormente, cuando un cliente intentaba confirmar su suscripción, la aplicación mostraba este error:
This is an invalid subscription confirmation code
.
- El campo de entrada de la newsletter del pie de página de la tienda ahora se representa de forma idéntica en cualquier navegador compatible. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26182. GitHub-26176
- Los mensajes de tienda sobre las suscripciones al boletín informativo ahora se representan como se espera en HTML. Corrección enviada por Oleh Usik en la solicitud de extracción 26455. GitHub-25162
Pedidos
- Los subtotales de resumen de pedidos ya no muestran los impuestos excluidos cuando la configuración de visualización del sitio web especifica que se deben excluir los impuestos. Anteriormente, cuando se configuraban varios sitios web con diferentes configuraciones de visualización, se utilizaba la configuración definida en la variable del servidor para la tienda a pesar de las configuraciones en el nivel de tienda.
Métodos de pago
- Se ha eliminado la integración de métodos de pago de terceros Authorize.Net, eWay, CyberSource, Braintree y Worldpay en el código principal. Los comerciantes deben migrar a las extensiones oficiales disponibles en el Commerce Marketplace.
- Ya no se admite la implementación central de la protección contra fraudes significativa. Los comerciantes deberían migrar a la extensión de Protección contra fraudes y recargos significativa que está disponible en Commerce Marketplace.
- Ahora puede completar correctamente un pedido y regresar a la página de inicio del comerciante cuando se configure Solución hospedada de Website Payments Pro. Anteriormente, al hacer clic en Volver al comerciante, la aplicación arrojó este error:
Invalid Form Key. Please refresh the page
.
- Cambiar la dirección de facturación ya no hace que el texto de la función de JavaScript se represente en la sección de pago del flujo de trabajo de cierre de compra de la tienda. Corrección enviada por Chris Pook en la solicitud de extracción 26378. GitHub-26375
- Las notas de abono ahora muestran el importe correcto en el campo Reembolso por ajuste de la descripción general de las notas de abono. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27343. GitHub-13851
- Ahora puede quitar información adicional de la tabla
quote_payment column additional_information
después de guardar un presupuesto. Anteriormente, no se podía quitar esta información después de guardar el presupuesto porque el métodounsAdditionalInformation
de\Magento\Payment\Model\Info
no inicializaba los datos correctamente. Corrección enviada por Marco Oliveira en la solicitud de extracción 26084. GitHub-26083
- Las instrucciones de pago ahora se derivan de la vista de tienda desde la que se realizó un pedido. Anteriormente, las instrucciones de pago se usaban en la vista de tienda predeterminada porque el método
BeforeOrderPaymentSaveObserver
recuperaba las instrucciones de pago de la vista de tienda predeterminada. Corrección enviada por Karyna Tsymbol en la solicitud de extracción 26399. GitHub-26332
- La aplicación ahora recopila la información de pago que se muestra en el Administrador y en las facturas de factura y envío del almacén en el que se realizó el pedido en implementaciones con varias tiendas. Anteriormente, la aplicación derivaba información de pago de la tienda predeterminada. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26765. GitHub-17933
PayPal
- La aplicación ahora muestra un mensaje de error informativo cada vez que un cliente hace clic en Pagar con PayPal después de escribir una dirección de envío no válida en el flujo de trabajo de pago. Anteriormente, la aplicación solo mostraba un mensaje de error cuando el cliente hacía clic en el botón por primera vez, no para los clics posteriores.
- La aplicación ya no cambia el estado de un pedido a
Processing
en la sección Revisión de pago del flujo de trabajo de pago cuando falla un pago con PayPal.
- Ahora puede completar correctamente un pedido utilizando el método de pago de enlace de flujo de pago. Anteriormente, el método de pago Vínculo de flujo de pago siempre rechazaba el pago porque el estado del pedido permanecía en el estado de pago
Pending
, aunque el estado del pedido en los registros del método de pago eraApproved
.
- Los pedidos que se realizan con PayPal Payflow Pro ahora se establecen en estado
Suspected Fraud
cuando se activan los filtros de fraude.
- Ahora puedes usar Pago y envío mediante PayPal Express con cualquier tarjeta de crédito compatible. Anteriormente, al hacer clic en un botón de tarjeta de crédito mientras se utilizaba Pago y envío de PayPal Express para completar un pedido, se bloqueaba la solicitud y no se podía introducir ningún dato de tarjeta de crédito.
- Los pedidos realizados dentro de PayPal Payflow Pro ahora se establecen en el estado
Suspected Fraud
cuando se activan los filtros de fraude. Anteriormente, el estado de la transacción de pago en PayPal no se validaba antes de que se aprobara en el lado de la solicitud.
- Payflow Pro ahora funciona como se espera cuando las restricciones del sitio web están habilitadas.
- La aplicación ahora procesa correctamente los pedidos realizados con Pago y envío mediante PayPal Express, donde la dirección de envío del pedido especifica una región del país que el cliente ha introducido manualmente en el campo de texto en lugar de seleccionar en el menú desplegable de la página Envío. Anteriormente, la aplicación mostraba este error en la página de revisión de pedidos:
Error 500: NOTICE: PHP message: PHP Fatal error: Uncaught Error: Call to a member function getId() on null in httpdocs/vendor/magento/module-paypal/Model/Api/Nvp.php:1527
. GitHub-26698
- El método de pago PayPal Pro ahora funciona como se espera en el navegador Chrome 80. Anteriormente, este método de pago invocaba un extremo de llamada de retorno que necesitaba acceso a la sesión del cliente, acceso que la nueva funcionalidad de cookie predeterminada de Chrome SameSite no permite. GitHub-26840
- Ahora puedes usar PayPal Express correctamente para pagar un pedido cuando se haya habilitado el carro de compras persistente y la configuración Borrar persistencia al cerrar la sesión esté establecida en no. Anteriormente, la aplicación le redirigía a la página Inicio de sesión.
- Los pagos de Paypal Express y Web Payments Pro ahora pasan al estado
Processing
tal como se esperaba una vez que se ha iniciado el procesamiento. Anteriormente, los pagos de Paypal Web Payments Pro permanecían en el estado de pagoPending
incluso cuando la información de pago estaba en el estadoProcessing
. Corrección enviada por Azambon en la solicitud de extracción 25876. GitHub-25659
Rendimiento
- Se ha mejorado la lógica de invalidación de la sección de datos del cliente. Esta versión presenta una nueva forma de invalidar todos los datos de secciones de clientes que evita un problema conocido con el almacenamiento local cuando las invalidaciones de
sections.xml
personalizadas están activas. (Anteriormente, el contenido privado (almacenamiento local) no se rellenaba correctamente cuando tenía un etc/frontend/sections.xml personalizado con invalidaciones de acción). Ver contenido privado.
- Se ha refactorizado la importación de cuentas de cliente para mejorar la velocidad de importación.
- Los comerciantes ahora pueden usar carga diferida para cargar imágenes. Corrección enviada por Timon de Groot en la solicitud de extracción 27033. GitHub-27032
- Los gráficos del panel se han migrado a la biblioteca
chart.js
. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26923. GitHub-186
- El rendimiento de las operaciones que se ejecutan en catálogos grandes que contienen muchos atributos de producto (en una escala de 3000 a 23000 opciones) se ha mejorado mediante la refactorización del modo en que se crean las matrices de opciones de atributos. Corrección enviada por Behnam Shayani en la solicitud de extracción 25452. GitHub-20966
Precio
- La aplicación ahora guarda y muestra el precio correcto para los productos clasificados incluso después de haber editado los productos varias veces. Anteriormente, la aplicación no guardaba las últimas ediciones realizadas en el precio del producto. Corrección enviada por Ravi Chandra en la solicitud de extracción 26162. GitHub-25195
- Tanto el porcentaje de ahorro fijo como el de descuento ahora se aplican correctamente al precio final de un pedido. Anteriormente, la aplicación mostraba un porcentaje de ahorro de precio de nivel incorrecto (tanto fijo como de descuento) en la página de detalles del producto. Corrección enviada por Sathish Subramanian en la solicitud de extracción 26584. GitHub-26583
Alerta de producto
- El correo electrónico de alerta de existencias enviado a los clientes sobre el reabastecimiento de un producto configurable ahora contiene el precio de producto correcto. Anteriormente, este correo electrónico contenía un precio de producto de 0.
- La cancelación de la suscripción a la alerta de existencias de productos ahora funciona cuando la sesión de un usuario ha caducado. Anteriormente, al hacer clic en el vínculo Haga clic aquí para detener las alertas de este producto, la aplicación mostraba un error 404.
- Las acciones de cancelación de suscripción para alertas de productos ahora funcionan según lo esperado. Anteriormente, cuando un cliente hacía clic en el vínculo Haga clic aquí para detener las alertas de este producto, la aplicación mostraba un error 404.
Vídeo del producto
- Ahora puede usar REST para actualizar vídeos de YouTube (PUT
rest/V1/products/{SKU}
). Anteriormente, la aplicación mostraba una miniatura del vídeo, pero el reproductor de vídeo no se cargó al hacer clic en el botón Reproducir. GitHub-23194
Informes
- Las listas de productos ahora solicitan productos configurables por SKU, que agrupa los productos configurables por variaciones. Anteriormente, el informe agrupaba los productos por
product_id
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 25858. GitHub-25856
- La tabla Administración > Informes > Actualizar estadísticas ahora muestra Actualizado en = Nulo estado como Nunca en la columna Actualizado en lugar de indefinido. Corrección enviada por Eden Duong en la solicitud de extracción 25932. GitHub-25931
- El informe Bajo stock ya no incluye productos desactivados. Corrección enviada por Mohamed-Asar en la solicitud de extracción 26862. GitHub-26838
- La aplicación ahora muestra un valor preciso para el campo Comienza el año hasta la fecha en Administración > Tiendas > Configuración > General > Informes. Corrección enviada por Priya-V-Panchal en la solicitud de extracción 27088. GitHub-27086
Autorizaciones de devolución de mercancía (RMA)
- La aplicación ya no muestra un error cuando se crea correctamente un pedido y una autorización de devolución de material desde la tienda. Anteriormente, la aplicación creó la RMA según lo esperado, pero también mostró este error:
We can't create a return right now. Please try again later
.
- Los vínculos de seguimiento incluidos en las devoluciones de pedidos de tienda ahora funcionan según lo esperado. Anteriormente, cuando un cliente hacía clic en el vínculo de seguimiento del envío en la página de devolución del pedido, la aplicación mostraba este error:
PHP Fatal error: Uncaught Error: Call to a member function getTitle() on null in /app/z7kvt3uys6daq/var/view_preprocessed/pub/static/vendor/magento/module-shipping/view/frontend/templates/tracking/details.phtml:1
.
- La pestaña Devuelve ahora está presente como se espera después de crear una devolución de pedido desde el administrador.
- Se ha eliminado una cadena innecesaria de la plantilla de correo electrónico de RMA (
app/code/Magento/Rma/view/frontend/email/new.html
).
Críticas
- La aplicación ahora deshabilita el botón Enviar revisión después de que el usuario haga clic en el botón una vez. Anteriormente, la aplicación no deshabilitaba este botón después del primer clic y creaba varias revisiones cuando el usuario hacía clic en el botón Enviar revisión varias veces.
- La lista de filtros Administración > Informes > Críticas > Por productos ahora muestra los resultados según lo esperado. Anteriormente, cuando se intentaba filtrar esta lista, la aplicación no mostraba ningún resultado.
- El elemento de menú Revisiones pendientes ahora está activado como se espera en Administrador > Marketing > Contenido de usuario > Revisiones pendientes. Corrección enviada por Ravinder en la solicitud de extracción 26230. GitHub-26229
Recompensas
- La aplicación ahora reembolsa puntos de recompensa como se espera cuando se devuelve un pedido a una tienda que funciona en un entorno de varias tiendas donde se establecen diferentes tasas de puntos de recompensa para cada tienda. Anteriormente, la aplicación no reembolsaba puntos como se esperaba para un pedido devuelto comprado con puntos de recompensa.
Ventas
- Los pedidos completados ahora aparecen tanto en el sistema de pago como en Adobe Commerce. Anteriormente, los pedidos aparecían en el sistema de pago, pero no en Adobe Commerce. GitHub-25862
- La aplicación respeta ahora la dirección de envío predeterminada de un cliente. Anteriormente, la aplicación no respetaba las direcciones de facturación y envío predeterminadas según la configuración, y la opción Igual que la dirección de facturación no se habilitaba automáticamente.
- La aplicación ahora calcula correctamente los reembolsos de los pedidos que incluyen descuentos. Anteriormente, la aplicación calculaba incorrectamente el impuesto de envío y el descuento de envío, y el total reembolsado no coincidía con el total pagado.
- La aplicación ahora asigna el ID de grupo correcto cuando un nuevo cliente crea un pedido en implementaciones de varios sitios. Anteriormente, la aplicación aplicaba la configuración del grupo de clientes predeterminado.
- Los administradores con permisos restringidos que incluyen permiso de visualización para notas de abono, facturas y envíos ahora pueden ver facturas y envíos desde la página Pedidos según lo esperado. Anteriormente, cuando un administrador restringido intentaba ver un pedido, la aplicación mostraba este error:
Something went wrong with processing the default view and we have restored the filter to its original state
.
- La aplicación ya no muestra un error cuando un cliente agrega una cantidad de un producto al carro de compras que supera la mitad del stock de productos existente, pero no supera el stock total. Anteriormente, en estas circunstancias, la aplicación mostraba este error:
The requested qty is not available
. Github-24365
- Ahora puede añadir correctamente un producto al carro de compras desde el Administrador cuando la cantidad de stock es 1. Anteriormente, la aplicación no agregaba el producto al carro y mostraba este mensaje:
The requested qty is not available
. Corrección enviada por Serhii Petrychenko en la solicitud de extracción 26650. GitHub-25675
- La aplicación ahora muestra un mensaje de error informativo cuando un administrador de tienda intenta reordenar un producto cuya opción personalizada tiene un nombre que supera el número máximo de caracteres. Anteriormente, en estas condiciones, la aplicación mostraba la página Informe, no un mensaje. Corrección enviada por Mudit Shukla en la solicitud de extracción 26348. GitHub-26345
- El diseño del formulario de edición de la información de la dirección del pedido de ventas se ha refactorizado para que coincida con las convenciones de la biblioteca del formulario de administración. Corrección enviada por Alexey Rakitin en la solicitud de extracción 25699. GitHub-19805
- Las casillas de verificación de la sección Productos de la página Catálogo > Categorías ahora funcionan según lo esperado. Corrección enviada por Denis Kopylov en la solicitud de extracción 22990. GitHub-22988
- El método
getCustomer
ahora devuelve el objeto cliente como se define en el bloquephpdoc
. Anteriormente, este método devolvióNULL
y el bloquephpdoc
no resaltó que este método pudiera devolverNULL
. Corrección enviada por Fanis Strezos en la solicitud de extracción 26423. GitHub-25268
- Los repedidos ahora están deshabilitados como se espera cuando un comerciante deshabilita Administración > Tienda > Configuración > Ventas > Reordenar > Permitir pedido. Corrección enviada por Eden Duong en la solicitud de extracción 26051. GitHub-25130
- El método
getPrice()
ahora devuelve un valor flotante o nulo en lugar de una cadena al establecer un precio personalizado para un pedido en el Administrador. Corrección enviada por Andrii Chorniy en la solicitud de extracción 26313. GitHub-25968
- La columna Código de estado y Título de Administración > Tiendas > Configuración > Estado del pedido ahora muestra el estado en lugar del estado esperado. Corrección enviada por Oleh Usik en la solicitud de extracción 26569. GitHub-17847
- Las facturas de PDF ahora registran la fecha de compra correcta cuando se crean en una configuración regional GB. Corrección enviada por Eden Duong en la solicitud de extracción 26701. GitHub-26675
Regla de ventas
quote_item.applied_rule_ids
se ha actualizado según lo esperado después de deshabilitar una regla de precios del carro de compras. GitHub-24526
- La aplicación ahora muestra los árboles de categorías como se espera cuando se intenta crear o editar una regla de precios del carro de compras. Anteriormente, al seleccionar una categoría en la sección Condición mientras se creaba o editaba una regla, se producían errores de JavaScript.
- La aplicación ahora calcula correctamente los descuentos fijos en el nivel del carro de compras mediante las reglas de precios del carro de compras cuando se agrega por primera vez un producto configurable al carro de compras. Corrección enviada por Lachlan Turner en la solicitud de extracción 26623. GitHub-26622
Buscar search-heading
- Elasticsearch 7.6.x es ahora el motor de búsqueda de catálogo predeterminado para Adobe Commerce y Adobe Commerce. No puede instalar ni actualizar a la versión 2.4.0 sin instalar también Elasticsearch 7.6.x. Se ha eliminado el código de la versión 2.x del Elasticsearch. Las versiones 5.x y 6.x de Elasticsearch han quedado obsoletas y ya no son compatibles. Consulte Requisitos previos del motor de búsqueda.
- La aplicación ahora procesa correctamente los símbolos < y > en las cadenas de búsqueda del catálogo de tiendas.
- Los productos ahora se muestran como se espera en las categorías después de ejecutar
cron:run
en implementaciones implementando el Elasticsearch.
- La aplicación ya no requiere un reíndice de búsqueda completo para que se pueda buscar un nuevo atributo de producto en la tienda.
- Ahora, el Elasticsearch funciona según lo esperado al ordenar una lista de productos que contiene paquetes de productos por nombres de productos alfabetizados.
- Los resultados del filtrado ya no incluyen opciones sin existencias al filtrar productos configurables en una categoría.
- Ahora, al seleccionar todos los productos de la página de lista de productos mediante el Elasticsearch, se muestran todos los productos en los resultados de búsqueda según lo esperado. Anteriormente, la aplicación no mostraba resultados de búsqueda.
- El Elasticsearch ahora muestra correctamente los resultados de las páginas de categoría cuando cambia el número de resultados de búsqueda vistos por página. Anteriormente, cuando se cambiaba la cantidad de resultados de búsqueda que deberían mostrarse en la página de resultados, la aplicación mostraba una página en blanco y este error:
"0":"SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near'
- La clasificación de precios ahora funciona correctamente para productos configurables sin existencias.
- La aplicación ya no genera una excepción cuando un cliente utiliza la búsqueda rápida de tiendas en implementaciones de varios sitios web.
- La aplicación ya no muestra una advertencia cuando un comerciante abre la página del término de búsqueda haciendo clic en la opción Términos de búsqueda en el pie de página de Marketing > SEO y búsqueda > Términos de búsqueda. Corrección enviada por vishal-webkul en la solicitud de extracción 25246. GitHub-25245
- La aplicación ya no cambia el tamaño de la ventanilla móvil al hacer clic en el cuadro de entrada de búsqueda al ejecutar Safari en la vista móvil. Corrección enviada por Pawe Tylek en la solicitud de extracción 27603. GitHub-27506
- Las versiones de los Elasticsearch ahora se identifican con la notación X.x en lugar de la notación X.0+ en el administrador (Almacenes > Configuración > Configuración > Catálogo > Catálogo > Búsqueda en el catálogo). Corrección enviada por Andreas Mautz en la solicitud de extracción 25838. GitHub-25674
Envío
- Ahora puede enviar un pedido a varias direcciones si uno de los productos pedidos es un producto virtual. Anteriormente, la aplicación realizaba correctamente el pedido de los productos físicos, pero el pedido del producto virtual estaba vacío.
- La aplicación ahora aplica descuentos de cantidad fija y de todo el carro de compras correctamente para pedidos que se envían a varias direcciones. Anteriormente, este tipo de descuento se aplicaba varias veces cuando un cliente retiraba un pedido mediante el método de extracción con varias direcciones. GitHub-25834
- La lista desplegable disponible para seleccionar métodos de envío durante el proceso de creación de una regla de precio de carro de compras ahora solo contiene valores válidos. Anteriormente, esta lista desplegable contenía valores vacíos o adicionales.
- La aplicación ahora imprime las etiquetas de envío como un archivo de
.pdf
, tal como se espera cuando selecciona Imprimir etiqueta de envío en la lista desplegable Acción de un pedido de la lista de archivos de pedidos. Anteriormente, la aplicación mostraba un error 404.
- Las reglas de precios de envío gratuito ahora afectan únicamente a los productos relevantes cuando un carro de compras contiene productos de categorías que están incluidas en la regla de precios de envío gratuito, así como productos de categorías no incluidas en la regla. Anteriormente, cuando un carro de compras incluía productos de las categorías de envío gratuito, así como otras categorías no incluidas en la regla de precio, el envío gratuito no se aplicaba a ningún producto.
-
La aplicación ya no muestra una página en blanco en lugar de mostrar todos los transportistas en el cuadro desplegable/de selección múltiple. Anteriormente, se produjo un error en la función
toOptionArray
devendor/magento/module-shipping/Model/Config/Source/Allmethods.php
. Corrección enviada por Marc Rodríguez en la solicitud de extracción 25315. GitHub-13136 -
La aplicación ya no aplica un descuento de importe fijo varias veces cuando un cliente crea un pedido que se enviará a varias direcciones. Corrección enviada por Mahesh Singh en la solicitud de extracción 26419. GitHub-25834
- Los complementos de
Magento\Ups\Model\Carrier
que implementandi.xml
personalizado ahora funcionan correctamente en el modo de desarrollador. Anteriormente, la aplicación arrojó este error:1 exception(s): Exception #0 (BadMethodCallException): Missing required argument $data of Magento\Ups\Model\Carrier
. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26130. GitHub-25390
Sitemap
- La aplicación ahora utiliza la dirección URL base del proyecto como se espera cuando se genera un mapa del sitio.
- Los mapas de sitio generados ahora incluyen la dirección URL de la página principal. Corrección enviada por deepaksnair en la solicitud de extracción 26445. GitHub-25761
Ensayo
- Los administradores con acceso restringido a un solo sitio web en una implementación de varios sitios ahora pueden obtener una vista previa de una actualización programada para ese sitio web. Anteriormente, la vista previa de ensayo utilizaba el almacén predeterminado de forma predeterminada y, si el usuario no tenía acceso al almacén predeterminado, la aplicación producía una excepción.
- Editar una programación existente ya no resulta en una programación duplicada. Anteriormente, cuando se editaba una programación existente, la aplicación la duplicaba y, al intentar abrir la programación duplicada, la aplicación arrojaba un error.
- Los productos de venta cruzada ahora se muestran según lo esperado en las páginas Ver y Editar carro de compras después de crear una Actualización de programación para uno o más de estos productos.
Almacenar
- Las sesiones de los clientes ahora persisten según lo esperado cuando un cliente inicia sesión en una tienda, agrega productos al carro de compras y, a continuación, cambia a una nueva tienda en una implementación de varias tiendas. Anteriormente, cuando el cliente navegaba a la segunda tienda, la aplicación cerraba la sesión del cliente y vaciaba el carro de compras.
- La aplicación ahora elimina los registros relacionados con una vista de almacén eliminada de las tablas
sale_sequence_meta
ysales_sequence_profile
según lo esperado. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 22296. GitHub-14958
- El conmutador de tiendas ahora funciona según lo esperado al cambiar entre tiendas que tienen distintas URL base. Anteriormente, cuando un cliente utilizaba el conmutador de tiendas para cambiar entre tiendas, la solicitud fallaba si el almacén de destino tenía una dirección URL base diferente a la del almacén actual. Corrección enviada por Tobias Nilsson en la solicitud de extracción 26548. GitHub-23755, GitHub-26384
Muestras
- Los comerciantes ahora pueden agregar correctamente atributos de muestra de color a los productos usando la opción Muestra visual en Tiendas > Atributos > Producto > Nuevo atributo. Anteriormente, se activaba un error de JavaScript al intentar abrir el atributo de muestra recién creado.
- El precio mínimo anunciado ahora cambia según lo esperado cuando un cliente selecciona una nueva opción de muestra para un producto configurable. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 26241. GitHub-26240
- La aplicación ya no duplica el precio mínimo anunciado de un producto configurable al seleccionar una nueva opción de muestra. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 26317. GitHub-26314
- Se han corregido problemas con el comportamiento del menú desplegable en el área Administrar muestra (Valores de su atributo) de la página Nuevo atributo de producto. Corrección enviada por Oleh Usik en la solicitud de extracción 26090. GitHub-25910
TargetRule
- El bloque de productos relacionado que se muestra para un producto en la tienda ahora muestra los productos que cumplen los criterios definidos en la regla de productos relacionados. Anteriormente, la aplicación no mostraba ningún producto relacionado.
Impuestos
- La aplicación ahora actualiza las tarifas y los precios de envío según lo esperado cuando un cliente cambia el país de destino de un pedido durante el cierre de compra.
- El envío gratuito ahora se aplica según lo esperado según la regla de precio del carro de compras aplicable. Anteriormente, las reglas de precios del carro de compras no tenían en cuenta los impuestos al calcular si un pedido cumplía los criterios de envío gratuito.
- La aplicación ya no genera un error cuando edita y guarda el grupo de clientes
NOT LOGGED IN
cuando se instala B2B.
Prueba
- Las direcciones URL codificadas en pruebas y grupos de acciones se han sustituido por referencias de página. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 117 en el repositorio privado partners-magento2ee. GitHub-26331
- Las pruebas ahora cubren la tarea de registrar acciones de administración relacionadas con páginas de CMS. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 172 en el repositorio privado partners-magento2ee. GitHub-171
- Se han revisado nombres de pruebas funcionales no válidos para seguir las prácticas recomendadas. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27118 y la solicitud de extracción 151 en el repositorio privado partners-magento2ee. GitHub-27117
- Adobe Commerce
cron
se usa ahora para volver a indexar después de crear los datos de prueba y, cuando corresponda,cache:flush config
reemplaza acache:flush
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26990. GitHub-26989
- Las pruebas de aceptación ahora siguen las convenciones de nomenclatura de los módulos
Magento/Indexer
yMagento/Backup
. Corrección enviada por Shankar Konar en la solicitud de extracción 27515. GitHub-27503
- La prueba
AdminReorderWithCatalogPrice
se ha refactorizado y ya no da error durante el proceso de validación de CI. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 135 en el repositorio privado partners-magento2ee. GitHub-26607
- Las pruebas
AdminAddingNewOptionsWithImagesAndPricesToConfigurableProduct
yStorefrontApplyPromoCodeDuringCheckout
se han refactorizado y ya no dan error durante el proceso de validación de CI. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26611 y la solicitud de extracción 26614. GitHub-26612, GitHub-26610
- Las pruebas
DeleteProduct and DeleteCustomer Action Groups
se han refactorizado y ya no dan error durante el proceso de validación de CI. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26407. GitHub-26396
- Las pruebas
AdminMoveAnchoredCategoryTest.xml
se han refactorizado y ya no dan error durante el proceso de validación de CI. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26395. GitHub-26396
Pruebas de integración
- Las solicitudes consecutivas en las pruebas de integración ya no fallan. Anteriormente, las pruebas fallaban porque los objetos de solicitud se compartían entre las entregas. El método
resetRequest
ahora vacía el estado derequest
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27300. GitHub-27299
- Se agregaron pruebas de integración adicionales para cubrir las características de correo electrónico de
Magento_Customer
. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 27606. GitHub-27607
Pruebas unitarias de PHP
- Las pruebas unitarias de PHP ya no generan este error irrecuperable:
Fatal error: Class Mock_CartExtensionInterface_0ba80a0b contains 2 abstract methods and must therefore be declared abstract or implement the remaining methods (Magento\Quote\Api\Data\CartExtensionInterface::getAmazonOrderReferenceId, Magento\Quote\Api\Data\CartExtensionInterface::setAmazonOrderReferenceId) in /var/www/html/vendor/phpunit/phpunit-mock-objects/src/Generator.php(264) : eval()'d code on line 1
. Corrección enviada por Lukasz Bajsarowicz en las solicitudes de extracción 178 en los socios de repositorio privados-magento2ee y 27701. GitHub-27638
- Las pruebas de
Offline_Payments
ahora son compatibles con PHPUnit 8. Corrección enviada por Cristiano Pacheco en la solicitud de extracción 27627. GitHub-27500
- Las pruebas unitarias de
Framework
,AdminAnalytics
,AdminNotification
yAMPQ
se han actualizado para PHPUnit 8. Corrección enviada por Ihor Sviziev en solicitudes de extracción 27522, 27521, 27519, 27522. GitHub-27500
- Ahora puede ejecutar la prueba unitaria
\Magento\Downloadable\Test\Unit\Helper\DownloadTest
sin estar conectado a Internet. Corrección enviada por aleromano89 en la solicitud de extracción 26264. GitHub-23521
- Se agregó la prueba unitaria para
app/code/Magento/Fedex/Model/Source/Generic.php
. Corrección enviada por Sathish Subramanian en la solicitud de extracción 26549.
<magentoCron>
se ha agregado a varias pruebas, lo que déclencheur la reindexación parcial. Este cambio resuelve los problemas que crearon falsos negativos en las pruebas funcionales que abarcabanMagento_Bundle
,CatalogImportExport
,CatalogInventory
,CatalogRule
,Backend
,Braintree
yCaptcha
. Corrección enviada por Lukasz Bajsarowicz en las solicitudes de extracción 27322, 27323, 27321. GitHub-27320
- Todos los usos incorrectos de
<amOnPage>
se han reemplazado con un<actionGroup>
apropiado para que el administrador cierre la sesión cuando corresponda en las pruebas. Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 116 en el repositorio privado partners-magento2ee. GitHub-26331
-
Cada grupo de acción de una prueba se ha movido a un archivo independiente para seguir las prácticas recomendadas de MFTF, y se han revisado nombres de archivo incoherentes. Las pruebas para los siguientes módulos se han visto afectadas:
- module-catalog-permissions
- module-shared-catalog
- module-catalog-event
- module-banner
- module-admin-gws
- module-advanced-checkout
- envío de módulos
- module-ui
- envío de módulos
- module-checkout-address-search
- module-sales
- module-catalog
- module-catalog-rule-staging
- module-visual-merchandiser
- module-customer
Corrección enviada por Lukasz Bajsarowicz en las solicitudes de extracción 25800, 26323, 26321, 26320, 26319, 26322, 25828, 26329 (y las solicitudes de extracción 104, 105, 106, 107, 108, 109, 111 1, 119, 120, 121 en el repositorio privado partners-magento2ee). GitHub-22853
Tema
- Se ha resuelto un error en
JsFooterPlugin.php
que afectaba a la visualización de bloques dinámicos. Anteriormente, la aplicación mostraba este error cuando se tenía acceso directo a/banner/ajax/load/url
:Uncaught TypeError: strpos() expects parameter 1 to be string, null given in
.
- El método
i18n
proporciona la capacidad de agregar una cadena a plantillas de guiones bajos. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 26435. GitHub-18012
- El módulo
section-config
se ha refactorizado. Esta refactorización ha reducido los errores causados por módulos de terceros que realizan solicitudes de POST o solicitan datos de clientes directamente antes de quedata-mage-init
inicializara el módulo. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 25764. GitHub-17125
- Se han corregido
LoadCssAsync
errores de formato del HTML. Corrección enviada por Sathish Subramanian en la solicitud de extracción 26764. GitHub-26760
- Cuando crea
default.xml
ycatalog_product_view.xml
archivos como parte de la creación de un nuevo tema, la aplicación crea estas páginas o registra los errores en los archivos de registro según lo esperado. Anteriormente, la aplicación registraba errores en el archivovendor/magento/framework/View/Page/Config/Renderer.php
. Corrección enviada por Vinh Le en la solicitud de extracción 27026. GitHub-27009
Traducción y configuraciones regionales
- La traducción en línea ahora funciona como se espera en la tienda cuando se establece Administración > Tiendas > Configuración > Avanzado > Desarrollador > Traducir en línea > Habilitado para tienda.
- La traducción en línea ahora funciona según lo esperado cuando se habilita para una tienda.
- Las claves URL del producto ahora se transliteran según lo esperado. Corrección enviada por DanieliMi en la solicitud de extracción 26506. GitHub-26499
- Ahora se admite la configuración regional
es_US Spanish (United States)
. Corrección enviada por Vinh Le en la solicitud de extracción 26857. GitHub-26843
- El recuento numérico de marcadores de posición y el recuento de marcadores de posición de código JavaScript ahora son iguales. Anteriormente, el código JavaScript suponía 0% mientras que el recuento numérico de marcadores de posición empezaba por %1. Corrección enviada por korostii en la solicitud de extracción 25359. GitHub-25243
- Ahora puede deshabilitar la traducción del título de página de la página Detalles del producto (
page.main.title
), que está habilitada de manera predeterminada. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26269. GitHub-7065
- Se han resuelto los problemas con la representación del árabe y el hebreo en los PDF de facturas. Corrección enviada por Ihor Sviziev en la solicitud de extracción 27887. GitHub-25769
- El orden de herencia de los paquetes de idioma ahora se aplica en una primera lista, según lo esperado y tal como se describe en la documentación. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 26420. GitHub-8691
- La aplicación ahora muestra este mensaje de error cuando se escribe un carácter no latino para un nombre de carpeta en configuraciones regionales donde sólo se admiten letras latinas:
Please rename the folder using only Latin letters, numbers, underscores and dashes
. Corrección enviada por Eden Duong en la solicitud de extracción 25904. GitHub-25896
- La longitud de la columna
locale
dedirectory_country_region_name
ha aumentado de 8 a 16 para admitir configuraciones regionales comozh_Hans_CN
. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26268. GitHub-14001
IU
- Ahora puede usar Page Builder para agregar un producto como vínculo de botón (Editar contenido > Vínculo de botón). Anteriormente, la aplicación arrojaba este error cuando intentaba seleccionar el producto:
Product with ID: XXXX doesn't exist
.
- El botón Atrás ahora funciona como se espera de Administración > Tiendas > Estado del pedido > Editar el estado del pedido. Corrección enviada por Vadim Malesh en la solicitud de extracción 27976. GitHub-1270
- La vista previa de imágenes ya no cambia inesperadamente cuando se usan las teclas de dirección para mover el cursor en el campo Nombre de archivo de la lista Adobe Stock. Corrección enviada por Adarsh Manickam en la solicitud de extracción 25991. GitHub-847
- El campo Su contraseña de la sección Verificación de identidad del usuario actual de la página Administración > Sistema > Integraciones ahora hereda los estilos según lo esperado. Corrección enviada por Eduard Chitoraga en la solicitud de extracción 25918. GitHub-25917
- La entrada validada por el validador de JavaScript en la tienda también superará la validación en el administrador. Anteriormente, el validador de JavaScript contabilizaba las líneas nuevas como un solo carácter en la tienda, pero en el servidor,
\Magento\Catalog\Model\Product\Option\Type\maxCharacters
contabilizaba las líneas nuevas como dos caracteres. Corrección enviada por Grzegorz Bogusz en la solicitud de extracción 26033. GitHub-25974
- La etiqueta
subTitle
ya no se borra al cambiar un título modal mediante la llamadasetTitle()
. Anteriormente, cuando intentaba crear un modal emergente o personalizado con un título y un subtítulo y, a continuación, cambiaba el título con el métodosetTitle()
, se borrabasubTitle
. Corrección enviada por Andrea Parmeggiani en la solicitud de extracción 26142. GitHub-26141
- El submenú de la pestaña Admin Marketing ahora se ajusta automáticamente a la longitud de los elementos de menú según lo esperado. Ahora también puede desplazarse horizontalmente. Corrección enviada por Paweł Tylek en la solicitud de extracción 26034. GitHub-18687
- La columna
customer_note
de la tablaquote
ahora usa el tipotext
como se esperaba. Anteriormente, utilizaba el tipovarchar(255)
. Corrección enviada por Ravi Chandra en la solicitud de extracción 26160. GitHub-26155
- Se corrigieron los problemas de visualización con el encabezado de tabla en la tabla Mi cuenta > Libreta de direcciones Entradas de direcciones. Corrección enviada por Abrar Pathan en la solicitud de extracción 27336. GitHub-27335
- El símbolo de moneda utilizado en el paso de precio de navegación por capas ahora se basa en la configuración predeterminada según lo esperado. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 24815. GitHub-21684
- El símbolo de la moneda bielorrusa (BYR) se ha actualizado a BYN. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 25723. GitHub-24713
- La sección Comparar productos de la página Catálogo ahora se muestra como se espera en la vista móvil en pantallas con resoluciones inferiores a 767 px. Corrección enviada por Hitesh en la solicitud de extracción 26418. GitHub-26416
- El desplazamiento por las páginas de productos ahora funciona según lo esperado en la vista móvil. Corrección enviada por Mateusz Krzeszowiak en la solicitud de extracción 25385. GitHub-10518, GitHub-21717
- Ahora puede desplazarse por las imágenes en miniatura de la galería en la página del producto en la vista móvil según lo esperado. Corrección enviada por iGerchak en la solicitud de extracción 25839. GitHub-21014
- Si hace clic en el título del tema en Admin > Contenido > Temas, ya no se generarán registros duplicados. Corrección enviada por Eden Duong en la solicitud de extracción 25926. GitHub-25925
- El diseño de la página Dirección de facturación/dirección de envío del administrador se ha refactorizado para cumplir con las convenciones de visualización del formulario del administrador. Corrección enviada por Alexey Rakitin en la solicitud de extracción 25699. GitHub-23481, GitHub-19805
- El vínculo Agregar para comparar de la página de detalles del producto ahora se representa correctamente en la vista móvil en pantallas con menos de 640 píxeles de resolución. Corrección enviada por Pawe Tylek en la solicitud de extracción 26424 y Tejash Kumbhare en la solicitud de extracción 26365. GitHub-26364
- La etiqueta Ordenar por ya no se superpone con el botón Comprar por de la página de categoría en la vista móvil. Corrección enviada por Andrii Kartavtsev en la solicitud de extracción 26381. GitHub-25300
- Ahora puede actualizar el valor de la muestra y el título del vínculo de un producto descargable activando la casilla de verificación Usar valor predeterminado. Corrección enviada por Abel Truong en la solicitud de extracción 27295. GitHub-27169
- Se ha corregido el espaciado entre el botón Actualizar y el campo Cantidad del minicarrito. Corrección enviada por Hitesh en la solicitud de extracción 26234. GitHub-26227
- El color del borde inferior de la tabla Entradas de direcciones adicionales de la página Libreta de direcciones coincide ahora con el color del borde
thead
ytbody
. Corrección enviada por Tejash Kumbhare en la solicitud de extracción 26649. GitHub-26648
- Los modelos de mensajes ya no realizan una acción de confirmación cuando un usuario hace clic en la superposición modal. Corrección enviada por Serhiy Zhovnir en la solicitud de extracción 27399.
URL
- Se ha refactorizado el repositorio de categorías (método de guardado), lo que anteriormente impedía crear rutas únicas al cambiar una clave URL de categoría. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27304. GitHub-14080
- Se ha mejorado la validación de la lógica de clave de URL de la categoría. Corrección enviada por Sergiy Vasiutynskyi en la solicitud de extracción 27412. GitHub-13689
Reescrituras de URL
- Los clientes que cambian de idioma en una página de CMS ahora pueden navegar correctamente a la vista de tienda que han seleccionado. Anteriormente, la aplicación mostraba un error 404.
- La generación de reescritura de URL para las direcciones URL de producto para las que ha habilitado la inclusión de rutas de categoría ahora funciona según lo esperado. Anteriormente, en implementaciones con varias vistas de tienda, la aplicación a veces generaba reescrituras de URL incorrectas utilizando el valor predeterminado de la ruta de URL de categoría en lugar de la ruta de URL específica de la vista de tienda. Corrección enviada por el host de Pieter en la solicitud de extracción 26784. GitHub-25124, GitHub-11616
- Se ha añadido una comprobación para evitar que la dirección URL se redirija si la ruta de solicitud es la misma que la de destino. Corrección enviada por Bartomiej Szubert en la solicitud de extracción 26902. GitHub-20309
- Las operaciones de reescritura de URL ya no eliminan una cadena de consulta de una URL cuando esta tiene una barra diagonal. Corrección enviada por Alexey Arendarenko en la solicitud de extracción 25603. GitHub-18717
IVA
- Se ha corregido la URL de validación de IVA para números de IVA de la UE. Corrección enviada por Shikha Mishra en la solicitud de extracción 27886. GitHub-27874
Visual Merchandiser
- La página Editar categoría ahora se comporta como se espera cuando arrastra y suelta productos en una nueva posición. Anteriormente, al arrastrar y soltar productos en cualquier página de categoría, se cambiaba la posición de la ventana de visualización en la parte superior de la página.
Marco de API web
- Se corrigieron problemas con las llamadas al POST
/rest/default/async/bulk/V1/orders
.
- Se corrigieron problemas con las llamadas al POST
/rest/default/async/bulk/V1/products
.
- El método
getList
se ha refactorizado para recuperar la extensiónis_subscribed
. Anteriormente, no se podía recuperar este atributo al recuperar una entidad de cliente mediante la API. Corrección enviada por enriquei4 en la solicitud de extracción 25311. GitHub-13252
- Al actualizar la información del cliente mediante
/V1/customers/:id
, ya no se restablecegroup_id
de forma innecesaria. Anteriormente, cuando se actualizaba un cliente mediante REST, el grupo de clientes se cambiaba a 1 si el cuerpo no contenía un grupo de clientes. Corrección enviada por MaxRomanov4669 en la solicitud de extracción 25958. GitHub-14663
- Los captadores que aceptan valores NULL en los contratos de servicio ya no generan errores de reflexión cuando se utilizan en la API web. Los métodos que pueden devolver un tipo nulo y válido ahora funcionan correctamente, independientemente del orden, también. Corrección enviada por Marco K̦pcke en la solicitud de extracción 25806. GitHub-25656
- Ahora puede usar el POST
/V1/guest-carts/:cartId/items
para agregar productos a un carro de compras específico. Anteriormente, cuando se utilizaba esta llamada, la aplicación ignoraba el valor decartId
. Corrección enviada por Vadim Malesh en la solicitud de extracción 27172. GitHub-14086
- Ahora puede usar el extremo
PUT /V1/cmsPage/:id
para guardar un título de página de CMS sin cambiar los valores de otros campos. Corrección enviada por Vadim Malesh en la solicitud de extracción 27237. GitHub-24704
- La paginación de los resultados de las solicitudes REST ahora es precisa. Anteriormente, cuando se solicitaban resultados de una página específica (por ejemplo,
page_size
= 1 y un valorcurrent_page
que estaba fuera de ámbito), la llamada devolvía repetía la última página de resultados en lugar de un mensaje informativo Corrección enviada por Lukasz Bajsarowicz en la solicitud de extracción 26988. GitHub-26986, GitHub-8099
- El resultado de la GET
/V1/orders/items/{id}
ahora incluye un elemento de atributo de extensión que incluye datos de mensajes de regalo. Corrección enviada por Laura Folco en la solicitud de extracción 25946. GitHub-19093
Lista de deseos
- Una lista de deseos ahora funciona como se espera cuando se activa en el nivel de vista de tienda y se desactiva en el nivel global. Anteriormente, cuando esta configuración estaba activa, la adición de un producto a una lista de deseos provocaba un error 404.
- La aplicación ahora guarda y muestra correctamente un nuevo nombre para una lista de deseos cuando cambia el nombre de una lista de deseos en implementaciones que contienen varias listas de deseos. Anteriormente, la aplicación seguía mostrando el nombre de la lista de deseos anterior.
- Ahora puede navegar y modificar listas de deseos desde el carro de compras en implementaciones que ejecuten Internet Explorer 11.x. Anteriormente, no se podía crear, editar ni mover una lista de deseos en este entorno.
- Hemos mejorado el mensaje de error que se muestra cuando un cliente intenta compartir su lista de deseos con más direcciones de correo electrónico de las permitidas. Corrección enviada por divyajyothi5321 en la solicitud de extracción 26066. GitHub-26064
- La aplicación ahora muestra la página Mi lista de deseos como se espera en pantallas con una resolución mayor de 768 px y menor de 1023 px. Corrección enviada por Hitesh en la solicitud de extracción 26546. GitHub-26543
- El correo electrónico generado al hacer clic en Compartir lista de deseos ahora muestra las mismas imágenes de producto que la página Lista de deseos. Corrección enviada por Michael Bottens en la solicitud de extracción 27125. GitHub-27124
- Los clientes ahora pueden agregar a una lista de deseos un producto simple que forme parte de un producto agrupado y el mismo producto simple con una cantidad diferente. Corrección enviada por MaxRomanov4669 en la solicitud de extracción 26258. GitHub-11209
WYSIWYG
- El cargador de imágenes de WYSIWYG ahora usa
pub/media/wysiwyg
como raíz de almacenamiento. Anteriormente, el subido usabapub/media
como su raíz de almacenamiento, lo que hacía que esas imágenes cargadas no fueran accesibles después de los cambios recientes en el código del cargador de imágenes. Corrección enviada por el host de Pieter en la solicitud de extracción 24878. GitHub-22609
- TinyMCE4 en el navegador Chrome ahora gestiona los caracteres de doble byte según lo esperado. Anteriormente, TinyMCE4 no administraba correctamente los caracteres de doble byte (como los que se usaban en chino) en Chrome. Corrección enviada por Hirokazu Nishi en la solicitud de extracción 25454. GitHub-24637
Problemas conocidos: generales
Problema: Las anomalías en los mensajes de error de tienda ocurren en implementaciones donde está instalado PHP 7.4.2. Cuando 2.4.0 se implementa con PHP 7.4.2, los símbolos de espacio en los mensajes de error de tienda se sustituyen por caracteres más (+). Este error es nativo de PHP 7.4.2 y no puede ser corregido por Adobe Commerce. Solución alternativa: Se recomienda usar otras versiones de PHP 7.4.x. Consulte Visualización de datos de mensajes sin procesar en la tienda artículo de la Base de conocimiento.
Problema: los comerciantes no pueden agregar productos pedidos a un paquete desde la página Crear paquete de administración y guardar el paquete. Consulte Creación de etiquetas de envío artículo de la Knowledge Base. La revisión MC-35514-2.4.0-CE-composer.patch para este problema ya está disponible en Versiones.
Problema: La aplicación muestra este mensaje de error durante la instalación con extensiones de terceros que dependen de las API para el módulo Store
en los comandos CLI: The default website isn't defined. Set the website and try again
. Solución alternativa: elimine las dependencias de las extensiones de terceros del Compositor, instale el Magento y, a continuación, instale las extensiones de terceros.
Problema: El botón Agregar selecciones a mi carro en la parte inferior del carro de compras no funciona. Solución alternativa: use el botón Agregar selecciones a mi carro en la parte superior de la página. Ver El botón Agregar selecciones a mi carro de compras no funciona Artículo de la Base de conocimiento.
Problema: los comerciantes no pueden interactuar con ningún elemento de página de la página Devoluciones después de crear una etiqueta de envío para una Autorización de devolución de mercancía (RMA). Ver La página de edición de devoluciones deja de funcionar al crear la etiqueta de envío Artículo de la base de conocimiento. La revisión MC-35984-2.4.0-composer.patch para este problema ya está disponible en Versiones.
Problema: los administradores no pueden agregar un producto configurable por SKU a un presupuesto. Cuando un administrador hace clic en el botón Agregar al presupuesto, la página Editar presupuesto permanece en estado de carga y el administrador no pudo guardar los cambios. Solución alternativa: no hay solución para la edición de presupuestos B2B. Sin embargo, aún puede solicitar productos seleccionando los productos de la lista de productos en lugar de agregarlos por SKU. Consulte El administrador de B2B no puede agregar un producto configurable a un artículo de la base de conocimiento.
Problema: los comerciantes no pueden crear un nuevo pedido del administrador debido a que Agregar productos por SKU y Agregar productos faltan botones en la página de creación de pedidos cuando el agrupamiento de JavaScript está habilitado. Solución alternativa: deshabilite el paquete de JavaScript para su implementación.
Problema: La aplicación generó un error de 404 not found
cuando un cliente intenta eliminar puntos de recompensa al retirar un pedido que se envía a varias direcciones.
Problema: al editar un producto configurable desde la lista de deseos de un cliente, se produce el siguiente comportamiento inesperado: aparece un campo inesperado en la página Configurar producto y la página Configurar producto no desaparece después de hacer clic en Aceptar. La aplicación también muestra este mensaje: Please load Wish List item
. Solución alternativa: vuelva a cargar la página Configurar producto.
Problema: los clientes no pueden cambiar el número de pedidos mostrados por página cuando la lista Pedidos abarca varias páginas. Actualmente, la aplicación muestra este mensaje cuando se desplaza a la última página de pedidos e intenta cambiar el número de pedidos mostrados por página: You have placed no orders
. Consulte el artículo de la base de conocimiento Pedidos con error. Solución alternativa: si vuelve a abrir la página Mis pedidos, se mostrará la lista Pedidos.
Problema: Al hacer clic directamente en el botón Exportar tasas de impuestos de la página Agregar nueva regla fiscal ( Tiendas > Reglas fiscales), no se descarga el archivo tax_rates.csv
como se esperaba. Solución alternativa: haga clic en el borde del botón Exportar tasas de impuestos. Consulte el artículo de la Base de conocimiento Exportar tasas de impuestos no funciona.
Problema: Los botones Actualizar de las secciones Últimos artículos pedidos, Productos en lista de comparación y Productos comparados recientemente de la página de Administración de actividades del cliente no funcionan según lo esperado. Actualmente, la aplicación desplaza la página cada vez que se hace clic en el botón Actualizar y no muestra el nombre del producto. Ver La actualización de las actividades del cliente no funciona Artículo de la base de conocimiento.
B2B
Problema: Si un código de descuento caduca antes de que se apruebe un pedido de compra, el pedido sigue mostrando el importe de descuento, pero una vez aprobado, el pedido se coloca en el total sin descuento. Solución alternativa: instale la revisión B2B-709 Purchase Order Discount patch para este problema, que ahora está disponible en la sección Mi cuenta > Descargas de magento.com
.
Problema: la aplicación encontró una excepción durante la actualización a B2B 1.2.0 en una implementación de varios sitios web. Cuando se ejecuta setup:upgrade
, este error se produce en el módulo PurchaseOrder
: Module Magento_PurchaseOrder: Unable to apply data patch Magento\PurchaseOrder\Setup\Patch\Data\InitPurchaseOrderSalesSequence for moduleMagento_PurchaseOrder
. Solución alternativa: instale la interfaz B2B-716 Add NonTransactionableInterface en el parche de datos InitPurchaseOrderSalesSequence, que ahora está disponible en la sección Mi cuenta > Descargas de magento.com
.
Problemas conocidos: VBE
Amazon Pay
-
Problema: faltan métodos de pago en el flujo de trabajo de cierre de compra cuando un cliente hace clic en Volver al cierre de compra estándar durante el cierre de compra con Amazon Pay. Solución alternativa: actualice la página de desprotección para mostrar los métodos que faltan.
-
Problema: la aplicación muestra dos métodos de pago Amazon idénticos en la lista desplegable Método de pago que está disponible al crear una nueva regla de precio del carro de compras.
Braintree
-
Problema: La aplicación muestra un error cuando un administrador intenta obtener acceso a la página Informe de liquidación de Braintree (Administrador > Informes ). Actualmente, la aplicación muestra este mensaje:
An error has happened during application run. See exception log for details
. Consulte Error en el informe de liquidación de Braintree al cargar artículo de la base de conocimiento. La revisión BUNDLE-2683_SettlementReport.patch para este problema ya está disponible en Versiones. -
Problema: Los comerciantes no pueden crear facturas parciales para pedidos en implementaciones en las que Venmo está habilitado y la configuración Habilitar Vault para pagos con tarjeta está deshabilitada. Actualmente, la aplicación muestra este error:
The "vault_capture" command doesn't exist. Verify the command and try again
. -
Problema: la aplicación muestra dos métodos de PayPal idénticos en la lista desplegable Método de pago que está disponible al crear una nueva regla de precio del carro de compras.
-
Problema: La aplicación encontró un error al abrir Ventas > Terminal virtual de Braintree. Aunque el formulario contiene elementos de interfaz de usuario dañados, sigue aceptando pagos. Solución alternativa: guarde las credenciales de Braintree correctas, lo que corregirá los campos de entrada contraídos. Ver La página Terminal virtual de Braintree está dañada Artículo de la Base de conocimiento. La revisión BUNDLE-2670_VirtualTerminal.patch para este problema ya está disponible en Versiones.
-
Problema: la aplicación muestra un mensaje de error en los siguientes países cuando un cliente selecciona un método de pago local durante el pago: Bélgica, Países Bajos, Italia, España y Polonia. Solución alternativa: ignora el mensaje de error y continúa con el pago.
dotdigital
- Problema: las pruebas de integración fallan con este error:
PHP Fatal error: Declaration of Dotdigitalgroup\Email\Test\Integration\Model\Sync\Importer\ImporterFailedTest::setUp() must be compatible with PHPUnit\Framework\TestCase::setUp(): void in /var/www/vendor/dotmailer/dotmailer-magento2-extension/Test/Integration/Model/Sync/Importer/ImporterFailedTest.php on line 36
. Solución alternativa: El parche BUNDLE-2684 Dotdigital Integration Tests patch para este problema ya está disponible en Versiones.
Klarna
- Problema: Si se deja en blanco el campo Tema de diseño en la mensajería en el sitio de Klarna (Administrador > Tiendas > Configuración > Configuración de Klarna), se generará una página en blanco. Solución alternativa: seleccione un tema de diseño y guárdelo.
Vértice
- Problema: la aplicación muestra un botón Verificación de direcciones en la sección de envío del flujo de trabajo de cierre de compra incluso cuando la validación de direcciones está deshabilitada. El validador de direcciones no vuelve a comprobar la dirección actualizada y continúa mostrando un mensaje que indica que la dirección no es válida cuando un cliente introduce una dirección correcta después de introducir por primera vez una dirección incorrecta, incluso cuando la validación de direcciones está habilitada. Solución alternativa: deshabilitar la validación de direcciones de Vértice.
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.0 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.