Cómo definir el ACL de nuestros módulos en Magento2

Roles en Magento2

Momento de continuar armando un módulo en Magento2, a través del módulo Barbanet_SampleModule (todo sea para tener a mano en un futuro cercano la mayor cantidad posible de referencias).

En el último post había escrito sobre [cómo agregar las opciones de menú para nuestro módulo. El siguiente paso sería, si vamos a usar roles con restricciones, poder definir si nuestro módulo y sus opciones son accesibles para un rol dado.

El menú de ese último post había quedado así:

Menú personalizado en Magento2
Seguir leyendo «Cómo definir el ACL de nuestros módulos en Magento2»

Magento2 2.0.6 (umask)

Magento2 2.0.6

Hace menos de 12 horas que se hizo pública la nueva versión estable de Magento2: la 2.0.6.

Se trata de una actualización de seguridad, y arregla un par de fallas serias (información detallada en el anuncio de los parches aplicados). Si por algún motivo ya tenías la tienda en producción, es vital hacer el upgrade.

Actualizar de 2.0.5 a 2.0.6 es realmente sencillo (si, es lo mismo que las versiones previas pero aún no salimos del asombro).

Seguir leyendo «Magento2 2.0.6 (umask)»

Magento2 2.0.5

Magento2 2.0.5

Hoy tuvimos nueva versión de Magento (de aquí en más, salvo parches, las nuevas versiones referirán siempre a Magento2).

Lentamente vuelven los upgrades que no sólo arreglan un bug (o varios) en particular sino que comienzan a verse también mejoras.

Algunos de las correcciones y mejoras son:

  • Corrección de errores en el minifier.
  • Problemas con los CAPTCHAs cacheados.
  • La URL del admin era indexable por los buscadores.
  • Se aceptaron los PR 2795 y 2989.
  • Mejoras de performance para el exportador.

Como siempre, es obligación pasar por el documento técnico de la versión 2.0.5.

Seguir leyendo «Magento2 2.0.5»

Sobre la nueva alerta de seguridad de Magento y las malas prácticas

Alerta de seguridad de Magento

El martes a las 21:00 (UTC-3) llegaba otro aviso de seguridad de Magento (de la versión 1).

A diferencia de los anteriores, el problema no se encuentra en Magento en si, sino que se han encontrado vulnerabilidades en una serie de módulos y themes que, aparentemente, están muy extendidos.

En este punto, más allá de querer golpearse la cabeza contra la pared (ese mismo día, media hora antes del email, me tocó terminar de instalar absolutamente todos los parches para una versión 1.8.1.0 y al leer el email reconocí los módulos en cuestión porque eran los que estaban en esa tienda); lo que quizás deberíamos cuestionarnos es cómo se trabaja, habitualmente, con los módulos de terceros.

Antes de comenzar, una aclaración que no debería de hacer falta: hay módulos de terceros (desarrolladores, agencias, empresas que se dedican sólo a hacer módulos) que son excelentes, que están bien documentados, que tienen el código publicado y que ante la menor cuestión, dan soporte al instante. Además, en muchos casos podemos aprender cosas nuevas.

Lamentablemente, también tenemos anti-ejemplos para cada uno de esos casos.

Seguir leyendo «Sobre la nueva alerta de seguridad de Magento y las malas prácticas»

Integrar páginas CMS en la navegación de Magento

Hace unos meses atrás me llego un requerimiento para personalizar la navegación principal en Magento, simplemente se necesitaba incluir algunos links de paginas CMS en diferentes posiciones del menú.

Si tienen mucho tiempo trabajando con Magento estoy seguro que alguna vez necesitaron modificar la navegación principal y como ya sabrán es un trastorno.

Magento por default solo incluye categorías, y para agregar un link custom hay que disfrazarlo de URL-rewrite y seguir como 20 pasos en el panel de administración para que funcione.

No digo que no sea posible hacerlo, generando rewrites se puede incluir cualquier cosa, pero no deja de ser poco amigable y de consumir tiempo de administración.

Entonces, ¿cuál es la forma en la que normalmente proceden con un requerimiento?. En mi caso, los pasos que siempre sigo son:

  1. Buscar alguna extensión gratuita.
  2. Si cuento con presupuesto tal vez alguna extensión paga que en lo posible agregue algún valor extra.
  3. Y si el requerimiento es algo muy específico, tal vez desarrollar la solución a medida.
Seguir leyendo «Integrar páginas CMS en la navegación de Magento»