2014-10-05 48 views
0

我在magento中导入了55k以上的产品。我发现一些产品没有导入图像。导出magento中没有图像的产品

你可以给我一个方法,我如何导出没有图像的产品?

我试图导出产品的图像值为'no_selection',但它只给我2-3项。然后我试图交叉验证那些没有图像的entity_id到'catalog_product_entity_varchar'表中。我惊讶于没有找到什么时候一些entity_id在'catalog_product_entity'表中出现,但不在'catalog_product_entity_varchar'表中。

任何人都可以给我一种方法来解决这个问题。

任何帮助将真正被赞赏。

Regards

回答

0

此查询帮助?

SELECT t0.sku 
FROM catalog_product_entity AS t0 
WHERE NOT EXISTS(
    SELECT NULL 
    FROM catalog_product_entity_media_gallery AS t1 
    WHERE (t1.entity_id = t0.entity_id) 
) 
0

如果您只需要SKU,我曾经使用的一种方法是通过Magento shell脚本。此示例仅输出SKU(每行一个),仅用于那些没有图像属性值的产品。

<?php 

error_reporting(E_ALL); 
error_reporting(-1); 

require_once 'app/Mage.php'; 

Mage::app(); 

$collection = Mage::getModel('catalog/product')->getCollection(); 

foreach($collection as $product){ 

     $productId = $product->getId(); 
     $prod = Mage::getModel('catalog/product')->load($productId); 
     $hasImage = Mage::helper('catalog/image')->init($prod, 'image'); 

     if (!$hasImage){ 
       echo $prod->getSku() . "\n"; 
     } 
} 

?> 

我把这个变成“列表noimages.php,然后进入我的Magento的根文件夹仅使用此开发环境,或者对生产非常有限通过shell中运行它像这样:。

php list-noimages.php 

对于许多产品可以输出到一个文件:

php list-noimages.php >> skus.txt 

否则通过Web浏览器访问该文件,并保存输出。