A veces, en Magento ocurre que generar un listado de productos en stock en el front es un dolor de muelas, así que aquí os dejo el código que tenéis que meter en el archivo .phtml para filtrar por stock y obtener aquellos productos que tengan stock mayor que 0 (o la cantidad que especifiquéis):

$productCollection = Mage::getModel('catalog/product')
     ->getCollection()
     ->addAttributeToSelect('*')
     ->joinField('qty',
                 'cataloginventory/stock_item',
                 'qty',
                 'product_id=entity_id')
     ->addAttributeToFilter('qty', array("gt" => 0));

foreach($productCollection as $product) { 
      if($product->getQty()>0)
        echo $product->getName() . " | " . $product->getQty() . " | " . $product->getSku() . "
"; }
Más

Esta minientrada servirá para ayudaros a resolver un problema como el que tuvimos recientemente con una instalación de un módulo en un Magento. A pesar de seguir las instrucciones al pie de la letra al instalar (volcar carpetas y archivos, limpiar cachés, desactivarlas, activarlas…), nos daba un error 500 al activarlo, así que dimos estos pasos para encontrar el error y solucionarlo fácilmente:

Primero nos metimos por ssh al servidor, y fuimos al directorio de logs del apache (distinto del log de Magento). Allí hicimos un tail -f al archivo de error, y nos devolvió el error:

PHP Fatal error:  Class ‘empresa_modulo_Model_Mysql4_Setup’ not found in includes/src/Mage_Core_Model_Resource_Setup.php on line 234

Como no podíamos tener la web con un error 500 mientras realizábamos la búsqueda, borramos el archivo XML que está en app/etc/modules que activa al módulo, y empezamos a investigar. Como las soluciones que proponían en Internet no nos surtían efecto, decidimos borrar los archivos antiguos (más de 4 horas) de sesiones de var/sessions/, activamos de nuevo el plugin, y todo funcionó a la primera.

Espero que os sirva de ayuda.

Más
Esta web utiliza cookies propias para su correcto funcionamiento. Puede consultar nuestra política de cookies, política de privacidad y aviso legal. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información    Configurar y más información
Privacidad