Магазин на WooCommerce — как удалить 50 000 товаров за 3 минуты. Удаление всех товаров в WooCommerce c помощью SQL-запроса.

woocommerce-reviewВ сети многие блогеры, поклонники различных фреймворков и фанаты Битрикса любят говорить о том, что интернет-магазин на WordPress — это извращение, неправильно, нельзя добавить много товаров и т.п. Это, естественно, неправда. Я скоро закончу создававать для одного из клиентов целую сеть партнёрских интернет-магазинов на WooCommerce с количеством товаров от 500 и до 48 000 позиций. С автоматическим обновлением цен и других необходимых полей. И всё это на виртуальном хостинге за сущие гроши. Этому будет посвящён отдельный пост с описанием настроек кеширования для великолепного быстродействия.

В этой заметке я хотел бы поделиться с Вами (и себе записать, чтобы не забыть) простой способ удаления всех товаров из WooCommerce. В каталоге плагинов есть несколько специализированных плагинов. Но работают они паршиво, с ошибками.

Всё, что нам понадобиться — это доступ к базе данных. Делаем запрос и радуемся:

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = 'product');
DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = 'product');
DELETE FROM wp_posts WHERE post_type = 'product';

 

Смотрите также

Интернет-магазин зоотоваров для шиншилл Интернет-магазин зоотоваров для шиншилл Адрес сайта: http://forchins.com.ua
Выводим описание категории товаров Woocommerce под товарами На рисунке демонстрируется блок с описанием категории товаров, отображаемый под сеткой товаров Чаще всего описание категории (раздела) товаров исп...
Создание дочерней темы WordPress Дочерние темы — это темы, использующие функциональность родительской темы, но имеющие некоторые отличия: другой дизайн, цвета, дополнительные настройк...
  • Валерий

    Добрый день! А можно для чайников, рассписать более подробно, как сделать запрос к базе данных. Спасибо

    • admin

      Добрый день, Валерий.
      Чтобы сделать запрос к БД Вам нужно залогиниться в phpmyadmin или другой инструмент управления БД. И там выполнить sql запрос.
      Только если префиксы таблиц у Вас отличаются от дефолтных — смените в запросе префиксы на свои. Например, «wp_postmeta» на «oun_postmeta».

      • Алек Сухов

        Удалить 50000 записей дело не такое хитрое, как добавить 10000 записей «оптом» в WooCommerce ))

        • admin

          Залить как раз не проблема. Достаточно использовать плагин импорта: http://www.wpallimport.com/order-now/. С его помощью я максимально импортировал 1 400 000 товаров в WooCommerce.
          Плагин очень удобен и разобраться в нём не составит труда.

  • Александр

    Спасибо большое! Очень помогли экономить дорогоценное время!

  • Sergey

    Товары не убираются. В базе пишет:

    Затронуто 0 строк. (Запрос занял 0.0012 сек.)
    DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘product’)
    [ Построчное редактирование ] [ Изменить ] [ Создать PHP-код ]
    Затронуто 0 строк. (Запрос занял 0.0315 сек.)
    DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘product’)
    [ Построчное редактирование ] [ Изменить ] [ Создать PHP-код ]
    Затронуто 0 строк. (Запрос занял 0.0005 сек.)
    DELETE FROM wp_posts WHERE post_type = ‘product’

  • Ilya Pesterev

    Вместе с товарами удаляются ли изображения к товарам?

    • http://seodima.com/ Dmitry

      К сожалению, нет. Товары удаляются из базы.

  • Данил Трубицын

    __

  • Данил Трубицын

    У вас WooCommerce нормально работает с таким кол-вом товаров? У меня без посещаемости сайт «валит» MySQL. Видимо начинает что-то делать и не справляется. Может делали какую-то оптимизацию движка?

    • http://seodima.com/ Dmitry

      Добрый день, Данил.
      Работает нормально, но только если минимум категорий и у каждого товара по 1 категории. Если категории вложенные по 2-3 и более вложения и ещё товар состоит в каждой категории (+ хоть по одному аттрибуту есть), то даже с кешированием и на выделенном сервере работает не очень быстро.