2014-09-12 18 views
1

我需要爲我的所有產品(7000+)將「顯示選項」設置爲「產品信息列」(container1)。 我執行這個腳本,但是對我的產品做了任何修改。 我在magento 1.9.0.1 ...問題在哪裏? 否則,更簡單的做一個數據庫查詢?Magento:將「container1」設置爲所有現有產品

<?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>"; 
?> 

回答

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) 

如果您有多個商店,你可以調整或設置的默認存儲

更新查詢

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

希望這將肯定幫助您快速更新,你可以取代你STORE_ID爲好。

相關問題