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 […]
Error en Magento: Mage registry key “_singleton/core/resource” already exists
Hoy se ha producido un error en una de las tiendas Magento que gestionamos. Nunca lo habíamos visto hasta ahora, pero hemos estado investigando cómo solucionarlo y os dejamos aquí nuestras conclusiones: El problema se presentaba al intentar acceder a cualquier lugar de la tienda, tanto en el frontend como en el backend de Magento […]
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 […]
iOS: Obtener una imagen del carrete
Cuando estamos creando una aplicación iOS para la que necesitamos obtener una foto del carrete de nuestro iPhone / iPad, tenemos que utilizar la clase: UIImagePickerController. Normalmente lo haremos de la siguiente forma en nuestro controlador: // Preparamos el image picker imgPicker = [[UIImagePickerController alloc] init]; [imgPicker setDelegate:self]; // Establecemos el origen de la imagen […]
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 […]
Arquitectura de una aplicación móvil
En aplicaciones móviles que muestran una determinada información, como lugares de interes, un portfolio, servicios de una empresa, etc. el primer paso es decidir la arquitectura de la información. Si la aplicación es autocontenida (sin conexión) o si el contenido se obtiene de una fuente externa. Estas son algunas ideas básicas que tengo que transmitir […]
Tablets seguros para nuestros hijos
Control parental en iPad y tablets Android
Sin duda, el regalo preferido de los niños para estas navidades han sido nuevamente los Tablets (esta vez no entraremos en guerras de cifras entre iPad y Tablets Android ;). Con ellos, se genera para los padres el problema de controlar lo que sus hijos hacen en Internet, restringir los contenidos inapropiados o las aplicaciones […]
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. […]
Demasiado miedo al tráfico «not provided» en Analytics
Primero lo primero ¿Qué es el tráfico ‘not provided’? Google anunció hace ahora un año más o menos, que las búsquedas realizadas en el buscador para los usuarios identificados en Google iban a dirigirse por defecto a la dirección segura https://www.google.com. Las keywords usadas por un usuario a través de la dirección segura de Google […]