:::: MENU ::::
Articulos en: Tutoriales Magento

Inicialización de Magento: index.php y Mage.php

Cualquier petición a un sistema Magento, es derivada por medio del fichero .htaccess hacia el un punto de entrada común en el fichero index.php. Allí podemos ver como tras algunas comprobaciones iniciales (aplicación instalada, modo mantenimiento, etc.), enseguida es llamado el fichero Mage.php, encargado de la mayor parte de la inicialización del sistema: $mageFilename = […]


Front Controller y Routers en Magento

Cuando una petición (Request) llega a Magento, éste busca un Router que pueda procesar dicha petición. El encargado de conocer los Routers disponibles en el sistema y buscar el Router adecuado para el procesamiento de la petición, es el Front Controller (Mage_Core_Front_Controller), que corresponde a la implementación del patrón de diseño del mismo nombre. Ver […]



Magento: Filtrar colección de productos

Colección con todos los productos en Magento Con la siguiente colección podemos obtener todos los productos de nuestra tienda Magento: $collection = Mage::getModel('catalog/product')->getCollection(); Colección de productos filtrada por atributo simple en Magento Si queremos filtrar la colección por un atributo simple (de texto, no dropdown o multiselect), como el nombre de un producto, el SKU, […]


Magento: Modificar estado de un producto

Estado habilitado / inhabilitado en Magento Para modificar el estado de un producto en Magento (habilitado o deshabilitado), podemos hacerlo de la siguiente forma: $product = Mage::getModel('catalog/product')->load($id); $product->setStatus(Mage_Catalog_Model_Product_Status::STATUS_DISABLED); $product->save(); Para habilitarlo, como se puede suponer, usaremos la constante Mage_Catalog_Model_Product_Status::STATUS_ENABLED. Estado es stock / fuera de stock en Magento También queremos poder cambiar el estado a […]


Magento: cambiar código de un atributo

El código de cualquier atributo en Magento es un valor de sólo lectura, y una vez establecido no es posible modificarlo… desde el administrador… Cambiar el código de un atributo en Magento es tan sencillo como ir a la base de datos y buscar el atributo en la tabla eav_attribute. Allí podemos cambiarlo con las […]



Optimización de Magento: Full Page Cache

Magento en general, es conocida como una plataforma lenta. Algunos dicen que es intencionado. La gente de Varien (la empresa que desarrolla Magento), ofrece una versión de pago que sí es realmente rápida. El problema es el precio que tiene, de unos módicos 10.000 euros al año. Las diferencias entre ambas plataformas son bastantes, pero […]


Magento: Obtener productos simples de un configurable

Otro snippet muy utilizado en Magento es obtener la lista de productos simples correspondientes a un producto configurable. Una vez tenemos cargado el producto simple es muy sencillo: // Obtener productos simples para el configurable $productTypeIns = $product->getTypeInstance(true); $childIds = $productTypeIns->getChildrenIds($product->getId()); En el array $childIds obtenemos un array con todas las opciones configurables del producto […]


Magento: Colección de productos filtrados por marca

En Magento, para obtener una colección de productos de la tienda filtrados de una determinada forma, se utiliza habitualmente una consulta como la siguiente: // Todos los productos de una marca $collection = Mage::getModel('catalog/product')->getCollection() ->addAttributeToSelect('name') ->addAttributeToSelect('manufacturer') ->addAttributeToFilter(array( array('attribute'=>'manufacturer', 'eq'=>$marca) )); El problema surge siempre con el valor que debe tomar la variable marca, ya que […]


Magento: Obtener opciones de un atributo

Un pequeño snippet para Magento que permite obtener todas las opciones de un determinado atributo tipo Dropdown o Multiselect. // Atributo del que deseamos obtener todas las opciones $attribute = Mage::getModel('eav/entity_attribute')->loadByCode('catalog_product', 'manufacturer'); // Obtenemos la colección de opciones $values = Mage::getResourceModel('eav/entity_attribute_option_collection') ->setAttributeFilter($attribute->getData('attribute_id')) ->setStoreFilter(0, false); // Recorremos la colección y la tratamos $lista = array(); foreach […]


Reset de permisos en Magento con chmod

Cuando movemos una instalación de Magento a otro hosting o cuando realizamos ciertas operaciones en el servidor Web, puede que empecemos a tener algunos problemas con nuestra tienda Magento, como por ejemplo: Errores tipo 5xx, que impiden que la tienda funcione correctamente. Imágenes que no se muestran en la tienda pero existen en el administrador. […]


Páginas:1234