La razón por la que esto sucede es porque el atributo image
no está cargado en la lista de productos. Normalmente puede cambiar esto mientras edita el atributo, pero no puede editar esas configuraciones para este atributo. Creo que es porque es un atributo de stock.
TLDR;
UPDATE catalog_eav_attribute SET used_in_product_listing = 1 WHERE attribute_id = 106;
** Advertencia, no debería ejecutar esta consulta ^^^ hasta que esté seguro de que su attribute_id image
para la entidad catalog_product
es de 106!
Algunas respuestas están sugiriendo que este método:
$_product = Mage::getModel('catalog/product')->load($_item->getProduct()->getId());
echo $this->helper('catalog/image')->init($_product, 'image')->resize(38, 38);
No deberías hacer esto! ¡Esto se debe a que realizarás una carga completa del producto! Esto no es eficiente, y lo más probable es que se realice dentro de un ciclo, ¡lo que es aún peor! Perdón por gritar!
Por lo general no justifico ediciones directos DB, pero en este caso era la solución más fácil para mí:
# First make sure we are using all the right IDs, who knows, I have seen some fubar'ed deployments
SELECT entity_type_id FROM eav_entity_type WHERE entity_type_code = 'catalog_product';
# 10
SELECT attribute_id FROM eav_attribute WHERE attribute_code = 'image' AND entity_type_id = 10;
# 106
# Now that we know the exact attribute_id....
UPDATE catalog_eav_attribute SET used_in_product_listing = 1 WHERE attribute_id = 106;
Ahora los datos de atributos image
se cargarán automagicamente en el listado de productos páginas, a continuación, puede acceda de esta manera:
echo $this->helper('catalog/image')->init($_product, 'image');
¡La mejor parte es que no está cargando todo el producto en un bucle! NO HAGAS NUNCA ALGUNA OCASIÓN
** Además, como sé que voy a hacer que la gente diga que esta no es la forma de Magento, la alternativa sería crear un módulo que tenga una secuencia de comandos de instalación de SQL que ejecute el comando .
Bienvenido a Stack Overflow. Es absolutamente [OK auto-respuesta] (http://meta.stackexchange.com/questions/12513/should-i-not-answermi-own-questions/12519#12519) su propia pregunta, pero por favor publíquela como respuesta real en lugar de dentro de la pregunta misma. Esto permite votar/aceptar la respuesta y nos ayuda a mantener la lista "Sin respuesta" más clara. –