Если у Вас есть интернет магазин на WpShop с заполненными товарами, и у Вас появилась необходимость перевести его на Woocommerce, то эта инструкция поможет вам за несколько минут перенести все товары под WooCommerce, и не важно сколько у Вас при этом этих товаров.
1. Установка WooCommerce.
С админки переходим Плагины -> Добавить новый, вбиваем в поиск woocoommerce, в списке находим его и устанавливаем.
2. Рабора с phpmyadmin
Открываем phpmyadmin и делаем резервную копию БД (вкладка Экспорт) на случай необходимости возврата к первоначальному состоянию.
В phpmyadmin выполняем запрос к нашей БД (вкладка SQL):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
UPDATE wp_posts AS p LEFT JOIN wp_postmeta AS pm ON p.ID = pm.post_id SET pm.meta_key = REPLACE(pm.meta_key, '_product_price', '_price') WHERE p.post_type = 'wpshop_product'; UPDATE wp_posts AS p LEFT JOIN wp_postmeta AS pm ON p.ID = pm.post_id SET pm.meta_key = REPLACE(pm.meta_key, '_wpshop_displayed_price', '_regular_price') WHERE p.post_type = 'wpshop_product'; UPDATE wp_posts AS p LEFT JOIN wp_postmeta AS pm ON p.ID = pm.post_id SET pm.meta_key = REPLACE(pm.meta_key, '_product_stock', '_stock') WHERE p.post_type = 'wpshop_product'; UPDATE wp_posts AS p SET p.post_type = REPLACE(p.post_type, 'wpshop_product', 'product') WHERE p.post_type = 'wpshop_product'; UPDATE wp_term_taxonomy AS term SET term.taxonomy = REPLACE(term.taxonomy, 'wpshop_product_category', 'product_cat') WHERE term.taxonomy = 'wpshop_product_category'; INSERT INTO wp_postmeta (`meta_id`, `post_id`, `meta_key`, `meta_value`) SELECT NULL, p.ID , 'total_sales', 0 FROM wp_posts AS p LEFT OUTER JOIN wp_postmeta AS pm2 ON p.ID = pm2.post_id WHERE p.post_type = 'product' AND pm2.meta_key ='_price' AND pm2.post_id is not null GROUP BY p.ID; INSERT INTO wp_postmeta (`meta_id`, `post_id`, `meta_key`, `meta_value`) SELECT NULL, p.ID , '_visibility', 'visible' FROM wp_posts AS p LEFT OUTER JOIN wp_postmeta AS pm2 ON p.ID = pm2.post_id WHERE p.post_type = 'product' AND pm2.meta_key ='_price' AND pm2.post_id is not null GROUP BY p.ID; |
где wp_ — префикс базы данных WordPress (у вашей БД может быть другим).
3. Настройка под свои нужды
Если необходимо производим дальнейшую настройку WooCommerce под свои нужды.
Этот вариант перехода подойдет, если в WpShop нет вариаций товара, т.е., когда товары простые.