Magento:将“container1”设置为所有现有产品

时间:2014-09-12 10:23:59

标签: magento

我需要为所有产品(7000+)将“显示选项”设置为“产品信息列”(容器1)。 我执行此脚本,但对我的产品进行了任何修改。 我正在使用magento 1.9.0.1 ......问题出在哪里? 否则,更简单的做一个DB查询?

<?php
    require_once 'app/Mage.php';
    Mage::app();

    $products = Mage::getModel('catalog/product')->getCollection();
    echo "<pre>";
    foreach($products as $product){
        $prod=Mage::getSingleton('catalog/product')->load($product->getId())->setOptionsContainer('container1')->save();
        echo "SKU [". $product->getSku() ."] set ". $prod->getAttributeText('options_container') ."<br>";
        usleep(50000);
    }
    echo "</pre>";
?>

1 个答案:

答案 0 :(得分:3)

你可以运行sql查询来找出表

中的属性id
eav_attribute

使用options_container

等代码查找

对于我来说是109

你可以运行sql

SELECT * FROM `catalog_product_entity_varchar` WHERE `attribute_id` = 109 AND (`store_id` = 1 OR `store_id` = 4)

如果您有多个商店可以调整或设置 0 作为默认商店

,您也可以更换store_id

更新查询

update catalog_product_entity_varchar set value = 'container1' where attribute_id = 109

希望这一定会帮助您快速更新。