Cómo obtener la versión de un módulo en Magento

Podría darse el caso en el cual necesitemos obtener información de un módulo para tomar ejecutar ciertas acciones.

Definitivamente es un escenario pensado para cuando creamos extensiones. Para el caso de un desarrollo completo, nuestro control del código y de la tienda es total.

Supongamos entonces que tenemos al ya ultra trillado módulo Dc_Test. Vamos a considerar que nuestro módulo se encarga de interactuar o incluso modificar algún comportamiento del módulo Mage_Newsletter.

No recuerdo ahora las versiones, pero si que tuve que lidiar alguna vez con modelos de ese módulo, que de una versión a otra habían sido eliminados.

La solución ante ese escenario sería reescribir el código de forma tal que funcione de la misma forma sin importar la versión, pero ¿y si existiera un caso en el cual esto no fuera posible?.

Seguir leyendo «Cómo obtener la versión de un módulo en Magento»

Magento 1.5.1.0 (sin sorpresas importantes hasta la versión 2)

Otra versión que reviso (minuciosamente) tarde. El 23 de abril se publicó la versión 1.5.1.0 de Magento. (Me sigue llamando la atención lo poco anunciadas de las últimas versiones)

El changelog no es más que la suma de los cambos mostrados en la versión beta y la rc. Sólo para hacer memoria, los cambios destacados son:

  • Actualización de Magento Mobile a las versión 20.
  • Se agregan excepciones para los Mensajes de Regalo en la API.
  • Mensajes de Regalo para el Carrito.
  • Implementada compatibilidad WS-I para la API.
  • Se remplaza el uso de Varien_File_Uploader por Mage_Core_Model_File_Uploader.
  • Ha vuelto el uso de almacenamiento alternativo.

Revisando el código se ven ajustes al módulo de PayPal, al de Impuestos y XmlConnect, entre otros.

Si es que ya no la están usando, es condición probar la versión en un entorno no productivo antes de dar el salto en producción.

En mi caso, hace ya poco más de una semana que la estoy usando para un proyecto nuevo y no parece haber problemas (por el momento).

Cómo crear una clase para el Shell en Magento

Cuando pensamos en módulos para Magento nos quedamos, normalmente, con agregar funcionalidad para el frontend o para el backend.

Creo que cuando pensamos en un módulo debemos imaginarnos los cuatro posibles entornos para su aplicación. Por los cuatro entornos me refiero:

  • Frontend o tienda propiamente dicha.
  • Backend o administración.
  • API.
  • Consola.

Si bien ésta división puede parecer arbitraria, éstas serán las posibles puertas de entrada que normalmente utilicemos (dependiendo sobre si nos toca ser usuario, administrador, desarrollador o el encargado del mantenimiento; o todo).

Claro está que no todos los módulos requieren funcionalidad en los cuatro entornos, pero en muchos casos deberíamos cuidar las formas y proveer de herramientas para cada caso.

En mi caso, desde hace ya un buen tiempo, me ha tocado desarrollar unas cuantas integraciones que importan o exportan información. Normalmente, con procesos manejados a través del Cron de Magento.

Seguir leyendo «Cómo crear una clase para el Shell en Magento»

Magento 1.5.1.0-rc1 (extrañando el 2008)

El 31 de marzo se hizo pública la versión 1.5.1.0-rc1 de Magento. Al igual que su predecesora, sin mucho bombo ni platillo.

En éste caso, el changelog es significativamente menor. (Parecería que la versión beta fue la alpha y la primer rc la beta).

Sólo dos cambios vamos a encontrar (mencionados):

  • Actualización de Magento Mobile a la versión 19.
  • Se remplaza el uso de Varien_File_Uploader por Mage_Core_Model_File_Uploader (sigue avanzando la restauración de la funcionalidad de almacenamiento alternativo).

Ahora bien, de los cambios no mencionados, además de todas las correcciones, podremos encontrar: un nuevo modelo para filtrar contenido HTML malicioso y la asignación de permiso para la opción de Cache externo.

Por lo pronto todo parece indicar que nos estaríamos encontrando con la versión real de la 1.5.0.1, no más.

Ya tenemos claro que el foco está puesto en la plataforma mobile y en MagentoGo. Pensar en que la plataforma va a seguir creciendo funcionalmente como lo hizo en años anteriores es de ingenuo.

Lo de siempre: ni siquiera se les debe cruzar por la cabeza la posibilidad de probar ésta versión en producción.

Un detalle menor. Al ingresar al backend, ya no se te notifica que existe una última versión que es la misma que estás ejecutando.

Magento 1.5.1.0-beta1 (una versión casi anónima)

A diferencia de otros lanzamientos, éste pasó casi desapercibido. (Eso no tiene nada que ver con la demora del review, ha sido sólo trabajo el motivo).

El 17 de marzo se publicó la versión 1.5.1.0-beta1 de Magento, casi un mes después de haberse publicado la última (y fallida) versión estable. Lo llamativo es que no se escuchó demasiado al respecto de ésta nueva versión.

Según el changelog oficial, además de una buenas cantidad de errores corregidos, las mejoras y novedades son:

  • Actualización de Magento Mobile a las versión 18.
  • Se agregan excepciones para los Mensajes de Regalo en la API.
  • Implementada compatibilidad WS-I para la API.
Seguir leyendo «Magento 1.5.1.0-beta1 (una versión casi anónima)»