Notas de lanzamiento de Magento Open Source 2.4.0

Magento Open Source 2.4.0 presenta soporte para PHP 7.4, Elasticsearch 7.6.xy MySQL 8.0. Los cambios de seguridad importantes incluyen la habilitación de la autenticación de dos factores en el Administrador de forma predeterminada.

Con esta versión, las integraciones de métodos de pago Authorize.Net y Braintree se han eliminado del código central. Los comerciantes deben migrar a las extensiones oficiales que están disponibles en Magento Marketplace .

Esta versión incluye todas las mejoras en la calidad del núcleo que se incluyeron en Magento 2.3.5-p1, más de 100 nuevas correcciones al código del núcleo 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 central hasta mejoras significativas en la Gestión de inventario y GraphQL.

Las versiones menores traen mejoras sustanciales al código. Antes de actualizar a Magento 2.4.0, confirme que su entorno cumple con los requisitos técnicos mínimos de la pila .

 

Las versiones trimestrales pueden contener cambios incompatibles con versiones anteriores (BIC). Magento 2.4.0 contiene cambios menores incompatibles con versiones anteriores. Para revisar cambios menores incompatibles con versiones anteriores, consulte la referencia BIC . (Los principales problemas de incompatibilidad con versiones anteriores se describen en los aspectos destacados de BIC . No todas las versiones introducen BIC importantes).

 

Los nombres de los paquetes de las versiones de solo seguridad generalmente se agregan con -p1. Sin embargo, no podríamos evitar desviarnos de estas convenciones de nombres con Magento 2.3.5, que a su vez ha tenido un efecto dominó temporal en los nombres de paquetes de seguridad posteriores. Específicamente, la versión completa de Magento 2.3.5 es Magento 2.3.5-p1. La versión solo de seguridad que lanzaremos cuando los GA de Magento 2.4.0 sean Magento 2.3.5-p2. Esperamos volver a las convenciones de nomenclatura habituales en futuras versiones.

Parche solo 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, Magento 2.3.5-p2). El parche 2.3.5.2 (paquete Composer 2.3.5-p2) es un parche solo de seguridad que proporciona soluciones para las vulnerabilidades que se han identificado en nuestra versión trimestral anterior, Magento 2.3.5-p1. Todas las revisiones que se aplicaron a la versión 2.3.5 se incluyen en este parche solo de seguridad. (Un hotfix proporciona una solución a una versión lanzada de Magento que aborda un problema o error específico).

Para obtener información general sobre parches solo de seguridad, consulte la publicación de Magento DevBlog que presenta la nueva versión de parche solo de seguridad . Para obtener instrucciones sobre cómo descargar y aplicar parches solo de seguridad (incluido el parche 2.3.5-p2), consulte Instalar Magento con Composer . Los parches solo de seguridad incluyen solo correcciones de errores de seguridad, no las mejoras de seguridad adicionales que se incluyen en el parche completo.

Otra información de lanzamiento

Aunque el código para estas funciones se incluye con versiones trimestrales del código central de Magento, varios de estos proyectos (por ejemplo, Gestión de inventario y Estudio de aplicaciones web progresivas (PWA) Studio) también se lanzan de forma independiente. Las correcciones de errores para estos proyectos se documentan en la información de publicación específica del proyecto que está disponible en la documentación de cada proyecto.

Destacar

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 la vulnerabilidad de ejecución remota de código (RCE) y scripting entre sitios (XSS)

No se han producido ataques confirmados relacionados con estos problemas hasta la fecha. Sin embargo, ciertas vulnerabilidades pueden ser potencialmente explotadas para acceder a la información del cliente o hacerse cargo de las sesiones de administrador. La mayoría de estos problemas requieren que un atacante obtenga primero acceso al administrador. Como resultado, le recordamos que tome todos los pasos necesarios para proteger a su administrador, incluidos, entre otros, estos esfuerzos: lista de permisos de IP, autenticación de dos factores , uso de una VPN, uso de una ubicación única /adminy buena contraseña higiene. Consulte Actualizaciones de seguridad disponibles para Magento para una discusión de estos problemas resueltos. para una discusión de estos problemas resueltos.

Las mejoras de seguridad adicionales incluyen:

Esta versión incluye más de 30 correcciones de seguridad y mejoras de seguridad de la plataforma. Las mejoras de seguridad adicionales incluyen:

  • La autenticación de dos factores (2FA) ahora está habilitada de manera predeterminada para el administrador de Magento . Los usuarios administradores primero deben configurar 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 y no se puede deshabilitar. Este paso adicional de autenticación dificulta que los usuarios malintencionados inicien sesión en el administrador sin autorización. Las implementaciones adicionales de 2FA están programadas para su lanzamiento con Magento 2.4.0 General Availability, que está programado para fines de julio. Consulte Autenticación de dos factores (2FA) .

  • El modo estricto de filtro de plantilla ahora está habilitado de forma predeterminada . Los componentes de Magento (incluidas las páginas y bloques de CMS) que usan el filtro de plantilla en modo heredado pueden ser vulnerables a la ejecución remota de código (RCE). La activación del modo estricto de forma predeterminada garantiza que los ataques RCE no se puedan habilitar deliberadamente. 

  • La representación de datos para proveedores de datos de IU ahora está deshabilitada de manera predeterminada . Esto elimina la oportunidad para que usuarios malintencionados ejecuten JavaScript arbitrario.

  • Nueva \Magento\Framework\Escaper clase . Esta clase se proporciona para  .phtmlplantillas y las clases PHP que son responsables de generar HTML. Esta clase contiene métodos de desinfección HTML relevantes para múltiples contextos. La  $escaper variable local está disponible dentro de las .phtmlplantillas y debe usarse en lugar de la obsoleta $block->escape{method}. Uso en $escaperlugar de  $block como el uso de  $block->escape{method}ha quedado en desuso.

  • Soporte para el nuevo archivo security.txt . Este archivo es un archivo estándar de la industria en el servidor que ayuda a los investigadores de seguridad a informar posibles problemas de seguridad a los administradores del sitio.

A partir del lanzamiento de Magento Commerce 2.3.2, Magento asignará y publicará números indexados de vulnerabilidades y exposiciones comunes (CVE) con cada error de seguridad que nos notifiquen terceros. Esto permite a los usuarios de Magento Commerce identificar más fácilmente las vulnerabilidades no tratadas en su implementación. Puede obtener más información sobre los identificadores de CVE en CVE .

Actualizaciones de plataforma

Las siguientes actualizaciones de 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 los requisitos de la pila de tecnología Magento 2.4 .

  • Soporte de PHP 7.4 introducido y PHP 7.1 y 7.2 en desuso . Magento 2.4.0 presenta soporte para PHP 7.4.

  • Soporte para PHPUnit 9.xy desuso de PHPUnit 6.5 . PHP 7.4 requiere el uso del último marco de prueba PHPUnit, que es PHPUnit 9.x. Los proveedores de extensiones de Magento Marketplace deben confirmar que todas las nuevas versiones de extensiones son compatibles con PHP 7.4 y que todas las pruebas de unidad e integración se han configurado para ejecutarse con PHPUnit 9.

  • Elasticsearch 7.6.x soporte . Elasticsearch 7.6.x es ahora el motor de búsqueda de catálogo predeterminado para Magento Commerce y Open Source. No puede instalar o actualizar a Magento 2.4.0 sin también instalar Elasticsearch 7.6.x. El código de Elasticsearch versión 2.x ha sido eliminado. Las versiones de Elasticsearch 5.xy 6.x han quedado en desuso y ya no son compatibles. Ver Elasticsearch .

  • Soporte MySQL 8.0 . Magento 2.4.x es compatible con MySQL 8.x. (Magento 2.4.0 se probó con MySQL 8.0.20.) Se recomienda a los comerciantes que migren sus implementaciones a MySQL 8.x para aprovechar su rendimiento, seguridad y confiabilidad mejorados. Aunque MySQL 5.7 todavía es compatible con Magento 2.4.x, MySQL 5.6 ya no es compatible. No puede alojar Magento 2.4.x con una base de datos MySQL 5.6. Ver MySQL .

  • Eliminación del motor de búsqueda del catálogo MySQL . El motor de búsqueda MySQL ha sido eliminado de Magento 2.4.0 y reemplazado como el motor de búsqueda predeterminado con Elasticsearch. Elasticsearch proporciona capacidades de búsqueda superiores, así como optimizaciones de rendimiento de catálogo. Todos los comerciantes deben tener Elasticsearch para instalar e implementar Magento 2.4.0. Consulte Verificar el motor de búsqueda del catálogo .

  • Soporte MariaDB 10.4 . El soporte para MySQL 8.0 brinda a los comerciantes la oportunidad de implementar MariaDB 10.4 con Magento. Aunque los comerciantes aún pueden usar MariaDB 10.2 con Magento 2.4.0, recomendamos actualizar a MariaDB 10.4 para mejorar el rendimiento y la confiabilidad. 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).

  • 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 en desuso. Vea la Migración de Zend Framework a la publicación del Proyecto Laminas DevBlog.

  • Eliminación de la integración central del código de protección contra fraude Significado . Esta característica principal ya no es compatible. Los comerciantes deben migrar a la extensión Signifiedd Fraud & Chargeback Protection que está disponible en Magento Marketplace.

  • El módulo central Braintree se ha eliminado de la base del código . El módulo de pagos de Braintree ahora proporciona el mismo conjunto de características. Ver pagos de Braintree .

Mejoras de infraestructura

Esta versión contiene mejoras en la calidad central, que mejoran la calidad del Framework y estos módulos: Cuenta de cliente, Catálogo, CMS, Importación, Carrito y pago, y B2B.

  • Eliminación de la integración central de 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 central. Los comerciantes deben migrar a la extensión oficial que está disponible en Magento Marketplace. Consulte la publicación de desaprobación de las integraciones de pagos principales de Magento devblog post.

  • Soporte para búsqueda de palabras parciales para Elasticsearch (nuevo motor de búsqueda predeterminado) . Elasticsearch ahora admite el uso de palabras parciales en términos de búsqueda para nombres de productos y SKU cuando se utiliza la búsqueda rápida. Esta capacidad fue soportada por el motor de búsqueda MySQL, que ha sido desaprobado y reemplazado por Elasticsearch en esta versión.

  • Actualización del SDK de PayPal JavaScript . Hemos migrado la integración de PayPal Express Checkout al último SDK de JavaScript de PayPal, un SDK que recopila y pasa automáticamente los parámetros de riesgo necesarios a PayPal. El comportamiento del método de pago de PayPal Express Checkout no cambia. Sin embargo, actualizar este SDK a la última versión permite a los comerciantes acceder a las últimas funciones y mejoras de seguridad.

  • Desaprobación y eliminación del Asistente de configuración web . Debe usar la línea de comandos para instalar o actualizar Magento 2.4.0. Ver Instalar Magento .

  • Plugin de actualización del compositor . El complemento Composer agiliza el proceso de actualización al resolver los cambios que deben realizarse en el composer.json archivo raíz del proyecto  antes de actualizar a un nuevo requisito de producto Magento. Este complemento protege contra la sobrescritura de personalizaciones. Consulte Actualización con el complemento raíz de Magento Composer .

  • Compras asistidas por el vendedor . Esta característica permite a los comerciantes ver el escaparate en nombre de sus clientes. Los clientes optan por permitir el acceso de la 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 características incluyen:

    • La ACL para controlar qué administradores pueden iniciar sesión en las cuentas de los clientes se puede configurar por sitio web
    • Compatibilidad con múltiples sitios web y alcances de cuentas de clientes
    • Los pedidos realizados en nombre de los clientes se registran en el escaparate y el administrador
    • Todas las sesiones se destruyen después del 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 sections.xmlinvalidaciones personalizadas están activas. (Anteriormente, el contenido privado (almacenamiento local) no se rellenaba correctamente cuando tenía un etc / frontend / secciones.xml personalizado con invalidaciones de acciones). Consulte Contenido privado .

  • Múltiples optimizaciones para el rendimiento de Redis . Las mejoras minimizan el número de consultas a Redis que se realizan en cada solicitud de Magento. Estas optimizaciones incluyen:

    • Disminución del tamaño de las transferencias de datos de red entre Redis y Magento

    • Reducción en el consumo de ciclos de CPU de Redis al mejorar la capacidad del adaptador para determinar automáticamente qué necesita cargarse

    • Reducción de las condiciones de carrera en operaciones de escritura de Redis

    Consulte Usar Redis para la página de Magento y la memoria caché predeterminada y Configurar el almacenamiento en caché .

  • Caché mejorado de resultados de consultas SQL a tablas de inventario . Estas mejoras incluyen:

    • Almacenamiento en caché de consultas SQL en la  inventory_stock_sales_channel tabla (1 consulta en lugar de 16)

    • Almacenamiento en caché del resultado de las consultas en la inventory_stock tabla (1 consulta en lugar de 16)

  • Mejora de hasta un 25-30% en el rendimiento del pedido rápido para agregar al carrito .

  • Los comerciantes ahora pueden usar la carga diferida para cargar imágenes. Consulte Configurar propiedades del tema .

Integración de Adobe Stock v2.0

Posibilidad de licenciar vistas previas de imágenes de stock de la Galería de medios . 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 la licencia de la imagen de vista previa de stock.

Este reemplazo de la antigua Galería de medios ofrece una nueva interfaz de búsqueda para los recursos de medios de Magento. Los administradores ahora pueden buscar, filtrar y ordenar imágenes hasta 30 veces más rápido que en la versión anterior de esta función. Los comerciantes pueden usar esta herramienta para evaluar el uso de imágenes de escaparate. Los desarrolladores de extensiones deben tener en cuenta que las extensiones que se desarrollaron para la Galería multimedia no funcionarán como se esperaba con la nueva Galería multimedia.

La gestión del inventario

Las mejoras de la gestión de inventario para esta versión incluyen soporte para la recolección en la tienda y soporte de productos combinados. Consulte las notas de la versión de Gestión de inventario para una discusión más detallada de las correcciones de errores recientes de Gestión de inventario.

GraphQL

Las mejoras de GraphQL incluyen:

  • pickupLocations la consulta admite la función de recogida de inventario en la tienda
  • categoriesLa consulta devuelve una lista de categorías que coinciden con un filtro especificado. Esta consulta difiere de la categoryListconsulta en que admite la paginación.
  • reorderItems La mutación permite a un usuario conectado agregar todos los productos de un pedido anterior a su carrito.

Consulte la Guía del desarrollador de GraphQL para obtener detalles sobre esta y otras mejoras. Consulte las Notas de la versión para una discusión detallada de las correcciones de errores recientes de GraphQL.

PWA Studio

Consulte la compatibilidad de Magento para obtener una lista de las versiones de PWA Studio y sus versiones principales compatibles de Magento. Para obtener información sobre mejoras y correcciones de errores, consulte las versiones de PWA Studio .

Marco de pruebas funcionales de Magento (MFTF)

MFTF v3.0.0 incluye estas nuevas características e incluye soporte para PHP 7.4 y PHPUnit 9:

  • Ayudantes de 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 aserción anidada
  • verificación estática que verifica e informa referencias a entidades de prueba obsoletas

Esta versión también elimina las acciones obsoletas y actualiza los scripts que se agregaron para actualizar las pruebas a los requisitos de la versión principal de MFTF.

Mejoras de extensión desarrolladas por el proveedor

Esta versión de Magento incluye extensiones desarrolladas por terceros. Introduce mejoras de calidad y UX en estas extensiones y una expansión de la cobertura MFTF.

Los proveedores de extensiones de Magento Marketplace deben confirmar que sus extensiones son compatibles con PHP 7.4 al publicar una nueva versión de su extensión para Magento 2.4.0.

Amazon Pay

Esta versión incluye:

  • Actualizaciones a las listas de permisos de CSP
  • Posibilidad de hacer múltiples autorizaciones para un pedido de varios artículos
  • Soporte para direcciones japonesas

Pagos Braintree

Esta extensión reemplaza nuestra integración principal de Braintree. Proporciona las mismas características que la integración central de Braintree. 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 financiamiento disponibles. También incluye mejoras para:

  • reembolsos
  • Eficiencia API
  • cookies y pruebas unitarias
  • descuentos
  • los ajustes de configuración ahora contienen una sección de mensajería en el sitio para el control de la visualización de la tienda de mensajes promocionales de Klarna. Ver Configuración de Klarna .

Vértice

Esta versión de Vertex incluye las siguientes nuevas características y mejoras:

  • Mejoras en la experiencia del usuario de configuración de administrador
  • Reemplazo de scripts de instalación y actualización con archivos de esquema XML y parches
  • Eliminación de código obsoleto ( ApiClient y  ClientInterface)

Yotpo

Las clasificaciones y revisiones de Yotpo están integradas con Page Builder.

Problemas resueltos

Hemos solucionado cientos de problemas en el código principal de Magento 2.4.0.

Instalación, actualización, despliegue

  • Ahora puede eliminar con éxito un sitio web junto con los ajustes de configuración específicos del alcance del sitio web app/etc/config.phpcomo se esperaba. Anteriormente, cuando se trató de eliminar el sitio web, la operación ha fallado, y Magento aparece este error: The website with code xxx that was requested wasn't found. Verify the website and try again. Además, Magento este error aparece en la tienda: Config files have changed. Run app:config:import or setup:upgrade command to synchronize configurationGitHub-24061
  • Los ajustes de configuración que están deshabilitados index.phpya no se pueden editar desde el administrador.
  • La instalación de Magento ahora se completa con éxito, y las tiendas se crean como se esperaba, cuando la configuración de la tienda está predefinida en config.php.
  • \Magento\Store\App\Config\Source\RuntimeConfigSource::getEntitiesha sido refactorizado para disminuir el número de SHOW TABLE STATUSconsultas que realiza. (Este cambio vuelve al comportamiento que esta función muestra en Magento 2.3.3.)
  • Los scripts de datos ya no se vuelven a ejecutar cada vez que intente actualizar la base de datos mediante la ejecución bin/magento setup:upgrade. Anteriormente, los scripts de actualización se volvían a ejecutar innecesariamente, lo que afectaba el rendimiento. GitHub-19469
  • Magento ahora muestra los siguientes comportamientos cuando se interrumpe su conexión a Redis. Previamente, Magento no vuelva a cargar la página actual y muestra este error: An error has happened during application run. See exception log for details.

    • Las sesiones de administrador y escaparate caducan
    • Los usuarios administradores y escaparates deben iniciar sesión nuevamente
    • Los datos de la sesión se guardan en var/session/
    • No se registran errores ni excepciones.
  • El bin/magento setup:di:compile comando ya no falla con las clases anónimas. Corrección presentada por Yevhen Sentiabov en la solicitud de extracción 26533 . GitHub-26532 , GitHub-21555
  • Se han resuelto los problemas con la compilación MENOS en el tema Luma de Magento cuando se usa un compilador MENOS alternativo que el que viene con Magento por defecto. Corrección presentada por Pieter Hoste en la solicitud de extracción 24003 . GitHub-23619
  • Ya no necesita tener un env.phparchivo grabable al cambiar al modo de mantenimiento. En cambio, Magento establece los no-cacheencabezados para todas las solicitudes frontend en modo de mantenimiento ( Cache-Control). Anteriormente, no podía habilitar el modo de mantenimiento cuando env.phpera de solo lectura, y Magento intentó desactivar el FPC al cambiar al modo de mantenimiento. Arreglo presentado por Marco K̦pcke en la solicitud de extracción 25790 . GitHub-24229
  • db-ssl-verify ya no produce un error de índice indefinido durante una ddevconfiguración. Arreglo presentado por Daniel Ruf en la solicitud de extracción 26763 . GitHub-26762
  • Las dependencias del compositor se han actualizado para implementar la caducidad de la clave Redis, lo que ha mejorado el rendimiento de Redis. Arreglo enviado por toxix en la solicitud de extracción 25488 . GitHub-25487

Integración de Adobe Stock

  • Se han agregado estilos CSS a la visualización de imágenes de Adobe Stock para resaltar la imagen seleccionada. Corrección presentada 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 con las teclas de flecha. Corrección presentada por Adarsh ​​Manickam en la solicitud de extracción 27138 . GitHub-973
  • Magento ahora almacena en caché los mensajes de errores que ocurren cuando un cliente intenta aplicar un filtro a las imágenes de Adobe Stock. Corrección presentada por Shankar Konar en la solicitud de extracción 26502 . GitHub-863
  • Magento 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 no confirma la operación de guardar. Corrección presentada por Serhiy Zhovnir en la solicitud de extracción 27399 . GitHub-1002

Backend

  • Las plantillas de correo electrónico ( Administrador > Marketing > Comunicaciones > Plantillas de correo electrónico ) ahora se pueden previsualizar desde el Administrador cuando la minificación de JavaScript está habilitada. Anteriormente, cuando intentaba obtener una vista previa de 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 el administrador como se espera después de que se haya creado una cuenta de administrador con privilegios limitados. Anteriormente, el administrador no era accesible. En cambio, los usuarios con estos permisos fueron redirigidos a la tienda con un error 404. Arreglo presentado por Eden Duong en la solicitud de extracción 25909 . GitHub-25881
  • Magento ya no duplica datos de SEO como clave de URL, meta título, meta palabras clave y meta descripción cuando duplica un producto. Corrección presentada por Dasharth patel en la solicitud de extracción 26659 . GitHub-26054
  • Magento ya no arroja un error cuando elimina una imagen de una página mientras la crea desde Admin > Contenido > Páginas >   Agregar nueva página . Previamente, Magento lanzó este error en la consola de desarrollador: 500 (Internal Server Error)Arreglo presentado por Eden Duong en la solicitud de extracción 25924 . GitHub-25893

Paquete de productos

  • Se catalog_product_priceha mejorado el rendimiento de la operación de reindexación para productos de paquete.
  • Los administradores ya no pueden ingresar manualmente una clase de impuestos en el Administrador para un producto de paquete cuando las configuraciones de Clase de impuesto y Precio dinámico del producto de paquete están deshabilitadas para la vista predeterminada de la tienda. Anteriormente, cuando un administrador desmarcaba la opción Usar valor predeterminado junto a Clase impositiva , Magento habilitaba la opción, permitiendo que un administrador ingrese otro valor y guarde el producto.
  • Los precios de los productos combinados ahora se calculan correctamente en las páginas de productos.
  • Ahora puede agregar cualquier cantidad de productos combinados a su carrito de compras sin error. Anteriormente, al añadir un paquete de productos a su carro, a continuación, navegado al carro, Magento aparece este error: Please correct the quantity for some products.

Cache

  • El cache.xsdesquema de Magento\Framework\Cachese ha refactorizado para que un tipo de caché sin instanceatributo ya no cause excepciones cuando deshabilita un módulo a través de la administración de la caché de administrador. Anteriormente, cuando creaba un tipo de caché usando cache.xmlsin el instanceargumento, Magento lanzó una excepción cuando intentó deshabilitarlo. Arreglo presentado por Andrii Beziazychnyi en la solicitud de extracción 27307 . GitHub-26224
  • health_check.phpya no falla si un motor de caché de base de datos está configurado en su implementación de Magento. Arreglo presentado por Andrii Beziazychnyi en la solicitud de extracción 25722 . GitHub-25669

Carrito y pago

  • Magento ya no arroja un error durante el proceso de pago cuando la opción de configuración Sincronizar con el backend está habilitada. GitHub-23833
  • Los botones de opción para los métodos de envío ahora están habilitados como se esperaba en el flujo de trabajo de pago.
  • La página de revisión de pedidos en el flujo de trabajo de pago ahora se carga correctamente para un pedido que se envía a varias direcciones cuando se habilitan los Términos y condiciones con la configuración Manual aplicado . Anteriormente, la página de Revisión no pasaba la validación y Magento mostraba un error 404.
  • Magento ahora muestra el ícono giratorio mientras los precios se actualizan en el carrito.
  • Magento ahora muestra un mensaje informativo cuando un producto en el mini carrito se agota antes de finalizar la compra. Una vez que haya eliminado el artículo agotado, Magento muestra el botón Proceder al pago . Anteriormente, Magento no mostraba este botón.
  • Magento 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, Magento mostraba una página en blanco.
  • Magento ahora aplica las reglas de precios de carrito solo a los productos secundarios de productos de paquete que coinciden con los criterios de la regla. Anteriormente, Magento aplicaba la regla del precio del carrito a todos los productos secundarios que pertenecían al paquete de productos.
  • StorefrontMiniCartSection ha sido reemplazado por StorefrontMinicartSectionen las pruebas MFTF. Arreglo presentado 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 presentada por Mateusz Krzeszowiak en la solicitud de extracción 25541 . GitHub-22416
  • Magento ya no subraya el ícono Eliminar en el carrito de compras cuando el cursor se desplaza sobre el ícono cuando se visualiza el escaparate en Internet Explorer. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26173 . GitHub-26164
  • Cambiar la calle de facturación ya no 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 de envío. Corrección presentada por Yurii Tvardyi en la solicitud de extracción 26279 . GitHub-26276
  • La región de promoción del mini carrito ahora se representa como se esperaba. Arreglo presentado por Matti Vapa en la solicitud de extracción 25375 . GitHub-25373

Regla del precio del carrito

  • Las reglas de precios de carrito que se basan en métodos de pago ahora se aplican durante el flujo de trabajo de pago. GitHub-24206
  • Se corrigió el comportamiento del elemento de página Datepicker en Admin > Marketing > Promociones > Regla de precio de catálogo . Corrección presentada por Hitesh en la solicitud de extracción 26290 . GitHub-26289
  • StorefrontMiniCartSection ha sido reemplazado por StorefrontMinicartSectionen las pruebas MFTF. Arreglo presentado por Andrii Kalinich en la solicitud de extracción 27955 . GitHub-27897
  • La cuadrícula de cupones no utilizada en el flujo de trabajo para crear una nueva regla de precio de carro se ha deshabilitado. Arreglo presentado por Eden Duong en la solicitud de extracción 24471 . GitHub-24468
  • Cambiar la calle de facturación ya no cambia la dirección de envío de un cliente cuando se ha seleccionado una sola dirección para las direcciones de facturación y envío. Corrección presentada por Yurii Tvardyi en la solicitud de extracción 26279 . GitHub-26276

Catalogar

  • Magento ya no arroja un error cuando cambia el nombre de un producto escalonado que se incluye en una actualización programada. Anteriormente, cuando intentaba guardar el producto con un nuevo nombre, Magento 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 (?, ?, ?, ?, ?, ?, ?)
  • Los valores de los atributos personalizados ahora se pueden guardar como se espera del administrador.
  • La función Ver productos recientemente ahora muestra los productos que están asociados solo con la vista de la tienda actual en implementaciones de varias tiendas cuando Tiendas > Configuraciones > Catálogo > Productos vistos / comparados recientemente > Mostrar para actual está configurado para ver la tienda . Anteriormente, Magento mostraba productos vistos recientemente de todos los sitios web, sin importar a qué sitio web se le haya asignado el producto.
  • Magento ahora muestra imágenes de productos en el mini carrito sin distorsión. Anteriormente, Magento estiraba la imagen en el mini carrito para llenar todo el ancho y la altura del contenedor de imágenes.
  • La getBasePricefunción ahora devuelve un valor flotante como se esperaba en lugar de una cadena.
  • La función de comparación de productos ahora funciona como se esperaba. Ahora muestra solo productos en la lista de comparación del usuario actual.
  • Ahora puede asignar una marca de agua predeterminada a un tema. Anteriormente, después de asignar la marca de agua, Magento arrojó un error fatal.
  • Ahora puede editar con éxito un producto configurable con muchas variantes (aproximadamente 5,000) desde el Administrador. Anteriormente, cuando intentaba editar un producto configurable con muchos subproductos, Magento 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 clasificación por conjuntos de atributos en Admin > Catálogo > Productos ahora se basa en el orden alfabético como se esperaba.
  • La característica Productos vistos recientemente ahora funciona como se esperaba en implementaciones de varias tiendas.
  • La casilla de verificación Producto en sitios web de la página del nuevo producto ahora está habilitada de forma predeterminada para administradores restringidos en implementaciones de sitios múltiples. Anteriormente, la casilla de verificación para el sitio web no predeterminado no estaba preseleccionada, y si el administrador dejaba la casilla de verificación sin seleccionar, Magento mostraba un mensaje de error.
  • addToCartLos eventos ahora se rastrean como se esperaba en la capa de datos. Anteriormente, después de cambiar las opciones configurables para un producto, y luego hacer clic en Agregar al carrito , el nuevo addToCartevento no se agregaba a la capa de datos.
  • El carrito mini y el carrito de compras Admin ( Admin > Clientes > Administrar carrito de compras ) ahora muestran los precios correctos de los productos cuando se aplica una Regla de precios de catálogo. Anteriormente, el carrito de compras de la tienda mostraba el precio correcto del producto, pero el carrito mini y el carrito de compras de Admin mostraban el precio original del producto.
  • El filtrado en la columna del sitio web de la cuadrícula de productos de administración ahora funciona como se esperaba. Anteriormente, los resultados del filtro no mostraban el número correcto de productos, pero mostraban de manera consistente el número total de productos como 1.
  • La condición de precio se utiliza catalog_product_entity_decimalpara filtrar por precio. Sin embargo, esta tabla no contiene registros para productos configurables, dinámicos de paquete y agrupados porque estos productos no tienen un precio fijo. La tabla correcta para usar para filtrar por precio es catalog_product_index_price.
  • El catálogo de administración y las listas de productos ahora muestran símbolos de moneda en las columnas MSRP, Costo y Precio especial. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27261 . GitHub-21910 , GitHub-20906 , GitHub-20472
  • La ventana emergente Agregar para precio de grupo de clientes ( Administrador > Catálogo > Productos > Nuevo producto > Precio avanzado ) ahora se cierra como se espera cuando hace clic en el icono de cerrar. Arreglo presentado por Ashna-Jahan en la solicitud de extracción 25759 . GitHub-25433
  • La descripción de muestra que se proporciona para la descripción y el título de un nuevo producto ya no contiene comillas dobles. Corrección presentada por Nathan Morgan en la solicitud de extracción 25655 . GitHub-25654
  • Magento ya no arroja un error cuando intenta filtrar productos en la página de Categoría con un precio no válido. Anteriormente, Magento registraba este error en el registro del sistema. Corrección presentada por Ihor Sviziev en la solicitud de extracción 25912 . GitHub-25911
  • Ahora puede navegar por los resultados de búsqueda de categoría de varias páginas. Anteriormente, Magento creaba páginas duplicadas de resultados de búsqueda cuando intentaba usar el botón Atrás para volver a la primera página de resultados. Corrección presentada por Douglas Radburn en la solicitud de extracción 25337 . GitHub-14971
  • Se corrigió el tipo de retorno a string|nullpara el getSourceModelmétodo en la Eav\Attribute.phpclase. Arreglo enviado por Mychailo en la solicitud de extracción 25333 . GitHub-25278
  • Guardar un producto nuevo (duplicado) ya no da como resultado la duplicación de las imágenes del producto cientos de veces. Corrección presentada por Jeroen en la solicitud de extracción 25875 . GitHub-9466
  • Magento ya no arroja un error de JavaScript cuando elimina un producto con una opción personalizada de tipo filedurante la creación de un pedido desde el Administrador. Arreglo enviado por adrian-martinez-interactiv4 en la solicitud de extracción 24843 . GitHub-24842
  • La creación de un producto sin imagen al usar product_page_image_large en su diseño da como resultado una imagen de marcador de posición que se muestra como se esperaba. Previamente, Magento lanzó 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 givenArreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26974 . GitHub-26973
  • Puede usar el POST /V1/:sku/linkspunto final para establecer enlaces de productos con una matriz vacía de productos cuando el producto tiene enlaces existentes. Anteriormente, Magento arrojó un error. Arreglo presentado por Sathish Subramanian en la solicitud de extracción 26979 . GitHub-26800
  • Ahora puede usar el menú desplegable Acciones de la cuadrícula Productos para especificar si un producto tiene peso cuando actualiza los atributos de varios productos desde el Administrador. Corrección presentada por Bartomiej Szubert en la solicitud de extracción 26075 . GitHub-6310
  • La lógica de validación se ha agregado a los  Productos por página en los valores permitidos de la cuadrícula  y los  productos por página en los campos de valor predeterminado de la página de configuración de la tienda. Anteriormente, los administradores de la tienda podían ingresar valores no disponibles en estos campos. Arreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 27093 . GitHub-27089 _

Widget de catálogo

  • La CatalogWidgetlista de productos ahora funciona como se esperaba con las categorías de anclaje, y los productos de las categorías de anclaje ahora coinciden y se muestran. Anteriormente, cuando seleccionaba una categoría principal que era un ancla, pero que no contenía productos asignados, los productos no eran visibles en el widget.
  • Magento ahora muestra todos los elementos secundarios de una categoría principal seleccionada como se esperaba. Anteriormente, si seleccionaba una categoría principal que era un ancla, pero que no contenía productos asignados, Magento no mostraba todos los productos anidados.
  • El widget de Productos vistos recientemente ahora funciona correctamente cuando Tiendas > Configuración > Catálogo > Catálogo > Recientemente vistos / comparados > Sincronizar productos de widget con almacenamiento de back-end está configurado en  .

Limpiar

  • Se eliminó una etiqueta de cierre adicional del módulo XML. Arreglo enviado por Tejash Kumbhare en la solicitud de extracción 26339 . GitHub-26338
  • La desalineación corregida de Mi dirección de facturación y envío es la misma casilla de verificación en la sección de la página Revisión y Pagos del flujo de trabajo de pago. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26169 . GitHub-26168
  • Se eliminó el espacio en blanco innecesario entre las etiquetas de campo y los asteriscos en la sección Dirección de envío del flujo de trabajo de pago. Arreglo presentado por Daniel Ruf en la solicitud de extracción 26285 . GitHub-26275
  • Desalineación corregida de los botones de radio en la sección Métodos de envío del flujo de trabajo de pago. Corrección presentada por Hitesh en la solicitud de extracción 25966 . GitHub-25962
  • Se corrigió el espaciado inconsistente del menú en la vista móvil. Corrección presentada por Hitesh en la solicitud de extracción 26238 . GitHub-26235
  • Desalineación corregida del mini carro Editar y eliminar iconos en la vista móvil. Arreglo presentado por Vasilii Burlacu en la solicitud de extracción 27493 . GitHub-26652
  • Desalineación corregida del rango de código postal de la tasa impositiva / casilla de verificación en la página Agregar nueva tasa impositiva / Código postal ( Administrador > Tienda > Impuestos > Zonas y tasas impositivas ). Corrección presentada por Sathish Subramanian en la solicitud de extracción 26932 . GitHub-26917
  • El enlace del asistente de configuración al administrador ahora funciona como se esperaba. Corrección presentada 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 de Administración de caché en el Administrador. Arreglo presentado por Sathish Subramanian en la solicitud de extracción 26215 . GitHub-26208
  • Desalineación corregida de los elementos de la página en el cuadro de diálogo Admin > Tiendas > Atributos > Calificaciones > Agregar nuevas clasificaciones . Arreglo presentado por Sathish Subramanian en la solicitud de extracción 27014 . GitHub-26992
  • Desalineación corregida del icono del calendario en la página Agregar cambio de diseño. Arreglo presentado por Eduard Chitoraga en la solicitud de extracción 26063 . GitHub-20379
  • Se eliminó el espacio innecesario en la visualización del submenú en el menú de desplazamiento de la página de inicio. Corrección presentada por Hitesh en la solicitud de extracción 25973 . GitHub-25972
  • Desalineación corregida de las etiquetas de precios en la página de detalles del producto de la tienda. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26237 . GitHub-25936
  • Desalineación corregida del texto agotado en relación con el botón Agregar al carrito en la página de la lista de productos en la vista móvil. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26183 . GitHub-26181
  • El mensaje de éxito de integración que se muestra en Admin > Sistema > Extensiones > Integraciones ahora se muestra correctamente. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26011 . GitHub-25930

Contenido de CMS

  • Ahora puede guardar y duplicar todas las páginas de CMS. Previamente, Magento lanzó esta excepción al intentar duplicar ciertas páginas: Unique constraint violation found.
  • Magento ahora le permite crear bloques CMS con nombres idénticos si los bloques están asignados a diferentes vistas de la tienda.
  • Seleccione de las imágenes en miniatura de la Galería ahora se almacenan en caché como se esperaba. Anteriormente, estas imágenes fueron redimensionadas sobre la marcha.
  • Magento ya no arroja un error cuando guarda una página CMS que se ha asignado a varias tiendas. Anteriormente, al crear o editar una página CMS, Magento salvó a la página, pero también lanzó este error: Item (Magento\VersionsCms\Model\Hierarchy\Node) with the same ID "PAGE_ID" already exists.
  • Ahora se agregan nuevas páginas CMS como se esperaba a la jerarquía de páginas de la tienda de un sitio web.
  • Se ha mejorado la lógica de actualización del diseño personalizado de la página CMS. Magento ahora aplica cambios específicos de diseño desde cms_page_view_selectable_home_somechanges.xmlCorrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27131 . GitHub-26758

Productos configurables

  • Los productos secundarios de un producto configurable ahora se pueden deshabilitar con éxito a través de la API.
  • Las reglas de precios de carrito con una condición establecida como Categoría (solo para padres) ahora funcionan de manera consistente como se esperaba.
  • Ahora puede agregar un producto configurable al carrito desde la pestaña Ventas cruzadas. Cuando selecciona un producto y hace clic en Agregar al carrito en esta pestaña, ahora se lo dirige a la página de detalles del producto, donde puede seleccionar opciones específicas del producto. Anteriormente, Magento lo redirigió a una página de error 404.
  • Magento ya no vincula un producto simple a un producto configurable cuando falla la llamada API para vincular estos productos.
  • Se corrigió la representación de SKU en la lista de Variaciones actuales para un producto configurable. Arreglo enviado por KaushikChavda en la solicitud de extracción 26007 . GitHub-25591
  • Ahora puede guardar la system.xmlinformación de configuración ingresando valores en Admin > Sistema > Configuración  en campos que no tienen etiquetas asociadas. Arreglo presentado por Andrii Chorniy en la solicitud de extracción 25985 . GitHub-23899
  • El rendimiento de  \Magento\ConfigurableProduct\Model\Product\Type\Configurable::isSalable ha sido optimizado. Corrección presentada por Stanislav Ilnytskyi en la solicitud de extracción 26071 . GitHub-26065
  • Se ha mejorado la lógica responsable de actualizar las imágenes configurables del producto producto. Anteriormente, los productos simples asociados con un producto configurable mostraban solo la imagen predeterminada asociada con el producto configurable, y Magento a veces mostraba la imagen principal incorrecta para el producto. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 26560 . GitHub-26473 , GitHub-26856 , GitHub-26858
  • Magento ahora muestra el precio especial de un producto como se esperaba cuando selecciona una opción con descuento de un producto configurable. Anteriormente, class="normal-price" no se cambiaba a  class="special-price" cuando se seleccionaba una opción con descuento. Arreglo presentado por Ravi Chandra en la solicitud de extracción 26170 . GitHub-24972

Galletas

  • Las funciones setRedirectCookieclearRedirectCookieahora funcionan como se esperaba. Anteriormente, estas funciones enviaban cookies al navegador, pero faltaban todos los parámetros de cookies. GitHub-24547
  • Se han agregado metadatos a las funciones setRedirectCookieclearRedirectCookieCorrección presentada por Alexander Lukyanov en la solicitud de extracción 24612 . GitHub-24547

Atributos de cliente personalizados

  • Magento ya no arroja un error cuando incluye un campo de atributo de cliente vacío en el campo Formularios para usar al crear una cuenta de empresa en el escaparate. Previamente, Magento lanzó 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.
  • Magento ya no arroja un error cuando incluye un campo de atributo de cliente vacío en el campo Formularios para usar al crear una cuenta de empresa en el escaparate. Previamente, Magento lanzó 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.

Cliente

  • Los clientes que están suscritos a boletines informativos como invitados ya no se dan de baja después de registrarse para una nueva cuenta.
  • Magento ahora usa una nueva PHPSessionpara cada cambio de contraseña.
  • Ahora puede crear con éxito un cliente y asociarlo a un sitio web en particular utilizando el menú desplegable Asociar al sitio web en Clientes > Todos los clientes > Agregar nuevo cliente . Anteriormente, cuando se trató de asociar un nuevo cliente con el sitio web no predeterminado en un despliegue de múltiples sitios, Magento aparece este error: The store view is not in the associated website.
  • Magento ahora guarda la información que un cliente ingresa en los campos de facturación y envío predeterminados durante el pago cuando la transacción se rechaza inicialmente debido a una tarjeta de crédito no válida pero luego se completa con éxito. Anteriormente, aunque Magento creaba el pedido cuando el cliente ingresaba 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 pago.
  • Magento ahora respeta la configuración del grupo de clientes cuando crea un nuevo cliente desde el Administrador en una implementación en varios sitios.
  • Magento ahora importa con éxito los datos del cliente utilizando la opción Cliente y Direcciones (archivo único) cuando cronestá habilitada y el indexador de Cuadrícula del cliente está configurado en Actualizar por programación . Después de cronejecutarse, la información del cliente importada está disponible en el Administrador como se esperaba. Anteriormente, Magento importaba los datos del cliente, pero no actualizaba la cuadrícula del cliente con los registros de clientes recién importados.
  • Ahora puede crear un nuevo cliente desde la tienda cuando se requiere la fecha de nacimiento. Anteriormente, no podía crear un nuevo cliente cuando este campo era obligatorio, incluso cuando ingresaba valores DOB válidos. GitHub-26700
  • La creación de clientes desde el administrador ahora respeta la configuración predeterminada del grupo de clientes como se esperaba.
  • El PHPSessionIdahora se cambia como se esperaba después de que un cliente se desconecta y luego se vuelve a conectar.
  • La vista de administrador de un carrito de cliente ahora muestra todos los productos que se agregaron al carrito desde múltiples sitios web en una implementación de múltiples sitios web. Anteriormente, cuando un cliente agregaba un producto a su carrito desde un sitio web no predeterminado, el producto no se mostraba en el Administrador, incluso cuando Compartir cuenta de cliente está configurada en Global .
  • Magento ahora muestra solo los productos que el cliente ha colocado en su carrito cuando el administrador ve el carrito. Anteriormente, el carrito de compras de un cliente mostraba todos los productos en el catálogo cuando se veían desde el administrador. Arreglo presentado por Ravinder en la solicitud de extracción 26489 . GitHub-26437
  • La validación ahora funciona como se esperaba para el campo Fecha de nacimiento al editar un cliente desde el Administrador. Previamente, Magento no lo hizo factor en la configuración regional del usuario, y para algunas fechas de nacimiento aparece este error: The Date of Birth should not be greater than todayCorrección presentada 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 del administrador. Arreglo enviado por solwininfotech en la solicitud de extracción 24479 . GitHub-22251
  • El panel Mi cuenta ahora muestra los valores de la dirección de correo electrónico correctamente en la vista móvil. Arreglo presentado por Eden Duong en la solicitud de extracción 25942 . GitHub-25935
  • Al hacer clic en el botón Crear una cuenta en el formulario de registro del cliente varias veces, ya no se envía la solicitud de registro más de una vez. Arreglo enviado por princeCB en la solicitud de extracción 26642 . GitHub-26590
  • Los clientes que están suscritos a boletines informativos como invitados ya no se dan de baja después de registrarse para una nueva cuenta.
  • Magento ahora usa una nueva PHPSessionpara cada cambio de contraseña.
  • Ahora puede crear con éxito un cliente y asociarlo a un sitio web en particular utilizando el menú desplegable Asociar al sitio web en Clientes > Todos los clientes > Agregar nuevo cliente . Anteriormente, cuando se trató de asociar un nuevo cliente con el sitio web no predeterminado en un despliegue de múltiples sitios, Magento aparece este error: The store view is not in the associated website.
  • Magento ahora guarda la información que un cliente ingresa en los campos de facturación y envío predeterminados durante el pago cuando la transacción se rechaza inicialmente debido a una tarjeta de crédito no válida pero luego se completa con éxito. Anteriormente, aunque Magento creaba el pedido cuando el cliente ingresaba 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 pago.
  • Magento ahora respeta la configuración del grupo de clientes cuando crea un nuevo cliente desde el Administrador en una implementación en varios sitios.
  • Magento ahora importa con éxito los datos del cliente utilizando la opción Cliente y Direcciones (archivo único) cuando cronestá habilitada y el indexador de Cuadrícula del cliente está configurado en Actualizar por programación . Después de cronejecutarse, la información del cliente importada está disponible en el Administrador como se esperaba. Anteriormente, Magento importaba los datos del cliente, pero no actualizaba la cuadrícula del cliente con los registros de clientes recién importados.
  • Ahora puede crear un nuevo cliente desde la tienda cuando se requiere la fecha de nacimiento. Anteriormente, no podía crear un nuevo cliente cuando este campo era obligatorio, incluso cuando ingresaba valores DOB válidos. GitHub-26700
  • La creación de clientes desde el administrador ahora respeta la configuración predeterminada del grupo de clientes como se esperaba.
  • El PHPSessionIdahora se cambia como se esperaba después de que un cliente se desconecta y luego se vuelve a conectar.
  • La vista de administrador de un carrito de cliente ahora muestra todos los productos que se agregaron al carrito desde múltiples sitios web en una implementación de múltiples sitios web. Anteriormente, cuando un cliente agregaba un producto a su carrito desde un sitio web no predeterminado, el producto no se mostraba en el Administrador, incluso cuando Compartir cuenta de cliente está configurada en Global .
  • La validación ahora funciona como se esperaba para el campo Fecha de nacimiento al editar un cliente desde el Administrador. Previamente, Magento no lo hizo factor en la configuración regional del usuario, y para algunas fechas de nacimiento aparece este error: The Date of Birth should not be greater than todayCorrección presentada 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 del administrador. Arreglo enviado por solwininfotech en la solicitud de extracción 24479 . GitHub-22251
  • Magento ahora muestra solo los productos que el cliente ha colocado en su carrito cuando el administrador ve el carrito. Anteriormente, el carrito de compras de un cliente mostraba todos los productos en el catálogo cuando se veían desde el administrador. Arreglo presentado por Ravinder en la solicitud de extracción 26489 . GitHub-26437
  • El panel de control de Mi cuenta ahora muestra los valores de la dirección de correo electrónico en la vista móvil. Arreglo presentado por Eden Duong en la solicitud de extracción 25942 . GitHub-25935
  • Al hacer clic en el botón Crear una cuenta en el formulario de registro del cliente varias veces, ya no se envía la solicitud de registro más de una vez. Arreglo enviado por princeCB en la solicitud de extracción 26642 . GitHub-26590

Directorio

  • El menú desplegable Estado predeterminado ahora se completa con datos que se basan en los países permitidos que se han asignado al sitio web seleccionado cuando configura un valor para el campo Cálculo del destino fiscal predeterminado . Anteriormente, este menú desplegable enumeraba los países asignados al sitio web predeterminado.

Descargable

  • Ahora puede usar un archivo de importación para actualizar los productos descargables a granel por SKU y descripción. Anteriormente, se producían errores de validación y fallaba la importación.

EAV

  • Magento 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 pago es necesario en una implementación en varios sitios. Previamente, en implementaciones en las que una tienda requiere este campo en el flujo de trabajo de la caja y otra tienda no, los clientes que no completaron este campo durante la comprobación de la tienda que no requería que encuentra este error: Please check the shipping address information. "telephone" is required. Enter and try again.
  • El orden de clasificación EAV attribute option_idahora funciona como se esperaba. Corrección presentada 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 del Administrador. Anteriormente, Magento arrojó un error 500. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27191 . GitHub-26827

Email

  • Los correos electrónicos de autorización que se envían a un cliente cuando solicitan una devolución ahora contienen el estado de RMA como se esperaba. 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 una contraseña olvidada en implementaciones de sitios múltiples donde las cuentas de clientes se comparten globalmente. Anteriormente, los clientes eran redirigidos al sitio web en el que se creó la cuenta.
  • Los correos electrónicos de confirmación de pedidos que se envían a los clientes ahora incluyen la lista de artículos pedidos como se esperaba. Anteriormente, cuando creaba una plantilla de correo electrónico en el Administrador cargando y guardando 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 en desuso. Corrección presentada por Ihor Sviziev en la solicitud de extracción 26436 . GitHub-26335
  • Las configuraciones especiales de rango de precios (desde / hasta fechas) ahora funcionan correctamente para cuentas de administrador que usan una configuración regional holandesa.
  • php bin/magento cron:runya no procesa elementos de la tabla de registro de cambios varias veces. Anteriormente, cuando tenía más de 100000 nuevas versiones en la tabla de registro de cambios, las acciones se podían llamar varias veces por lo mismo entity id.
  • La acción Actualizar atributo ahora actualiza correctamente la marca de tiempo de un producto updated_at columndesde catalog_product_entityque actualiza el producto desde la página Admin edit product.
  • Configuración 'persistent' => '1'de env.phpya no genera un error cuando se ejecuta setup:upgrade.
  • La clave de forma no válida. Actualice la cadena de texto de la página en la página de inicio de sesión ahora se traduce como se esperaba.
  • Hemos mejorado el rendimiento de la Magento\Framework\App\DeploymentConfig\Reader::loadfunción. Anteriormente, cuando se hizo una petición a Magento, esta función se llama de forma repetitiva, que dio lugar config.phpenv.php configlos archivos que se cargan cada vez que el método fue llamado.
  • Magento ya no descarga una blank.htmlpágina cuando un administrador hace clic en un producto mientras crea un pedido del administrador.
  • Los bloques no almacenables en caché agregados al diseño predeterminado en las instrucciones de referencia para componentes inexistentes (no declarados) en la página ya no afectan el 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 de Magento no se pueden almacenar en caché. Esto resulta del proceso de generación de diseño: durante la generación de diseño, Magento recopila todos los controladores de diseño disponibles para una página en particular y combina las instrucciones de ellos 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 cada página de Magento. GitHub-9041
  • El administrador de bloqueo de MySQL es ahora el administrador de bloqueo principal. Como resultado, la versión mínima requerida de MySQL es 5.7.9.
  • queue_consumer.xmlahora permite números en la handlerclase. Anteriormente, cuando un controlador contenía un número en su ruta, la validación XSD fallaba. Arreglo presentado por Eden Duong en la solicitud de extracción 25952 . GitHub-25731
  • Se ha corregido una @var referencia incorrecta  en el docbloque de la variable miembro $queueIteratorde clase en clase \Magento\Framework\MessageQueue\Topology\ConfigArreglo presentado por Artem Voloznov en la solicitud de extracción 24976 . GitHub-24971
  • Los oyentes de carga de página de JavaScript ahora se activan cuando un documento ya no está en loadinglugar de esperar hasta que se marque como completeen espera hasta que se marque el documento, lo que completepuede provocar retrasos graves en la representación del contenido de JavaScript. Corrección presentada por John Hughes en la solicitud de extracción 23313 y la solicitud de extracción 50 . GitHub-22909
  • Magento ahora muestra el siguiente mensaje informativo cuando intenta agregar un producto a su lista de deseos con una cantidad de 0 o negativo número: Please enter a valid number in this field. Previamente, Magento aparece este error: We can't update your Wish List right nowArreglo presentado por Pawe Tylek en la solicitud de extracción 25641 . GitHub-25032
  • Magento ya no admite la herencia de clases DTO de la Magento\Framework\Api\AbstractExtensibleObjectclase. @api  Se ha agregado una anotación PHP faltante y  se ha agregado  AbstractExtensibleModella @deprecated  anotación  faltante AbstractExtensibleObjectArreglo presentado por Alexander Taranovsky en la solicitud de extracción 22011 . GitHub-22010
  • Ahora puede guardar productos como se esperaba después de cambiar una fecha relacionada con el producto (por ejemplo, news_from_datenews_to_datespecial_price_from_datespecial_price_to_date) en las tiendas locales de aplicación no están en inglés. Previamente, Magento arrojó un error similar al siguiente: Invalid input datetime format of value '22/5/2019.

Arreglos generales

  • El módulo Cliente ya no depende del módulo Revisar. Anteriormente, no podía deshabilitar el módulo de Revisión debido a esta dependencia.
  • La página de edición del producto ahora se carga con éxito cuando el atributo predeterminado establecido para la página contiene un atributo desplegable con la etiqueta de selección.
  • El gráfico gráfico de pedidos accesible desde la pestaña Pedidos en el Administrador ahora refleja con precisión la cantidad de pedidos.
  • La URL de administrador 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 cuando se utiliza 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 de Administradores a la que está asignado.
  • El editor TinyMCE4 ahora admite todas las etiquetas HTML.
  • Al hacer clic en el botón Reembolsar sin conexión en el flujo de trabajo para crear una nota de crédito, ahora se genera una nota de crédito como se esperaba. Anteriormente, un error de JavaScript deshabilitaba este botón y Magento no creaba una nota de crédito.
  • Los comerciantes ahora pueden crear un atributo de tipo de producto Decimal. Anteriormente, debido a una corrección de errores anterior, Magento no mostraba el tipo de atributo del producto PriceGitHub-26949
  • Magento ya no devuelve un error 500 cuando intenta abrir una página de Categoría en el escaparate cuando Layout = Product - Full Width se ha establecido desde la pestaña Diseño de la página de Categoría.
  • Corregido un error en AbstractSimpleObjectBuilder.php.
  • MAP (precio mínimo anunciado) ahora funciona como se espera para los productos del grupo.
  • Magento ahora lo redirige a la página de inicio de la vista de la tienda apropiada cuando cambia el idioma en las páginas de CMS en una implementación de varias tiendas. Anteriormente, Magento mostraba una página 404 cuando cambiaba el idioma en ciertas páginas de CMS.
  • Las consultas de pedido ( SalesOrderIndexGridAsyncInsertCron) se han refactorizado para reducir el tamaño del conjunto de datos devuelto y la frecuencia de las consultas.
  • Ahora puede crear con éxito una página CMS y asignarla a la categoría raíz del sitio web en la jerarquía CMS.
  • Los invitados ahora pueden mostrar el precio de un producto o agregar un producto al carrito cuando los permisos de categoría están habilitados (por ejemplo, cuando el grupo de clientes No conectado ha recibido estos privilegios).
  • Las reglas del producto ahora se aplican a los productos agotados como se esperaba. Anteriormente, Magento no mostraba productos agotados en la lista de productos relacionados, incluso cuando la regla se configuraba para mostrar productos agotados.
  • Al hacer clic en el botón Rastrear envío de un pedido del administrador ahora se muestra información de seguimiento en una ventana emergente como se esperaba. Anteriormente, este enlace llevaba al administrador a la página Iniciar sesión.
  • Magento ahora muestra un mensaje de error informativo y continúa mostrando el formulario de registro como se esperaba 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, Magento mostraba un error 500.
  • Magento ahora muestra el botón Nota de crédito después del reembolso parcial de un pedido. Anteriormente, Magento no mostraba este botón después de crear un reembolso parcial, y no podía crear una nota de crédito para el resto del pedido.
  • Las actualizaciones de pedidos masivos a través de REST ahora modifican el estado del pedido como se esperaba. Anteriormente, Magento arrojó este error:report.ERROR: Property "AdditionalInformation" does not have accessor method "setAdditionalInformation" in class "Magento\Sales\Api\Data\OrderPaymentInterface".
  • Los filtros de atributos ahora se muestran como se esperaba en el bloque Opciones de compra de la página Categoría.
  • Las direcciones de facturación y envío del cliente ahora se muestran como se esperaba en la pestaña Direcciones en la página Administrador Editar cliente cuando se muestra en Internet Explorer. Corrección presentada por Vasilii Burlacu en la solicitud de extracción 27383 . GitHub-27370
  • Todas las vistas de marcadores ahora se pueden editar cuando eliminas una. Anteriormente, todas las vistas de marcadores se volvían no editables después de eliminar la primera vista para cuentas con múltiples vistas de marcadores. Corrección presentada por Bartomiej Szubert en la solicitud de extracción 26263 . GitHub-14913
  • La navegación por capas ya no interrumpe la validación HTML5 del módulo de muestras. Anteriormente, se producían errores de validación 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 presentada por Nirav Patel en la solicitud de extracción 26055 . GitHub-22363
  • Un sin usar require.JSalias ( critical-css-loader) has been removed from app/code/Magento/Theme/view/frontend/requirejs-config.jsFix presentada por Tu Nguyen en la solicitud de extracción 26987 . GitHub-26963
  • Magento ahora implementa la interfaz de lanzamiento de PHP7.x para permitir la captura de todos los errores que podrían exponer información confidencial, como las contraseñas. Arreglo enviado por miszyman en la solicitud de extracción 25250 . GitHub-23350
  • Al presionar la tecla ESC al ingresar el nombre de una nueva carpeta en la ventana emergente de crear una nueva carpeta ahora se cierra la ventana emergente como se esperaba sin crear la carpeta. Corrección presentada por Shankar Konar en la solicitud de extracción 25349 . GitHub-572
  • Se ha corregido una estructura HTML anidada incorrectamente. Anteriormente, esta estructura daba como resultado un diseño roto para la lista de productos relacionados, de mayor venta o de venta cruzada. Corrección presentada por Pieter Hoste en la solicitud de extracción 27926 . GitHub-27920
  • Se eliminó la llamada duplicada a addToolbarBlock, lo que había resultado en dos condiciones similares en ORDER BYArreglo presentado por Vasilii Burlacu en la solicitud de extracción 27263 . GitHub-26708
  • Los comerciantes ahora pueden establecer una fecha de vencimiento en las cuentas de usuario administrador. Arreglo presentado por Laura Folco en la solicitud de extracción 22837 . GitHub-22833
  • Hemos agregado la @api anotación PHP a  AbstractExtensibleModel, la @deprecatedanotación PHP a  AbstractExtensibleObject, y @see a AbstractExtensibleModelArreglo presentado por Alexander Taranovsky en la solicitud de extracción 22011 . GitHub-22010

GraphQL

  • Magento ahora devuelve el mensaje GraphQL en The cart isn't activelugar de Current user does not have an active cartbajo ciertas circunstancias cuando un carrito se vuelve inactivo y se crea una nueva ID de carrito. Corrección presentada por Vadim Malesh en la solicitud de extracción 27187 . GitHub-26117
  • Se eliminó el código que causaba un error al usar GraphQL para agregar productos a un carrito cuando un producto agregado previamente se agotó. Arreglo enviado por AleksLi en la solicitud de extracción 27015 . GitHub-26683
  • Se corrigió un problema en GraphQL en el que Magento no devolvía toda la información requerida al usar fragmentos en la consulta de productos. Corrección presentada por Riccardo Tempesta en la solicitud de extracción 26218 . GitHub-26217

  • La mutación GraphQL setShippingMethodsOnCartya no recupera los datos incorrectos en el available_shipping_methodsatributo. Corrección presentada por Vadim Malesh en la solicitud de extracción 27004 . GitHub-26742

Productos agrupados

  • Ahora puede agregar un producto simple que pertenece a un producto grupal al carrito de compras cuando otro producto simple que pertenece a ese mismo grupo está agotado. Corrección presentada por Gihovani Filipp Pereira Dem̩trio en la solicitud de extracción 24955 . GitHub-22304
  • Magento ahora envía correos electrónicos a los clientes sobre productos grupales reembolsados ​​como se esperaba. Corrección presentada por Alexander Taranovsky en la solicitud de extracción 26246 . GitHub-26245
  • Ahora puede agregar un producto secundario de un producto agrupado a su carrito cuando uno de los otros productos secundarios del producto agrupado está agotado. Anteriormente, cuando un producto secundario estaba agotado, no podía agregar ningún otro producto secundario al carrito.

Imágenes

  • Las imágenes ahora se guardan pub/media/catalog/categorycomo se esperaba cuando guarda imágenes de categoría. Anteriormente, Magento guardaba estas imágenes en pub/media/catalog/tmp/category.
  • Las imágenes de marca de agua ya no ocultan la imagen del producto que superponen. Anteriormente, cuando la imagen de la marca de agua era más grande que la imagen del producto al que se aplicaba, la imagen del producto no era visible.
  • Ahora puede guardar con éxito una imagen en una categoría desde el administrador. Anteriormente, después de guardar la imagen, faltaba parte de la URL y no podía volver a abrir la imagen.
  • Magento ahora muestra .pngimágenes como se esperaba después de la carga.
  • Usar REST para agregar o actualizar una imagen ahora crea una miniatura de imagen como se esperaba. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27170 . GitHub-26825
  • Los atributos personalizados de las imágenes generadas por Block\Product\ImageFactoryahora se representan correctamente. Anteriormente, no podía agregar sus propios atributos personalizados al marcado de atributos debido a un escape incorrecto de la salida HTML. Arreglo presentado por alexander-aleman en la solicitud de extracción 26959 . GitHub-25219
  • Las imágenes ya no se ven borrosas cuando se ve un escaparate desde un iPhone. Corrección presentada por Dmitriy en la solicitud de extracción 24743 . GitHub-24735
  • Las imágenes en el escaparate ahora responden. Anteriormente, la altura de la imagen estaba distorsionada. Arreglo presentado por Sean van Zuidam en la solicitud de extracción 27041 . GitHub-27040
  • El logotipo de la tienda predeterminada ahora es visible en el escaparate cuando Magento_blank se usa el  tema. Arreglo presentado por Vasilii Burlacu en la solicitud de extracción 27497 . GitHub-27496

Importación y exportación

  • Magento ya no arroja un error durante la importación cuando los datos importados incluyen una swatch_imageclave de vista de tienda que tiene un valor de no_selection. Previamente, Magento lanzó este error: Imported resource (image) could not be downloaded from external resource due to timeout or access permissions in row(s): 1GitHub-25026
  • Magento ahora actualiza las imágenes como se esperaba cuando usa la hide_from_product_pageconfiguración al importar productos en implementaciones con múltiples vistas de la tienda.
  • Las opciones personalizables ahora se importan como se espera cuando row_idno son iguales a las de un producto entity_id. Anteriormente, Magento no importaba opciones personalizables cuando row_idno era igual a la de un producto entity_id, lo que resultaba en que ciertos productos no se importaban.
  • Las imágenes asociadas con productos configurables ahora se cargan correctamente durante la importación y están disponibles para su visualización como se esperaba en la página de edición del producto.
  • Los .csvarchivos exportados ahora reflejan la configuración del filtro para incluir productos en stock o fuera de stock. Anteriormente, Magento exportaba todos los productos, sin importar la configuración de stock que seleccionó.
  • Ahora puede importar o actualizar con éxito clientes utilizando la opción Cliente y direcciones de un solo archivo del flujo de trabajo de importación. Anteriormente, cuando se ha seleccionado esta opción, Magento no importar los datos del cliente y se muestra este error: Invalid data for insert.
  • El Indizador de acciones ahora se activa como se esperaba después de la importación y actualiza el estado del producto. Anteriormente, Stock Indexer no indexaba los datos de inventario de productos modificados.
  • Magento ahora importa con éxito todas las opciones personalizadas para los productos secundarios de un producto configurable cuando store_view_codese especifica. Esto funciona si elige importar productos configurables individualmente o colectivamente. Anteriormente, Magento no importaba con éxito todas las opciones personalizadas cuando el archivo de importación contenía más de un elemento y store_view_codese especificaba.
  • Magento ahora proporciona un mensaje durante la importación del producto que identifica qué productos en el .csvarchivo importado tienen claves duplicadas. Los comerciantes pueden usar esta información para resolver conflictos. Anteriormente, Magento mostraba este error:Notice: Undefined index: name in /var/www/html/ee233dev/app/code/Magento/CatalogImportExport/Model/Import/Product.php on line 2524
  • Magento ahora muestra un mensaje de error más informativo y no muestra un enlace de descarga cuando intenta eliminar un directorio de la lista Sistema > Exportar . Anteriormente, cuando intentaba eliminar un directorio de esta lista, Magento continuaba mostrando un enlace de descarga para archivos que no podían descargarse, y mostraba un mensaje de error poco informativo.
  • El .csvarchivo que se usa durante la importación ahora contiene los enlaces correctos para los productos descargables y ahora está formateado correctamente para admitir la importación y actualización de productos descargables.
  • Magento ahora exporta con éxito un .csvarchivo cuando configura el comportamiento de importación para Reemplazar, selecciona un .csvarchivo exportado previamente y hace clic en Verificar datos . Anteriormente, Magento mostraba este error: Data validation failed. Please fix the following errors and upload the file againFollowing Error(s) has been occurred during importing process.
  • El Indizador de acciones ahora se activa como se esperaba después de la importación y actualiza el estado del producto. Anteriormente, Stock Indexer no indexaba los datos de inventario de productos modificados.
  • .csvlos archivos que se generan durante la importación del producto ahora contienen títulos de grupo para productos descargables como se esperaba. Anteriormente, la validación innecesaria de group_titledurante la importación impedía la visualización de títulos de grupo para productos descargables.
  • Cuando cronestá habilitado y realiza una importación de cliente utilizando la opción (Cliente y Direcciones (archivo único)) , Magento rellena los datos en la cuadrícula del cliente Administrador como se esperaba. La cuadrícula de clientes muestra a los clientes una vez que finaliza la reindexación manual customer_grid indexer. Anteriormente, Magento no actualizaba la cuadrícula de clientes con direcciones de clientes recién importadas.
  • Magento ahora muestra la lista de clientes como se esperaba después de la reindexación automática. Anteriormente, aunque la ejecución manual funcionaba bin/magento index:reindex, la cuadrícula del cliente no mostraba la información del cliente después de la reindexación automática.
  • Magento ahora elimina los archivos temporales <Magento_home>/varcomo se esperaba después de que se haya completado la importación del producto.
  • Magento ya no crea SKU duplicados en el Administrador cuando los productos se importan por .csvarchivo.
  • La importación ya no falla cuando el atributo configurable importado incluye un signo igual (=) en su valor. Arreglo enviado por dhoang89 en la solicitud de extracción 25194 . GitHub-25188
  • Todos los datos de cuadrícula exportados (tanto Magento como datos personalizados) ahora tienen etiquetas de opción en lugar de valores de opción para todas las columnas con tipo SelectMultiselect. Anteriormente, cuando exportaba estos datos, la hoja de cálculo exportada contenía columnas con ID en lugar de los valores que se mostraban en la cuadrícula. Corrección presentada por Maksym Novik en la solicitud de extracción 26523 . GitHub-25963
  • Magento ahora muestra los productos de paquete en el escaparate como se esperaba después de actualizar un producto al importar un .csvarchivo. Arreglo enviado 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, las reglas inactivas ya no se procesan y las memorias caché se borran de las entradas solo para productos modificados.
  • Los precios de los productos en el escaparate 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 precio de carrito programada hasta que reindexaba manualmente ( php bin/magento indexer:reindex catalogrule_rule).
  • Ahora puede volver a indexar con éxito la base de datos de productos después de añadir un atributo que es objeto de búsqueda (es decir, el is_searchable,  is_filterable,  is_visible_in_advanced_searchatributos están desactivados).
  • Magento ahora muestra un mensaje que identifica el indexador y el tiempo que tomó la operación de indexación cuando falla una operación de reindexación. Arreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26207 . GitHub-26206
  • Los productos que se guardan en tiendas donde el ontheflyindexador y las tablas planas están habilitadas ahora respetan las asignaciones del sitio web. Anteriormente, si eliminaba todas las asignaciones de sitios web de un producto y luego las guardaba, todas las tablas planas incluían el producto, a pesar de las asignaciones de sitios web especificadas. Arreglo presentado por Abel Truong en la solicitud de extracción 27365 . GitHub-16315

Infraestructura

  • La lógica de validación asociada con el campo Fecha de nacimiento del formulario de registro del cliente ya no provoca un error de JavaScript.
  • Se agregó una prueba de integración para cubrir $storeIdel get()método del repositorio de categorías . Fix presentado por Lukasz Bajsarowicz en solicitud de extracción 27048 . GitHub-27044
  • Habilitar la configuración Bloquear todas las cookies en Safari ya no genera errores de JavaScript, y Magento muestra el cookies disabledmensaje como se esperaba. Anteriormente, Magento mostraba múltiples SecurityError (DOM Exception 18): The operation is insecure errores en la consola. Arreglo presentado por Ra̼l Verdugo Lorenzo en la solicitud de extracción 25324 . GitHub-13865
  • Magento ya no lanza este error cuando se ejecutan las 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 con las AutoloaderRegistry::getAutoloaderpruebas de integración fallaba al azar. Arreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26480 . GitHub-26479
  • La dateetiqueta /module-sales/view/frontend/templates/order/order_date.phtml ha sido corregida a span. Anteriormente, Magento registraba un error en el exception.logarchivo cuando hacía clic en Ver pedido en la página Mi cuenta > Mis pedidos de la tienda . Arreglo presentado por Andrii Chorniy en la solicitud de extracción 25895 . GitHub-13269 , GitHub-25738
  • El módulo mixin de JavaScript se ha refactorizado para mejorar la carga y la aplicación de mixins para módulos integrados avanzados. Anteriormente, Magento no cargaba ni aplicaba mixins para módulos agrupados avanzados. Corrección presentada por Mateusz Krzeszowiak en la solicitud de extracción 25587 . GitHub-25586
  • El grunt cleancomando ahora limpia el código generado y las carpetas de metadatos como se esperaba. Arreglo presentado por Andrii Beziazychnyi en la solicitud de extracción 25765 . GitHub-25739
  • getVersionresult ( ProductMetadata::getVersion) ahora se almacena en caché, lo que mejora el rendimiento del ProductMetadata::getVersionmétodo. Arreglo presentado por Lukasz Lewandowski en la solicitud de extracción 26001 . GitHub-24025
  • Se additional_informationagregó un setter faltante para OrderPaymentInterface, que resuelve una inconsistencia entre su declaración de esquema y las propiedades aceptadas. Arreglo presentado por Antonino Bonumore en la solicitud de extracción 26748 . GitHub-26745 , GitHub-13222

Navegación en capas

  • Magento ahora representa el atributo Sí / No en la página Categoría cuando Usar en navegación en capas: Filtrable (con resultados) para propiedades de escaparate está habilitado.
  • Redundante \Magento\Sales\Model\Order\Email\Sender\ShipmentSender ha quedado en desuso a favor de \Magento\Sales\Model\Order\Shipment\Sender\EmailSenderCorrección presentada por Adarsh ​​Manickam en la solicitud de extracción 26714 . GitHub-14885
  • Al hacer clic en Entrar después de nombrar una nueva carpeta en la Galería de medios, 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 perdían todos los cambios. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27029 . GitHub-26847
  • Ahora puede crear una subcarpeta en la Galería de medios que tenga el mismo nombre que la carpeta principal. Anteriormente, no podía guardar la subcarpeta con el mismo nombre. Corrección presentada por Vadim Malesh en la solicitud de extracción 27976 . GitHub-1270

Almacén de datos

  • var/resource_config.jsonya no se regenera cada vez que una imagen es solicitada por get.php. Anteriormente, este archivo se reescribía en cada llamada a get.php.

Boletin informativo

  • Los clientes ahora pueden suscribirse como se espera a los boletines. Anteriormente, cuando un cliente trató de confirmar su suscripción, Magento aparece este error: This is an invalid subscription confirmation code.
  • El campo de entrada del boletín del pie de página de la tienda ahora se representa de forma idéntica por cualquier navegador compatible. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26182 . GitHub-26176
  • Los mensajes de escaparate sobre suscripciones a boletines ahora se representan como se esperaba en HTML. Fix presentado por Oleh Usik en 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 los impuestos deben excluirse. Anteriormente, cuando se configuraban varios sitios web con diferentes configuraciones de visualización, la configuración definida en la variable del servidor se usaba para la tienda a pesar de las configuraciones a 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 central de Magento. Los comerciantes deben migrar a las extensiones oficiales que están disponibles en Magento Marketplace.
  • Ahora puede completar con éxito un pedido y volver a la página de inicio del comerciante cuando se configura la Solución alojada de Website Payments Pro . Anteriormente, cuando se ha hecho clic en Volver al comerciante , Magento lanzó 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 muestre en la sección de pago del flujo de trabajo de pago de escaparate. Arreglo presentado por Chris Pook en la solicitud de extracción 26378 . GitHub-26375
  • Las notas de crédito ahora muestran la cantidad correcta en el campo Reembolso de ajuste de la descripción general de la nota de crédito. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27343 . GitHub-13851
  • Ahora puede eliminar información adicional de la quote_payment column additional_informationtabla después de haber guardado una cotización. Anteriormente, no podía eliminar esta información después de guardar la cotización porque el unsAdditionalInformationmétodo \Magento\Payment\Model\Infono inicializaba los datos correctamente. Arreglo presentado por Marco Oliveira en la solicitud de extracción 26084 . GitHub-26083
  • Las instrucciones de pago ahora se derivan de la vista de la tienda desde la que se realizó un pedido. Anteriormente, las instrucciones de pago se usaban desde la vista de tienda predeterminada porque el BeforeOrderPaymentSaveObservermétodo obtenía instrucciones de pago de la vista de tienda predeterminada. Arreglo presentado por Karyna Tsymbal en la solicitud de extracción 26399 . GitHub-26332
  • Magento ahora recopila la información de pago que se muestra tanto en el administrador como en las facturas y facturas de envío de la tienda en la que se realizó el pedido en implementaciones con varias tiendas. Anteriormente, Magento derivaba la información de pago de la tienda predeterminada. Corrección presentada por Bartomiej Szubert en la solicitud de extracción 26765 . GitHub-17933

PayPal

  • Magento ahora muestra un mensaje informativo de error cada vez que un cliente hace clic en Pagar con PayPal después de ingresar una dirección de envío no válida en el flujo de trabajo de pago. Anteriormente, Magento mostraba un mensaje de error solo cuando el cliente hacía clic por primera vez en el botón, no para los clics posteriores.
  • Magento ya no cambia el estado de un pedido Processingen la sección Revisión de pagos del flujo de trabajo de pago cuando falla un pago con PayPal.
  • Ahora puede completar con éxito un pedido utilizando el método de pago Payflow Link. Anteriormente, el método de pago de Payflow Link siempre rechazaba el pago porque el estado del pedido permanecía en el Pendingestado de pago, aunque el estado del pedido en los registros del método de pago era Approved.
  • Los pedidos que se realizan con PayPal Payflow Pro ahora están configurados en Suspected Fraudestado cuando se activan los filtros de fraude.
  • Ahora puede usar PayPal Express Checkout con cualquier tarjeta de crédito compatible. Anteriormente, cuando hacía clic en el botón de una tarjeta de crédito mientras usaba PayPal Express Checkout para completar un pedido, Magento colgaba y no podía ingresar ninguna información de tarjeta de crédito.
  • Los pedidos realizados en PayPal Payflow Pro ahora están configurados en Suspected Fraudestado cuando se activan los filtros de fraude. Anteriormente, el estado de la transacción de pago en PayPal no se validaba antes de la aprobación del pago en el lado de Magento.
  • Payflow Pro ahora funciona como se esperaba cuando las restricciones del sitio web están habilitadas.
  • Magento ahora procesa con éxito los pedidos realizados con PayPal Express Checkout donde la dirección de envío del pedido especifica una región del país que el cliente ha ingresado manualmente en el campo de texto en lugar de seleccionarlo en el menú desplegable de la página de envío. Previamente, Magento este error aparece en la página de revisión de pedido: 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:1527GitHub-26698
  • El método de pago PayPal Pro ahora funciona como se esperaba en el navegador Chrome 80. Este método de pago invocó previamente un punto final de devolución de llamada de Magento que necesitaba acceso a la sesión del cliente, acceso que la nueva funcionalidad predeterminada de cookies de Chrome SameSite no permite. GitHub-26840
  • Ahora puede utilizar con éxito PayPal Express para pagar un pedido cuando el carrito de pago persistente se ha habilitado y la configuración Borrar persistencia al cerrar sesión está establecida en no . Anteriormente, Magento lo redireccionaba a la página de inicio de sesión.
  • Los pagos de Paypal Express y Web Payments Pro ahora se mueven al Processingestado como se esperaba una vez que el procesamiento ha comenzado. Anteriormente, los pagos de Paypal Web Payments Pro permanecían en el Pendingestado de pago incluso cuando la información de pago estaba en el Processingestado. Arreglo presentado por azambon en la solicitud de extracción 25876 . GitHub-25659

Actuación

  • 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 sections.xmlinvalidaciones personalizadas están activas. (Anteriormente, el contenido privado (almacenamiento local) no se rellenaba correctamente cuando tenía un etc / frontend / secciones.xml personalizado con invalidaciones de acciones). Consulte Contenido privado .
  • La importación de cuentas de clientes se ha refactorizado para mejorar la velocidad de importación.
  • Los cuadros de mandos se han migrado a la chart.jsbiblioteca. Corrección presentada 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 del producto (en la escala de 3.000 a 23.000 opciones) se ha mejorado mediante la refactorización de cómo se construyen las matrices de opciones de atributos. Arreglo presentado por Behnam Shayani en la solicitud de extracción 25452 . GitHub-20966

Precios

  • Magento ahora ahorra y muestra el precio correcto para productos escalonados, incluso después de haber editado productos varias veces. Anteriormente, Magento no guardaba las últimas ediciones realizadas al precio del producto. Corrección presentada 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 en el precio final de un pedido. Anteriormente, Magento mostraba un porcentaje de ahorro de precio incorrecto (tanto fijo como de descuento) en la página de detalles del producto. Corrección presentada por Sathish Subramanian en la solicitud de extracción 26584 . GitHub-26583
  • El correo electrónico de alerta de existencias enviado a los clientes sobre el reabastecimiento de un producto configurable ahora contiene el precio correcto del producto. Anteriormente, este correo electrónico contenía un precio de producto de 0.
  • La cancelación de la suscripción de alertas de productos ahora funciona cuando la sesión de un usuario ha expirado. Anteriormente, cuando hacía clic en el enlace Haga clic aquí para detener las alertas de este producto , Magento mostraba un error 404.
  • Las acciones de cancelación de suscripción para alertas de producto ahora funcionan como se esperaba. Anteriormente, cuando un cliente hacía clic en el enlace Haga clic aquí para detener las alertas de este producto , Magento mostraba un error 404.

Video del producto

  • Ahora puede usar REST para actualizar videos de YouTube (PUT rest/V1/products/{SKU}). Anteriormente, Magento mostraba una miniatura para el video, pero el reproductor de video no se cargaba cuando hacía 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_idArreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 25858 . GitHub-25856
  • La tabla Admin > Informes > Actualizar estadísticas ahora muestra el estado Actualizado en = nulo como Nunca en la columna Actualizado en lugar de indefinido . Arreglo presentado por Eden Duong en la solicitud de extracción 25932 . GitHub-25931
  • El informe de stock bajo ya no incluye productos deshabilitados. Arreglo presentado por Mohamed-Asar en la solicitud de extracción 26862 . GitHub-26838
  • Magento ahora muestra un valor preciso para el campo Inicios del año hasta la fecha en Admin > Tiendas > Configuración > General > Informes . Corrección presentada por Priya-V-Panchal en la solicitud de extracción 27088 . GitHub-27086

Comentarios

  • Magento ahora desactiva el botón Enviar revisión después de que el usuario hace clic una vez en el botón. Anteriormente, Magento no desactivaba 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 Admin > Informes > Revisiones > Por productos ahora muestra los resultados como se esperaba. Anteriormente, cuando intentaba filtrar esta lista, Magento no mostraba ningún resultado.
  • El elemento del menú Revisiones pendientes ahora se activa como se esperaba en Admin > Marketing > Contenido del usuario > Revisiones pendientes . Arreglo presentado por Ravinder en la solicitud de extracción 26230 . GitHub-26229

Ventas

  • Los pedidos completados ahora aparecen tanto en el sistema de pago como en Magento. Anteriormente, los pedidos aparecían en el sistema de pago pero no en Magento. GitHub-25862
  • Magento ahora respeta la dirección de envío predeterminada de un cliente. Anteriormente, Magento no respetaba las direcciones de facturación y envío predeterminadas de acuerdo con la configuración, y la configuración de Igual que la dirección de facturación no estaba habilitada automáticamente.
  • Magento ahora calcula correctamente los reembolsos para pedidos que incluyen descuentos. Anteriormente, Magento calculaba incorrectamente el impuesto de envío y el descuento de envío, y el total reembolsado no coincidía con el total pagado.
  • Magento ahora asigna la ID de grupo correcta cuando un nuevo cliente crea un pedido en implementaciones de sitios múltiples. Anteriormente, Magento aplicó la configuración del grupo de clientes predeterminado.
  • Los administradores con permisos restringidos que incluyen permiso de visualización para notas de crédito, facturas y envíos ahora pueden ver las facturas y envíos desde la página Pedidos como se esperaba. Anteriormente, cuando un administrador restringido trató de ver una orden, Magento aparece este error: Something went wrong with processing the default view and we have restored the filter to its original state.
  • Magento ya no muestra un error cuando un cliente agrega una cantidad de un producto a su carrito que excede la mitad del stock del producto existente pero no excede el stock total. Anteriormente, en estas circunstancias, Magento aparece este error: The requested qty is not availableGithub-24365
  • Ahora puede añadir con éxito un producto a la cesta de la administración cuando la cantidad de valores es 1. Previamente, Magento no añada el producto a la cesta y se muestra este mensaje: The requested qty is not availableCorrección presentada por Serhii Petrychenko en la solicitud de extracción 26650 . GitHub-25675
  • Magento ahora muestra un mensaje informativo de error cuando un administrador de la tienda intenta reordenar un producto cuya opción personalizada tiene un nombre que excede el número máximo de caracteres. Anteriormente, en estas condiciones, Magento mostraba la página Informe, no un mensaje. Corrección presentada por Mudit Shukla en la solicitud de extracción 26348 . GitHub-26345
  • El diseño del formulario de edición de información de dirección de pedido de ventas se ha refactorizado para que coincida con las convenciones de la biblioteca de formularios de administrador. Corrección presentada por Alexey Rakitin en la solicitud de extracción 25699 . GitHub-19805
  • Las casillas de verificación en la sección Productos de la página Catálogo > Categorías ahora funcionan como se esperaba. Corrección presentada por Denis Kopylov en la solicitud de extracción 22990 . GitHub-22988
  • El getCustomermétodo ahora devuelve el objeto del cliente como se define en el phpdocbloque. Anteriormente, este método regresaba NULL, y el phpdocbloque no resaltaba que este método pudiera regresar NULLArreglo presentado por Fanis Strezos en la solicitud de extracción 26423 . GitHub-25268
  • Los nuevos pedidos ahora están deshabilitados como se esperaba cuando un comerciante deshabilita Admin > Tienda > Configuración > Ventas > Reordenar > Permitir pedido . Arreglo presentado por Eden Duong en la solicitud de extracción 26051 . GitHub-25130
  • getPrice()El método ahora devuelve un valor flotante o nulo en lugar de una cadena al establecer un precio personalizado para un pedido en el Administrador. Arreglo presentado por Andrii Chorniy en la solicitud de extracción 26313 . GitHub-25968
  • La columna Código de estado y título de Admin > Tiendas > Configuración> Estado del pedido ahora muestra el estado en lugar del estado como se esperaba. Corrección presentada por Oleh Usik en la solicitud de extracción 26569 . GitHub-17847
  • Las facturas en PDF ahora capturan la fecha de compra correcta cuando se crean en una configuración regional de GB. Arreglo presentado por Eden Duong en la solicitud de extracción 26701 . GitHub-26675

Regla de ventas

  • quote_item.applied_rule_idsahora se actualiza como se esperaba después de deshabilitar una regla de precio de carrito. GitHub-24526
  • Magento ahora muestra los árboles de categorías como se esperaba cuando intenta crear o editar una regla de precio de carrito. Anteriormente, al seleccionar una categoría en la sección Condición al crear o editar una regla, se producían errores de JavaScript.
  • Magento ahora calcula correctamente los descuentos fijos a nivel de carrito utilizando las reglas de precios del carrito cuando un producto configurable se agrega por primera vez al carrito. Arreglo presentado por Lachlan Turner en la solicitud de extracción 26623 . GitHub-26622
  • Elasticsearch 7.6.x es ahora el motor de búsqueda de catálogo predeterminado para Magento Commerce y Open Source. No puede instalar o actualizar a Magento 2.4.0 sin también instalar Elasticsearch 7.6.x. El código de Elasticsearch versión 2.x ha sido eliminado. Las versiones de Elasticsearch 5.xy 6.x han quedado en desuso y ya no son compatibles. Ver Elasticsearch .
  • Magento ahora representa los símbolos < y > correctamente en las cadenas de búsqueda del catálogo de escaparate.
  • Los productos ahora se muestran como se espera en las categorías después de ejecutarse cron:runen implementaciones que implementan Elasticsearch.
  • Magento ya no requiere una reindexación de búsqueda completa para poder buscar un nuevo atributo de producto en el escaparate.
  • Elasticsearch ahora funciona como se espera cuando ordena una lista de productos que contiene productos de paquete por nombres alfabéticos de productos.
  • Los resultados de filtrado ya no incluyen opciones agotadas cuando filtra productos configurables en una categoría.
  • Al seleccionar todos los productos de la página de la lista de productos con Elasticsearch, ahora se muestran todos los productos en los resultados de búsqueda como se esperaba. Anteriormente, Magento no mostraba resultados de búsqueda.
  • 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 cambiaba cuántos resultados de búsqueda deberían mostrarse en la página de resultados de búsqueda, Magento 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 que no están en existencia.
  • Magento ya no arroja una excepción cuando un cliente usa la búsqueda rápida de escaparate en implementaciones de sitios web múltiples.
  • Magento ya no muestra una advertencia cuando un comerciante abre la página de términos 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 presentada por vishal-webkul en la solicitud de extracción 25246 . GitHub-25245
  • Magento ya no cambia el tamaño de la ventana gráfica cuando hace clic en el cuadro de entrada de búsqueda cuando ejecuta Safari en la vista móvil. Arreglo presentado por Pawe Tylek en la solicitud de extracción 27603 . GitHub-27506
  • Las versiones de Elasticsearch ahora se identifican por notación Xx en lugar de notación X.0 + en el Administrador ( Tiendas > Configuraciones> Configuración > Catálogo > Catálogo > Búsqueda de catálogo ). Arreglo enviado por Andreas Mautz en la solicitud de extracción 25838 . GitHub-25674

Envío

  • Magento ahora aplica descuentos de cantidad fija y carrito completo correctamente para pedidos enviados a múltiples direcciones. Anteriormente, este tipo de descuento se aplicaba varias veces cuando un cliente desprotegía un pedido mediante Check Out with Multiple Addresses. GitHub-25834
  • La lista desplegable que está disponible para seleccionar métodos de envío durante el proceso de creación de una regla de precio de carrito ahora solo contiene valores válidos. Anteriormente, esta lista desplegable contenía valores vacíos o adicionales.
  • Magento ahora imprime las etiquetas de envío como un .pdfarchivo como se esperaba cuando selecciona Imprimir etiqueta de envío en la lista desplegable Acción de un pedido en la lista de archivo de pedidos. Anteriormente, Magento mostraba un error 404.
  • Las reglas de precio de envío gratis ahora afectan solo a los productos relevantes cuando un carrito de compras contiene productos de categorías incluidas en la regla de precio de envío gratis, así como productos de categorías no incluidas en la regla. Anteriormente, cuando un carrito de compras incluía productos tanto de las categorías de envío gratuito como de otras categorías no incluidas en la regla del precio, entonces el envío gratuito no se aplicaba a ningún producto.
  • Magento ya no muestra una página en blanco en lugar de mostrar todos los transportistas de envío en el cuadro desplegable / selección múltiple. Anteriormente, se produjo un error en la toOptionArrayfunción vendor/magento/module-shipping/Model/Config/Source/Allmethods.phpCorrección presentada por Marc Rodríguez en la solicitud de extracción 25315 . GitHub-13136

  • Magento ya no aplica un descuento de cantidad fija varias veces cuando un cliente crea un pedido que se enviará a varias direcciones. Corrección presentada por Mahesh Singh en la solicitud de extracción 26419 . GitHub-25834

  • Los complementos para  Magento\Ups\Model\Carrier ese implemento personalizado di.xmlahora funcionan correctamente en modo desarrollador. Previamente, Magento lanzó este error: 1 exception(s): Exception #0 (BadMethodCallException): Missing required argument $data of Magento\Ups\Model\CarrierCorrección presentada por Bartomiej Szubert en la solicitud de extracción 26130 . GitHub-25390

Mapa del sitio

  • Magento ahora usa la URL base del proyecto como se esperaba cuando genera un mapa del sitio.
  • Los mapas del sitio generados ahora incluyen la URL de la página de inicio. Arreglo enviado por deepaksnair en la solicitud de extracción 26445 . GitHub-25761

Tienda

  • Las sesiones de clientes ahora persisten como se esperaba cuando un cliente inicia sesión en una tienda, agrega productos al carrito de compras y luego cambia a una nueva tienda en una implementación de varias tiendas. Anteriormente, cuando el cliente navegaba hacia la segunda tienda, Magento cerró la sesión del cliente y vació el carrito de compras.
  • Magento ahora elimina los registros relacionados con una vista de tienda eliminada de las  tablas sale_sequence_meta y  sales_sequence_profilecomo se esperaba. Corrección presentada por Bartomiej Szubert en la solicitud de extracción 22296 . GitHub-14958
  • El conmutador de tiendas ahora funciona como se espera al cambiar entre tiendas que tienen diferentes URL base. Anteriormente, cuando un cliente usaba el conmutador de tiendas para cambiar de tienda, la solicitud fallaba si la tienda de destino tenía una URL base diferente a la tienda actual. Arreglo presentado por Tobias Nilsson en la solicitud de extracción 26548 . GitHub-23755 , GitHub-26384

Muestras

  • Los comerciantes ahora pueden agregar con éxito atributos de muestra de color a los productos utilizando la opción Visual Swatch en Tiendas > Atributos > Producto > Nuevo atributo . Anteriormente, se activaba un error de JavaScript cuando intentaba 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 presentada por Sergiy Vasiutynskyi en la solicitud de extracción 26241 . GitHub-26240
  • Magento ya no duplica el precio mínimo anunciado para un producto configurable cuando selecciona una nueva opción de muestra. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 26317 . GitHub-26314
  • Problemas corregidos 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 presentada por Oleh Usik en la solicitud de extracción 26090 . GitHub-25910

TargetRule

  • El bloque de producto relacionado que se muestra para un producto en el escaparate ahora muestra los productos que cumplen los criterios definidos en la Regla de producto relacionado. Anteriormente, Magento no mostraba ningún producto relacionado.

Impuesto

  • Magento ahora actualiza las tarifas y los precios de envío según lo esperado cuando un cliente cambia el país de destino para un pedido durante el pago.
  • El envío gratuito ahora se aplica como se esperaba según la regla de precio del carrito aplicable. Anteriormente, las reglas del precio del carro no tomaban en cuenta los impuestos al calcular si un pedido cumple con los criterios para el envío gratuito.

Prueba

MFTF ahora usa Google Authenticator para ejecutar pruebas con 2FA habilitado. MFTF no funcionará con Magento 2.4.0 sin pasos de configuración adicionales para habilitar Google Authenticator . Consulte Configuración de MFTF para la autenticación de dos factores (2FA) .

  • Las URL codificadas en las pruebas y enrutamientos de acciones se han reemplazado por referencias de página. Corrección presentada 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 administrativas relacionadas con páginas CMS. Corrección presentada por Lukasz Bajsarowicz en la solicitud de extracción 172 en el repositorio privado partners-magento2ee . GitHub-171
  • Los nombres de prueba funcional no válidos se han revisado para seguir las mejores prácticas. Fix presentado por Lukasz Bajsarowicz en solicitud de extracción 27118 y solicitud de extracción 151 en el repositorio socios-magento2ee privado. GitHub-27117
  • Magento cronahora se utiliza para volver a indexar después de crear datos de prueba y, cuando corresponda, cache:flush configreemplaza cache:flushArreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26990 . GitHub-26989
  • Las pruebas de aceptación ahora siguen las convenciones de nomenclatura para Magento/Indexer y  Magento/Backup módulos. Corrección presentada por Shankar Konar en la solicitud de extracción 27515 . GitHub-27503
  • La AdminReorderWithCatalogPriceprueba se ha refactorizado y ya no falla durante el proceso de validación de CI. Corrección presentada por Lukasz Bajsarowicz en la solicitud de extracción 135 en el repositorio privado partners-magento2ee . GitHub-26607
  • Las pruebas AdminAddingNewOptionsWithImagesAndPricesToConfigurableProductStorefrontApplyPromoCodeDuringCheckoutse han refactorizado y ya no fallan durante el proceso de validación de CI. Corrección presentada por Lukasz Bajsarowicz en la solicitud de extracción 26611 y la solicitud de extracción 26614 . GitHub-26612 , GitHub-26610
  • Las DeleteProduct and DeleteCustomer Action Groupspruebas se han refactorizado y ya no fallan durante el proceso de validación de CI. Arreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26407 . GitHub-26396
  • Las AdminMoveAnchoredCategoryTest.xmlpruebas se han refactorizado y ya no fallan durante el proceso de validación de CI. Arreglo presentado 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 despachos. El  resetRequest método ahora vacía el estado de requestCorrección presentada por Lukasz Bajsarowicz en la solicitud de extracción 27300 . GitHub-27299
  • Se agregaron pruebas de integración adicionales para cubrir Magento_Customerlas funciones de correo electrónico. Fix presentado por Lukasz Bajsarowicz en solicitud de extracción 27606 . GitHub-27607

Pruebas unitarias de PHP

  • Pruebas unitarias PHP ya no arroje este error fatal: 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 1Corrección presentada por Lukasz Bajsarowicz en las solicitudes de extracción 178 en el repositorio privado partners-magento2ee y 27701 . GitHub-27638
  • Las pruebas para Offline_Paymentsahora son compatibles con PHPUnit 8. Corrección presentada por Cristiano Pacheco en la solicitud de extracción 27627 . GitHub-27500
  • Las pruebas unitarias para FrameworkAdminAnalyticsAdminNotification, y AMPQse han actualizado para PHPUnit 8. Fijar presentado por Ihor Sviziev en las solicitudes de extracción 27522 , 27521 , 27519 , 27522 . GitHub-27500
  • Ahora puede ejecutar la \Magento\Downloadable\Test\Unit\Helper\DownloadTestprueba unitaria sin estar conectado a Internet. Arreglo enviado por aleromano89 en la solicitud de extracción 26264 . GitHub-23521
  • Prueba unitaria añadida para app/code/Magento/Fedex/Model/Source/Generic.phpCorrección presentada por Sathish Subramanian en la solicitud de extracción 26549 .
  • <magentoCron> se ha agregado a múltiples pruebas, lo que desencadena una reindexación parcial. Esto cambia aborda cuestiones que crearon falsos negativos en las pruebas funcionales que cubrían Magento_BundleCatalogImportExportCatalogInventoryCatalogRuleBackendBraintree, y CaptchaCorrección presentada por Lukasz Bajsarowicz en las solicitudes de extracción 27322 , 27323 , 27321 . GitHub-27320
  • Todos los usos incorrectos de <amOnPage>han sido reemplazados por un apropiado <actionGroup>para el cierre de sesión del administrador donde corresponda en las pruebas. Corrección presentada por Lukasz Bajsarowicz en la solicitud de extracción 116 en el repositorio privado partners-magento2ee . GitHub-26331
  • Cada grupo de Acción en una prueba se ha movido a un archivo separado para seguir las mejores prácticas de MFTF, y se han revisado los nombres de archivo inconsistentes. Las pruebas para los siguientes módulos se han visto afectadas:

    • módulo-catálogo-permisos
    • módulo-catálogo-compartido
    • módulo-catálogo-evento
    • módulo-banner
    • module-admin-gws
    • módulo-avanzado-pago
    • envío de módulos
    • módulo-ui
    • envío de módulos
    • módulo-checkout-address-search
    • módulo de ventas
    • catálogo de módulos
    • módulo-catálogo-regla-puesta en escena
    • módulo-visual-merchandiser
    • módulo-cliente

    Corrección presentada 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, 119, 120, 121 en socios de repositorio privados -magento2ee) . GitHub-22853

Tema

  • Hemos resuelto un error JsFooterPlugin.phpque afectaba la visualización de bloques dinámicos. Previamente, Magento aparece este error al acceder directamente a /banner/ajax/load/urlUncaught TypeError: strpos() expects parameter 1 to be string, null given in.
  • El  i18n método proporciona la capacidad de agregar una cadena a las plantillas de subrayado. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 26435 . GitHub-18012
  • El section-configmódulo ha sido refactorizado. Esta refactorización ha reducido los errores causados ​​por módulos de terceros que realizan solicitudes POST o solicitan datos del cliente directamente antes de que el módulo se inicializara  data-mage-initCorrección presentada por Mateusz Krzeszowiak en la solicitud de extracción 25764 . GitHub-17125
  • LoadCssAsyncSe han corregido los errores de formato HTML. Arreglo presentado por Sathish Subramanian en la solicitud de extracción 26764 . GitHub-26760
  • Cuando crea default.xmlcatalog_product_view.xmlarchivos como parte de la creación de un nuevo tema, Magento crea estas páginas o registra errores en los archivos de registro como se esperaba. Anteriormente, Magento registraba errores en el vendor/magento/framework/View/Page/Config/Renderer.phparchivo. Arreglo presentado por Vinh Le en la solicitud de extracción 27026 . GitHub-27009

Traducción y locales

  • La traducción en línea ahora funciona como se espera en el escaparate cuando se configura Admin > Tiendas > Configuración > Avanzado > Desarrollador > Traducir en línea > Habilitado para Storefront .
  • La traducción en línea ahora funciona como se esperaba cuando está habilitada para un escaparate.
  • Las claves de URL del producto ahora se transliteran como se esperaba. Arreglo enviado por DanieliMi en la solicitud de extracción 26506 . GitHub-26499
  • La es_US Spanish (United States)configuración regional ahora es compatible. Arreglo presentado por Vinh Le en la solicitud de extracción 26857 . GitHub-26843
  • El recuento de marcador de posición numérico y el recuento de marcador de posición de código JavaScript ahora son los mismos. Anteriormente, el código JavaScript asumía 0%, mientras que el recuento numérico de marcadores de posición comenzaba con% 1. Arreglo enviado por korostii en la solicitud de extracción 25359 . GitHub-25243
  • Ahora puede deshabilitar la traducción del título de la página de Detalles del producto ( page.main.title), que está habilitada de manera predeterminada. Corrección presentada 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 las facturas. Corrección presentada por Ihor Sviziev en la solicitud de extracción 27887 . GitHub-25769
  • El orden de herencia del paquete de idioma ahora se aplica en una primera lista, primer uso como se esperaba y como se describe en la documentación de Magento. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 26420 . GitHub-8691
  • Magento ahora muestra este mensaje de error cuando se introduce un carácter no latino para un nombre de carpeta en lugares donde sólo se admiten letras latinas: Please rename the folder using only Latin letters, numbers, underscores and dashesArreglo presentado por Eden Duong en la solicitud de extracción 25904 . GitHub-25896
  • La longitud de la localecolumna para directory_country_region_namese ha aumentado de 8 a 16 para admitir configuraciones regionales como zh_Hans_CNCorrección presentada por Bartomiej Szubert en la solicitud de extracción 26268 . GitHub-14001

UI

  • El botón Atrás ahora funciona como se espera de Admin > Tiendas > Estado del pedido > Editar estado del pedido . Corrección presentada por Vadim Malesh en la solicitud de extracción 27976 . GitHub-1270
  • Las imágenes de vista previa ya no cambian inesperadamente cuando utiliza las teclas de flecha para mover el cursor en el campo Nombre de archivo en la lista de Adobe Stock. Corrección presentada por Adarsh ​​Manickam en la solicitud de extracción 25991 . GitHub-847
  • El campo Su contraseña en la sección Verificación de identidad del usuario actual de la página Administrador > Sistema > Integraciones ahora hereda los estilos como se esperaba. Fix presentado por Eduard Chitoraga en solicitud de extracción 25918 . GitHub-25917
  • La entrada validada por el validador de JavaScript en el escaparate también pasará la validación en el administrador. Anteriormente, el validador JavScript contaba las nuevas líneas como un solo carácter en el escaparate, pero en el lado del servidor, \Magento\Catalog\Model\Product\Option\Type\maxCharacterscontaba las nuevas líneas como dos caracteres. Arreglo presentado por Grzegorz Bogusz en la solicitud de extracción 26033 . GitHub-25974
  • La subTitleetiqueta ya no se borra cuando cambia un título modal mediante la setTitle()llamada. Anteriormente, cuando intentaba crear una ventana emergente o modal personalizado con un título y subtítulo, luego cambiaba el título con el setTitle()método, subTitlese borraba. Arreglo presentado por Andrea Parmeggiani en la solicitud de extracción 26142 . GitHub-26141
  • El submenú en la pestaña Marketing de administración ahora se ajusta automáticamente a la longitud de los elementos del menú como se esperaba. Ahora también puede desplazarse horizontalmente. Corrección presentada por Paweł Tylek en la solicitud de extracción 26034 . GitHub-18687
  • La quote columna de la tabla customer_noteahora usa el tipo textcomo se esperaba. Anteriormente, usaba tipo varchar(255)Arreglo presentado por Ravi Chandra en la solicitud de extracción 26160 . GitHub-26155
  • Se corrigieron los problemas de visualización con el encabezado de la tabla en la tabla Mi cuenta > Entradas de direcciones de la libreta de direcciones. Arreglo presentado 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 como se esperaba. Corrección presentada 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 presentada 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 esperaba en la vista móvil en pantallas con resoluciones de menos de 767 px. Corrección presentada por Hitesh en la solicitud de extracción 26418 . GitHub-26416
  • El desplazamiento de las páginas de productos ahora funciona como se esperaba en la vista móvil. Corrección presentada 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 como se esperaba. Arreglo enviado por iGerchak en la solicitud de extracción 25839 . GitHub-21014
  • Al hacer clic en Título del tema en Admin > Contenido > Temas, ya no se obtienen registros duplicados. Arreglo presentado por Eden Duong en la solicitud de extracción 25926 . GitHub-25925
  • El diseño de la página Dirección de facturación del administrador / Dirección de envío se ha refactorizado para cumplir con las convenciones de visualización de formularios de Magento Admin. Corrección presentada por Alexey Rakitin en la solicitud de extracción 25699 . GitHub-23481 , GitHub-19805
  • El enlace Agregar para comparar en la página de detalles del producto ahora se muestra correctamente en la vista móvil en pantallas con una resolución inferior a 640 px. Arreglo presentado 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 en la página de categoría en la vista móvil. Arreglo enviado por Andrii Kartavtsev en la solicitud de extracción 26381 . GitHub-25300
  • Ahora puede actualizar el valor de la muestra de un producto descargable y el título del enlace activando la casilla Usar predeterminado . Arreglo presentado por Abel Truong en la solicitud de extracción 27295 . GitHub-27169
  • Espaciado corregido entre el botón Actualizar y el campo Cantidad en el mini carrito. Corrección presentada por Hitesh en la solicitud de extracción 26234 . GitHub-26227
  • El color del borde inferior de la dirección de la tabla adicional entradas en la página de la libreta de direcciones coincide ahora theadtbodycolor del borde. Arreglo enviado por Tejash Kumbhare en la solicitud de extracción 26649 . GitHub-26648
  • Los modales rápidos ya no llevan a cabo una acción de confirmación cuando un usuario hace clic en la superposición modal. Corrección presentada por Serhiy Zhovnir en la solicitud de extracción 27399 .

URL

  • El repositorio de categorías (método de guardar) se ha refactorizado, lo que anteriormente le había impedido crear rutas únicas al cambiar una clave de URL de categoría. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27304 . GitHub-14080
  • Se ha mejorado la validación para la lógica de clave de URL de categoría. Corrección presentada por Sergiy Vasiutynskyi en la solicitud de extracción 27412 . GitHub-13689

URL reescribe

  • Los clientes que cambian de idioma en una página de CMS ahora pueden navegar con éxito a la vista de la tienda que han seleccionado. Anteriormente, Magento mostraba un error 404.
  • La generación de reescritura de URL para las URL de productos para las que ha habilitado la inclusión de ruta de categoría ahora funciona como se esperaba. Anteriormente, en implementaciones con múltiples vistas de tienda, Magento 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 storeview. Corrección presentada por Pieter Hoste en la solicitud de extracción 26784 . GitHub-25124 , GitHub-11616
  • Hemos agregado una comprobación para evitar redireccionamientos de URL si la ruta de solicitud es la misma que la ruta de destino. Corrección presentada 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 la URL tiene una barra diagonal final. Arreglo presentado por Alexey Arendarenko en la solicitud de extracción 25603 . GitHub-18717

IVA

Marco de API web

  • Problemas corregidos con las /rest/default/async/bulk/V1/ordersllamadas POST .
  • Problemas corregidos con las /rest/default/async/bulk/V1/productsllamadas POST .
  • El getListmétodo ha sido refactorizado para recuperar el is_subscribedatributo de extensión. Anteriormente, no podía recuperar este atributo al buscar una entidad de cliente a través de la API. Arreglo enviado por enriquei4 en la solicitud de extracción 25311 . GitHub-13252
  • La actualización de la información del cliente /V1/customers/:idya no se restablece group_idinnecesariamente. Anteriormente, cuando actualizaba un cliente a través de REST, el grupo de clientes se cambiaba a 1 si el cuerpo no contenía un grupo de clientes. Arreglo enviado por MaxRomanov4669 en la solicitud de extracción 25958 . GitHub-14663
  • Los captadores anulables en los contratos de servicio ya no arrojan errores de reflexión cuando se usan en la API web. Los métodos que pueden devolver nulo y un tipo válido ahora funcionan correctamente independientemente del orden, también. Arreglo presentado por Marco K̦pcke en la solicitud de extracción 25806 . GitHub-25656
  • Ahora puede usar POST /V1/guest-carts/:cartId/itemspara agregar productos a un carrito específico. Anteriormente, cuando usabas esta llamada, Magento ignoraba el valor de cartIdCorrección presentada por Vadim Malesh en la solicitud de extracción 27172 . GitHub-14086
  • Ahora puede usar el PUT /V1/cmsPage/:idpunto final para guardar el título de una página CMS sin cambiar los valores de otros campos. Corrección presentada 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 solicitaba resultados de una página específica (por ejemplo, page_size = 1 y un current_page valor que estaba fuera del alcance), la llamada devuelta repitió la última página de resultados en lugar de un mensaje informativo. Arreglo presentado por Lukasz Bajsarowicz en la solicitud de extracción 26988 . GitHub-26986 , GitHub-8099
  • El resultado de GET /V1/orders/items/{id}ahora incluye un elemento de atributo de extensión que incluye datos de mensajes de regalo. Arreglo presentado 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 está habilitada en el nivel de vista de la tienda y deshabilitada en el nivel global. Anteriormente, cuando estas configuraciones estaban en su lugar, agregar un producto a una lista de deseos resultó en un error 404.
  • 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. Arreglo enviado por divyajyothi5321 en la solicitud de extracción 26066 . GitHub-26064
  • Magento ahora muestra la página Mi lista de deseos como se esperaba en pantallas con una resolución superior a 768 px e inferior a 1023 px. Corrección presentada por Hitesh en la solicitud de extracción 26546 . GitHub-26543
  • El correo electrónico generado cuando hace clic en Compartir lista de deseos ahora muestra las mismas imágenes de producto que la página de Lista de deseos. Arreglo presentado por Michael Bottens en la solicitud de extracción 27125 . GitHub-27124
  • Los clientes ahora pueden agregar a una lista de deseos tanto un producto simple que es parte del producto agrupado como el mismo producto simple con una cantidad diferente. Fix presentado por MaxRomanov4669 en solicitud de extracción 26258 . GitHub-11209

WYSIWYG

  • El cargador de imágenes WYSIWYG ahora se utiliza pub/media/wysiwygcomo raíz de almacenamiento. Anteriormente, el subido se usaba pub/mediacomo raíz de almacenamiento, lo que hacía que las imágenes subidas fueran inaccesibles después de los cambios recientes en el código del cargador de imágenes. Corrección presentada por Pieter Hoste en la solicitud de extracción 24878 . GitHub-22609
  • TinyMCE4 en el navegador Chrome ahora maneja caracteres de doble byte como se esperaba. Anteriormente, TinyMCE4 no podía manejar correctamente los caracteres de doble byte (como los que se usan en chino) en Chrome. Corrección presentada por Hirokazu Nishi en la solicitud de extracción 25454 . GitHub-24637

Problemas conocidos: general

Problema : las anomalías en los mensajes de error de escaparate se producen en implementaciones donde está instalado PHP 7.4.2. Cuando Magento 2.4.0 se implementa con PHP 7.4.2, los símbolos de espacio en los mensajes de error de escaparate se reemplazan con caracteres más (+). Este error es nativo de PHP 7.4.2 y Magento no puede corregirlo. Solución alternativa : Magento recomienda usar otras versiones de PHP 7.4.x. Consulte Visualización de datos de mensajes sin formato en el artículo de la Base de conocimiento de escaparate .

Problema : los comerciantes no pueden agregar productos pedidos a un paquete desde la página Admin Crear paquete y guardar el paquete. La revisión MC-35514-2.4.0-CE-composer.patch para este problema ya está disponible en las versiones .

Problema : Magento muestra este mensaje de error durante la instalación de Magento con extensiones de terceros que tienen dependencias en las API para el Storemódulo en los comandos de la CLI: The default website isn't defined. Set the website and try againSolución alternativa : elimine las dependencias de extensiones de terceros de Composer, instale Magento y luego instale extensiones de terceros.

Problema : el botón Agregar selecciones a mi carrito en la parte inferior del carrito de compras no funciona. Solución alternativa : use el botón Agregar selecciones a mi carrito en la parte superior de la página. Consulte Agregar selecciones al botón de mi carrito no funciona Artículo de Knowledge Base.

Problema : los comerciantes no pueden crear un nuevo pedido desde el administrador porque   faltan los botones Agregar productos por SKU y Agregar productos en la página de creación de pedidos cuando se habilita la agrupación de JavaScript. Solución alternativa : deshabilite la agrupación de JavaScript para su implementación de Magento.

Problema : Magento arroja un 404 not founderror cuando un cliente intenta eliminar puntos de recompensa al retirar un pedido que se envía a varias direcciones.

Problema : la edición de un producto configurable de la lista de deseos de un cliente 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 . Magento también muestra este mensaje: Please load Wish List itemSolución alternativa : vuelva a cargar la página Configurar producto.

Problema : los clientes no pueden cambiar el número de pedidos que se muestran por página cuando la lista de pedidos abarca varias páginas. Actualmente, Magento muestra este mensaje cuando se desplaza a la última página de pedidos y tratar de cambiar el número de pedidos por página: You have placed no ordersSolución alternativa : si vuelve a abrir la página Mis pedidos, aparecerá la lista de pedidos.

Problema : al hacer clic directamente en el botón Exportar tasas impositivas de la página Agregar nueva regla impositiva ( Tiendas > Reglas impositivas ) no se descarga el tax_rates.csv archivo como se esperaba. Solución alternativa : haga clic en el borde del botón Tasas de impuestos a la exportación . Ver tasas de impuestos a la exportación no funciona Artículo de Knowledge Base

Problema : Los botones Actualizar en las secciones Últimos artículos pedidos, Productos en la lista de comparación y Productos comparados recientemente de la página de Actividades del cliente administrador no funcionan como se esperaba. Actualmente, Magento desplaza la página cada vez que se hace clic en el botón Actualizar y no muestra el nombre del producto. Consulte el artículo Actualizar en las actividades del cliente no funciona en la Base de conocimiento.

Problemas conocidos - VBE

Amazon Pay

  • Problema : faltan métodos de pago en el flujo de trabajo de pago cuando un cliente hace clic en Volver al pago estándar durante el pago con Amazon Pay. Solución alternativa : actualice la página de pago para mostrar los métodos que faltan.

  • Problema : Magento muestra dos métodos idénticos de Amazon Pay en la lista desplegable Método de pago que está disponible al crear una nueva regla de precio de carrito.

Braintree

  • Problema : Magento muestra un error cuando un administrador intenta acceder a la página Informe de liquidación de Braintree ( Administrador > Informes ). Actualmente, Magento muestra este mensaje: An error has happened during application run. See exception log for details. Consulte el Informe de liquidación de Braintree no puede cargar el artículo de Knowledge Base.

  • Problema : los comerciantes no pueden crear facturas parciales para pedidos en implementaciones donde Venmo está habilitado y la configuración Habilitar bóveda para pagos con tarjeta está deshabilitada. Actualmente, Magento muestra este error: The "vault_capture" command doesn't exist. Verify the command and try again.

  • Problema : Magento muestra dos métodos idénticos de PayPal en la lista desplegable Método de pago que está disponible al crear una nueva regla de precio de carrito.

  • Problema : Magento arroja un error al abrir Ventas > Terminal virtual Braintree . Aunque el formulario contiene elementos de IU corruptos, aún acepta pagos. Solución alternativa : guarde las credenciales correctas de Braintree, lo que solucionará los campos de entrada contraídos. Consulte la página de Braintree Virtual Terminal está dañada en el artículo de Knowledge Base.

  • Problema : Magento 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 : ignore el mensaje de error y continúe con el pago.

Klarna

  • Problema : si se deja en blanco el campo Tema de diseño en Klarna On-Site Messaging ( Admin > Tiendas > Configuración > Configuración de Klarna ), aparece una página en blanco. Solución alternativa : seleccione un tema de diseño y guárdelo.

Vértice

  • Problema : Magento muestra un botón de verificación de Dirección en la sección de envío del flujo de trabajo de pago incluso cuando la validación de dirección está deshabilitada. El validador de direcciones no vuelve a verificar la dirección actualizada y continúa mostrando un mensaje que indica que la dirección no es válida cuando un cliente ingresa una dirección correcta después de ingresar una dirección incorrecta, incluso cuando la validación de la dirección está habilitada. Solución alternativa : deshabilite la validación de la dirección de Vértice.