Сложный перенос товаров в другие категории Opencart

Как известно переносить товары в Opencart можно заходя либо в каждый товар по отдельности, либо массово с помощью различных модулей например Batch Editor, но иногда возникают и более сложные ситуации. На днях столкнулся с подобной. Предыстория данной проблемы была следующая – был произведен парсинг сайта с последующей заливкой через CSV Price Pro, причем при заливке создались категории типа “обои для кухни/обои для холла/обои для кабинета” и необходимо было отловить все такие товары и растащить одновременно в три категории “обои для кухни”, “обои для холла”, “обои для кабинета”. Лучший вариант для решения подобной задачи – воспользоваться прямым доступом к базе данных MySQL.

Предположим, что id категории “обои для кухни/обои для холла/обои для кабинета” – 6699

id категории “обои для кухни” – 3937

id категории “обои для холла” – 4599

id категории “обои для кабинета” – 3914

(ID категорий можно определить либо из базы данных из таблицы oc_category_discription либо более простой вариант такой

Заходим в PhpMyAdmin и выполняем несколько MySQL скриптов такого содержания.

находим все товары из необходимой категории и копируем в необходимые категории

INSERT IGNORE INTO oc_product_to_category( product_id, category_id ) SELECT product_id, 3937
FROM oc_product_to_category WHERE `category_id` = ‘6699’;

INSERT IGNORE INTO oc_product_to_category( product_id, category_id ) SELECT product_id, 4599
FROM oc_product_to_category WHERE `category_id` = ‘6699’;

INSERT IGNORE INTO oc_product_to_category( product_id, category_id ) SELECT product_id, 3914
FROM oc_product_to_category WHERE `category_id` = ‘6699’;

удаляем данные из базы данных о категории, из которой копировали товар

DELETE FROM `имя-базы`.`oc_category` WHERE `oc_category`.`category_id` = ‘6699’;

DELETE FROM `имя-базы`.`oc_category_description` WHERE `oc_category_description`.`category_id` = 6699;

естественно если при создании базы данных бы использовали префикс “ос_”, иначе используете со своим префиксом.

Таким образом можно упростить процедуру присваивания товару других категорий.

 

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Пролистать наверх