Magento - 代码显示的产品比实际存在的更多?

时间:2011-10-14 05:54:53

标签: php sql magento entity-attribute-value

在Magento的后端管理面板中,我正在阅读3026个产品,所有这些产品都运行良好,我在开始时使用自定义脚本进行了大量导入,我担心它必须留下一些孤立的条目在数据库的某个地方,当加载产品模型并调用getCollection(),然后计数时,我显示~7800个产品。此外,当我运行导出器时,它会验证这一点,并且我有数千个空白行,其中填写了商店/网站,没有其他内容。

有任何想法如何清理它?

TL; DR - Alan Storm,plz halp。

编辑:第二个想法,我想我可以加载所有产品并找到所有产品名称并在其上调用删除,这应该照顾任何孤立的条目?

1 个答案:

答案 0 :(得分:2)

最好是你这样做的“magento方式”是这样的:

require_once MAGENTO . '/app/Mage.php';
umask(0);
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

$products = Mage::getModel('catalog/product')
->getCollection(); // here you could filter out already like ->addFieldToFilter("name","");

foreach($products as $product){
  if(empty($product->getName())
    $product->delete();
}