Review de la nueva versión de Magento: Magento 2.3
30 Nov, 2018 / 5 MIN readHace unas horas Magento liberó la tan esperada versión 2.3 de su plataforma, una versión llena de nuevas funcionalidades y correcciones que seguro llevan a los eCommerce al más alto nivel.
Estas son algunas de las nuevas funcionalidades que tenemos disponibles en esta versión:
Progressive Web App (PWA)
Como se anunció en el Magento Imagine 2018, esta versión de Magento proporciona todas las herramientas (PWA Studio) para desarrollar, desplegar y mantener un progressive web app, pudiendo crear unas experiencias de compra sin competencia, además al incorporar GraphQL será mucho más sencillo el desarrollo de PWA.
Pincha aquí si quieres leer más documentación sobre esto
GraphQL Support
Se introduce el lenguaje GraphQL API como una de las grandes mejoras de Magento 2.3.
GraphQL para quien no lo sepa es un lenguaje de manipulación y consulta de datos de código abierto desarrollado por Facebook.
Se introduce en Magento 2.3 como alternativa a REST y SOAP.
GraphQL nos da la posibilidad de definir qué datos queremos recibir, haciendo mucho menos pesadas las peticiones, esto es una ventaja muy positiva sobre REST y SOAP.
Usando GraphQL permitirá a Magento PWA hacer llamadas a la API de Magento filtradas minificando los tiempos de carga en dispositivos con conexión lenta.
Beneficios de GraphQL en Magento:
• Queries optimizadas para acelerar las llamadas desde el frontend.
• Desarrollo independiente del backend y frontend.
Si quieres leer más acerca de GraphQL y los beneficios que tiene en Magento puedes leer este post escrito por Alan Kent
ElasticSearch (Ahora en OpenSource)
A partir de esta versión todos los merchants que utilicen Magento Open Source podrán conectar su eCommerce a un ElasticSearch utilizando toda la potencia del mismo, indexación, resultados de búsqueda, filtros etc…
Soporte para PHP 7.2
Magento 2.3 ya no es compatible con PHP 7.0 pero habilita la posibilidad de utilizar PHP 7.2. Este cambio es una gran ventaja ya que tendremos mucha más seguridad (mcrypt finalmente está deprecado y en su defecto se utiliza libsodium para encriptación), mejor perfomance que notaremos en tiendas con mucho tráfico y gran cantidad de catálogo, y los desarrolladores tendremos accesibles todas las nuevas funcionalidades de PHP 7.2.
Multi Stock Inventory (MSI)
Desde las primeras versiones de Magento 1.X los merchants, sobretodo en B2B venían pidiendo esta funcionalidad, durante los años se han ido haciendo desarrollos a medida para tener dicha funcionalidad, pero ahora, Magento ha liberado su propia extensión repleta de funcionalidades.
Desde este momento, podremos definir almacenes en nuestro Magento y gestionar el stock de los productos por almacén en un solo website.
Declarative Database Schema (XML)
Se introduce una nueva mejora que nos permitirá definir nuestros esquemas en la base de datos mediante ficheros XML dentro de nuestros módulos (db_schema.xml) esto nos permitirá poder hacer rollbacks de la base de datos y nos facilitará los deployments en Magento 2. (Algo muy caótico desde la versión 2.0 hasta la fecha).
Cabe destacar que será mucho más sencillo identificar como quedará el esquema finalmente.
Ejemplo del módulo Magento_Catalog:
Además podremos lanzar nuestros propios parches, como por ejemplo la instalación de datos en alguna tabla de la base de datos, dichos parches quedarán registrados en la tabla patch_list para que Magento recuerde que parches ya tiene instalados.
Peticiones a la API asíncronas
Al incorporar el Message Queue todas las peticiones que hagamos vía API a Magento serán procesada asíncronamente.Actualmente, cuando hacemos una petición a Magento, este las procesa al momento afectando al performance de la tienda.
A partir de ahora podremos hacer peticiones masivas a la API (Ej. actualización del catálogo de la tienda) y serán procesadas asíncronamente, por lo que ni el cliente (quien hace la petición) ni el servidor (quien procesa la petición) deberán quedarse a la espera de respuesta.
Esto mejorará notablemente las integraciones entre Magento y ERP o CRM, ya que por norma general es necesario ejecutar actualizaciones masivas de datos.
Actualización de WYSIWYG
WYDIWYG ha sido actualizado a su versión 4 (TinyMCE) permitiendo insertar widgets, variables globales o por store como plugins.
Page Builder (Solo para versión Commerce)
El pagebuilder solo está disponible en la versión Commerce de Magento, y permite a los usuarios administradores crear contenido HTML sin necesidad de escribir código, solo arrastrando elementos.
Esta funcionalidad va ligada a la compra de Bluefoot CMS por Magento de hace unos años y finalmente se ha liberado en una versión estable de Magento.
Esto ayudará mucho a los merchants, ya que como ha pasado en muchos proyectos un merchant rompía una página estática, incluso la home editando el HTML de la misma desde el backoffice.
Gestión ACL para cada tipo de caché
Una mejor muy importante que viene con Magento 2.3 es la posibilidad de gestionar los roles para cada tipo de Caché.
Esta mejora nos permitirá decidir que usuarios del backoffice podrán gestionar la caché y que tipo de borrado de caché podrán ejecutar.
reCAPTCHA de Google
Magento 2.3 incorpora el reCAPTCHA de Google como un servicio gratuito, que podremos configurar en los siguientes formularios:
• Login
• Registro
• Contacto
Además tenemos la posibilidad de extender la extensión para utilizarlo en formularios personalizados. (mediante desarrollo)
Esta mejora es muy positiva ya que en alguno de nuestros proyectos habíamos tenido algunos problemas con el reCAPTCHA que venía por defecto en Magento.
Opinión personal sobre la nueva versión
Todavía es pronto para dar una opinión real de la nueva versión, pero con todas las correcciones y nuevas funcionalidades que han liberado, todo apunta a una revolución del mundo del eCommerce.
Como desarrollador puedo decir que todas las nuevas funcionalidades (Declarative DB Schema en XML, PWA, APIs asíncronas etc…) nos van a facilitar el día a día en cada uno de los desarrollos donde estamos sumergidos.
Agradecimientos
Es un orgullo trabajar en Interactiv4 y poder participar y ser parte del proyecto de Magento.
Quiero agradecer a todos mis compañeros que han aportado su granito de arena en esta nueva versión de Magento:
• Adrián Martinez. (14 PR)
• Oscar Recio. (10 PR)
• Raúl Mateos. (5 PR)
• Enrique Guadalupe. (2 PR)
• Manu González. (1 PR)
• Cristian Sanclemente. (1 PR)
También agradecer a todo el equipo de Interactiv4 el gran trabajo que hace día a día en todos los proyectos y en la comunidad de Magento.