我想将产品列表和商店视图列表的图像设置为“使用默认值”。我知道如何针对每种产品分别进行操作:setData(attributeName,false),因此我可以对我的产品列表进行循环。问题:真的太慢了。
$attrArray=array('thumbnail','small_image','image');
$products = array(170,171,172);
$stores = array(17,18,19);
foreach ($stores as $store_id) {
foreach ($products as $product_id) {
foreach ($attrArray as $attr) {
$product = Mage::getModel('catalog/product')
->load($product_id)->setStoreId($store_id)
->setData($attr, false)
->save();
}
}
}
所以我尝试使用Mage :: getSingleton('catalog / product_action')-> updateAttributes($ products,$ attrArray,$ store_id); 而是应该执行相同的操作,但要覆盖一系列产品。它实际上做了些什么:我的所有图像现在都设置为“无图像”,但没有按预期设置为“使用默认值”。
$attrArray = array('thumbnail'=>false,'small_image'=>false,'image'=>false);
$products = array(170,171,172);
$stores = array(17,18,19);
foreach ($stores as $store_id) {
Mage::getSingleton('catalog/product_action')
->updateAttributes($products, $attrArray, $store_id);
}
如果周围的人有一个想法,它真的可以帮助我节省一些时间!谢谢。