如何在magento列表页面中收集此类信息?

时间:2014-12-01 14:41:03

标签: magento magento-1.7

我只需要在列表页面上显示catalog_product_entity_media_gallery表value数据。

当我要列出页面并使用print_r($_productCollection);

时 列表页面上的

$ _ productCollection返回一个这样的数组。

           [_resourceName:protected] => catalog/product
            [_resource:protected] => 
            [_resourceCollectionName:protected] => catalog/product_collection
            [_dataSaveAllowed:protected] => 1
            [_isObjectNew:protected] => 
            [_data:protected] => Array
                (
                    [entity_id] => 160
                    [entity_type_id] => 4
                    [attribute_set_id] => 4
                    [type_id] => simple
                    [sku] => 104580
                    [has_options] => 0
                    [required_options] => 0
                    [created_at] => 2014-12-01 10:40:25
                    [updated_at] => 2014-12-01 11:51:15
                    [cat_index_position] => 1
                    [price] => 4.4900
                    [tax_class_id] => 4
                    [final_price] => 4.4900
                    [minimal_price] => 4.4900
                    [min_price] => 4.4900
                    [max_price] => 4.4900
                    [tier_price] => 
                    [name] => E Shisha E Liquid eKaiser *Menthol Flavour* 10ml Platinum Bottle Refill for Rechargeable E cigarette and E Shisha
                    [msrp_enabled] => 1
                    [msrp_display_actual_price_type] => 1
                    [thumbnail] => amazon_images/104580.jpg
                    [small_image] => amazon_images/104580.jpg
                    [image_label] => 
                    [small_image_label] => 
                    [thumbnail_label] => 
                    [url_key] => e-shisha-e-liquid-ekaiser-menthol-flavour-10ml-platinum-bottle-refill-for-rechargeable-e-cigarette-and-e-shisha
                    [short_description] => The eKaiser Platinum e Liquid range is made specifically for Cigarette smokers.  

我需要唯一的[small_image]值,它只返回amazon_images/104580.jpg

如果任何人有任何想法,该怎么做

请帮帮我。

谢谢

3 个答案:

答案 0 :(得分:1)

您可以在列表页面上执行此操作。

$product = Mage::getModel('catalog/product')->load($_product->getId());
foreach ($product->getMediaGalleryImages() as $image) {
    var_dump($image->getUrl());
}

答案 1 :(得分:1)

你也可以这样做:

$product = Mage::getModel('catalog/product')->load($_product->getId());
foreach ($product->getMediaGallery('images') as $image) {
...
}

答案 2 :(得分:0)

使用getModel列出的for循环会大大减慢您的商家信息页面。

使用列表页面,您只能使用平面表进行收集。

因此,您需要确保在平面表中填充小图像。