2011-12-20 4 views
4

Я только что импортировали ~ 800 продуктов в Magento, прежде чем понял я store_id значение 0, когда оно должно было быть 1.Magento: Массовое изменение продукта идентификатор магазина

Кто-нибудь знает простой способ обновить это? Я попытался изменить store_id на 1 в электронной таблице и импортировать его снова, чтобы обновить их, но он не сработал.

Я нашел этот SQL в http://www.magentocommerce.com/boards/viewthread/1798/, но я получаю синтаксические ошибки и неизвестные ошибки столбца, поэтому я не стал дальше с ним.

REPLACE INTO catalog_product_store (store_id, product_id) SELECT 1,entity_id from catalog_product_entity 
update catalog_category_entity set store_id = 1 where store_id = 0; 
update catalog_product_entity set store_id = 1 where store_id = 0; 
update catalog_product_entity_datetime set store_id = 1 where store_id = 0; 
update catalog_product_entity_decimal set store_id = 1 where store_id = 0; 
update catalog_product_entity_gallery set store_id = 1 where store_id = 0; 
update catalog_product_entity_int set store_id = 1 where store_id = 0; 
update catalog_product_entity_text set store_id = 1 where store_id = 0; 
update catalog_product_entity_tier_price set store_id = 1 where store_id = 0; 
update catalog_product_entity_varchar set store_id = 1 where store_id = 0; 
+0

Пробовал это тоже: (вот где начинается ошибка неизвестного столбца. Это лучший способ сделать это, хотя? – iamjonesy

+0

Вы пытались удалить их все перед повторным импортом?Я не знаю, какой эффект будет иметь, просто любопытно ... – clockworkgeek

+0

Ничего не удалял. Это было около 840/950 продуктов, поэтому не удалось удалить с помощью SQL, так как я не мог определить, какие продукты удалить и подумать, что их удаление через бэкэнд займет навсегда – iamjonesy

ответ

3

Идентификатор магазина 0 - это административный магазин - обычно этот набор устанавливается при выполнении пользовательских импортных операций. Это не проблема, если вы работаете с несколькими магазинами.

Самый быстрый способ обновления продуктов - перейти в меню «Каталог-> Управление продуктами», выбрать все продукты и выбрать «Обновить статус» и отправить. Затем вы можете назначить ассоциацию веб-сайтов на вкладке Веб-сайты в появившемся меню.

Bulk редактировать все продукты: Product Bulk Edit

Чтобы сделать это с кодом вместо этого, вы хотели бы, чтобы перебрать свою коллекцию продукции и установить веб-сайт или идентификатор магазина там. Пример:

$products = Mage::getModel('catalog/product')->getCollection(); 

foreach($products as $product) { 
    $product->setStoreId($storeId); 
    try { 
     $product->save(); 
    } catch(Exception $e) { 
     echo $e->getMessage(); 
    } 
} 
+0

Спасибо за это. Я думаю, что создам новый вопрос о проблемах с моей категорией – iamjonesy

+0

Рад, что я мог бы помочь. Вы никогда не должны использовать жесткий SQL - вы можете что-то сломать. Вы получаете ошибку, потому что SQL, который вы опубликовали, не имеет смысла. В этих таблицах нет столбца store_id. По крайней мере, не в модели EAV на 1.6.1 –

0

WOW .... Это самое лучшее решение, так как 2 дня я работаю с на ошибку у решить ее спасибо,

мой вопрос:

я создан продуктов CSV файл в том, что у меня есть 600 продуктов, я сделал каждый думаю, это хорошо, в панели администратора он показывает все в порядке, но в магазине странице детали продукта, все продукты не показывать

если я редактировать продукт в панели администратора и нажмите на кнопку сохранить без каких-либо изменений, то он показывает подробно странице продукта,

С 2 дня я нахожусь беспокоиться об этом,

я попробовал ваш лучшее решение тогда я получил его,

я выбрал все продукты

Действия -> Атрибуты Update -> Добавить -> выберите на вкладке сайты -> Добавить продукт в Веб-сайты окне -> отметьте Главный флажок Сайт поле - > сохранить.

это все ...

ВСЕ ПРОДУКТЫ ШОУ В ДЕТАЛЯХ ПРОДУКЦИИ ПААГ.

СПАСИБО.

если хотите хотите файл пример CSV, то, пожалуйста, напишите мне, я пошлю образец файла CSV, то ваша работа станет легко ...

мой почтовый идентификатор: [email protected]

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