2014-09-12 3 views
1

Мне нужно настроить параметры отображения на «Информация о продукте» (контейнер1) для всех моих продуктов (7000+). Я выполняю этот скрипт, но любые изменения сделаны для моих продуктов. Я нахожусь на 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 запрос, чтобы узнать идентификатор атрибута в таблице

eav_attribute 

найти с кодом, как options_container

для моего это 109

вы можете запустить SQL

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

вы можете заменить store_id, а если у вас есть несколько магазин вы можете настроить или установить для магазина по умолчанию

Update Query

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

надеюсь, что это будет уверен, что поможет вам быстро обновления.

Смежные вопросы