Magento CE 1.9.0.1 y EE 1.14.0.1 (puliendo detalles sin decir nada)

Hace unas horas nos dimos por enterados, a través de Twitter (nada oficial por el momento) de la salida de un pequeño upgrade para ambas versiones.

Los cambios en ambas ediciones son realmente menores y apuntan a dos cosas:

  • Ajustes de CSS y JS muy pequeños en el nuevo theme responsive.
  • Pequeños cambios en la clase Mage_SalesRule_Model_Resource_Rule_Collection.

Y eso es todo.

(No se qué molesta más… si una nueva release con estos dos temas o que no haya anuncio)

Herencias de themes en Magento 1.9.0.0

Con respecto a los themes, además de contar con una opción enfocada en responsive (si, no es 100% responsive aún el theme que viene por defecto), vamos a encontrar una nueva forma de manejar las herencias (lo cual muchos van a agradecer).

Como los ejemplos demuestran mejor, voy a crear un theme nuevo, en un paquete independiente, y sólo voy a agregar la carpeta etc y dentro de ella, el archivo theme.xml.

theme.xml para los themes en Magento

Ahora, ese archivo (que copié del theme rwd/default) se verá así.

< ?xml version="1.0"?>
<!--
/**
 * Magento
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Academic Free License (AFL 3.0)
 * that is bundled with this package in the file LICENSE_AFL.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/afl-3.0.php
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@magentocommerce.com so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade Magento to newer
 * versions in the future. If you wish to customize Magento for your
 * needs please refer to http://www.magentocommerce.com for more information.
 *
 * @category    design
 * @package     rwd_default
 * @copyright   Copyright (c) 2014 Magento Inc. (http://www.magentocommerce.com)
 * @license     http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
 */
-->
<theme>
    <parent></parent>
</theme>

Sigue leyendo

Magento CE 1.9.0.0 y EE 1.14.0.0 (transform)

Magento CD 1.9.0.0 y Magento EE 1.14.0.0

Si, hace una hora aproximadamente, en el comienzo de Magento Imagine, se anunciaron dos nuevas versiones: Community Edition 1.9.0.0 y Enterprise 1.14.0.0.

La gran gran novedad que encontramos es que el frontend viene con un theme responsive. Eso implica que, por defecto, pasamos de ver:

Magento frontend theme

A esto:

Magento frontend responsive

Los grandes puntos que se destacan con los dos nuevos releases son:

  • Diseño responsive out-of-the-box. Que además, es mucho más liviano (y por ende, rápido).
  • Se suma la posibilidad de usar Bill Me Later.
  • Mejoras en el indexado de la versión Enterprise.
  • Mejoras en las políticas de impuestos.
  • Como siempre, correcciones y mejoras de seguridad.
  • Soporte para la versión 5.4 de PHP.
  • Actualización de Zend Framework.
  • Uso de Saas/Compass para los themes.
  • Al fin tenemos integrado jQuery.
  • Cross-Border trade para los precios e impuestos.
  • Una serie de pequeñas mejoras en el Checkout.
  • Nueva versión del sample data para probar la tienda.

Sigue leyendo

Personalizar la página de error en Magento

Hace unos días me topé con un proyecto que tenía como marca distintiva el haber aplicado todas y cada una de las malas prácticas, todas, dentro del mismo proyecto.

Uno de los errores que me parecieron más burdos, fue el hecho de modificar los archivos del gestor de errores de Magento (si, la pantalla que nos aparece mostrándonos un número de reporte).

Si bien esto puede considerarse un tema menor, será un problema al momento que debamos hacer un upgrade de versión. Como siempre, la plataforma tiene una forma de manejar este caso y es bastante sencilla.

Por defecto, la pantalla de error se ve así.

Página de error de Magento

Ya sea que por cuestiones gráficas o funcionales necesitemos cambiar la presentación de errores, la forma correcta de hacerlo es demasiado simple.

Lo primero será será copiar el archivo /errors/local.xml.sample como /errors/local.xml.

Sigue leyendo

Métodos para agregar imágenes a los productos vía código en Magento

Uno de los desarrollos en los que más participo dentro de los proyectos Magento, suelen ser las integraciones entre cualquier sistema externo y la tienda, ya sea que se envíe o se reciba información.

Si bien ya van 7 años con con la plataforma y las integraciones, por más que algunos procesos ya están bastante logrados y no necesitan reprogramación, sólo configuración; siempre es necesario hacer algún ajuste o cambiar alguna lógica, ya que cada tienda es única.

Una de las entidades/procesos que rara vez se salva de ser reprogramada en las integraciones, es el catálogo. Incluso, dentro del propio mundo que puede resultar el catálogo de una tienda, la gestión de imágenes de los productos que se sincronizan también suele ser diferente entre un proyecto y otro.

Al momento de asociar imágenes a un producto, vía código, podemos pensar en 3 métodos diferentes (no es para tomar como algo definitivo, pero serían 3 las formas de atacar la tarea).

Para los distintos ejemplos, vamos a considerar que tenemos un único producto (en mi caso, el entity_id 1), con N cantidad de imágenes que se encuentran dentro de del directorio media/import.

Editar las imágenes de un producto en Magento

Sigue leyendo