Здравствуйте, друзья! Сегодня мы поговорим о том, как можно массово изменить цену на всех товарах в интернет магазине созданном с помощью плагина WooCommerce.
Заменять цену на тысячах товаров поштучно не только нудно и скучно, но это еще и достаточно времязатратный процесс! Задача по замене цены может возникнуть из-за скачков курса валют, сезонных скидок распродаж и т.п.
Поверьте, если у Вас есть интернет магазин, то рано или поздно Вы столкнетесь с необходимостью изменять все цены на сайте. И так, как же можно массово изменить цены в магазине?
Массовое изменение цен в WooCommerce
Мы рассмотрим два способа, первый — с помощью плагина, а второй — с помощью запросов в базу данных MySQL.
С помощью плагина можно изменять не только цены на всех товарах, но и на определенных категориях, что зачастую очень удобно и полезно. В тоже время, предложенный в этом уроке способ изменения цен с помощью запросов в базу данных имеет меньше возможностей, так что о нем мы поговорим очень поверхностно. И так, приступим!
1. Устанавливаем и активируем плагин WooCommerce Prices. О том, как искать и устанавливать плагины мы говорили в одном из прошлых уроков.
2. После активации плагина переходим с административной панели в Товары -> Prices.
3. В открывшемся окне нам нужно указать в поле Action действие, соответствующее Вашей задаче и выбрать в поле Category (если необходимо) категорию товаров. После этого нажимаем кнопку «Get Prices», чтобы отфильтровать товары по выбранной категории.
4. После нажатия кнопки «Get Prices» нужно указать значения в поле Value. В него нужно ввести цифровое значение, на которое Вы будете повышать или уменьшать цену товаров. В этом поле можно указывать как обычные числа, так и числа с процентами.
Для лучшего понимая наведу несколько примеров:
5. После того как Вы укажите на сколько будете уменьшать или увеличивать цену товаров в поле Value — нажмите кнопку «Edit Prices». После нажатия кнопки цены на товарах изменятся, и Вам нужно будет сохранить эти изменения. Для этого нажмите кнопку «Save Prices».
Готово! Как видите, всего за несколько кликов можно изменить цены на огромном количестве товаров.
С помощью этого плагина у Вас есть возможность массово изменять обычную цену товаров, цену скидки и т.п. Также, одним из самых больших и бесспорных плюсов плагина есть то, что он полностью бесплатный!
Массовое изменение цен с помощью запроса в базу данных MySQL
Как и говорил в начале урока, есть еще и такой способ изменения цен. Он мне не нравится, но сказать о нем я просто не могу. Возможно он Вам тоже пригодится.
1. Заходим в phpMyAdmin.
2. Выбираем базу банных, с которой работает интернет-магазин.
3. Переходим на вкладку SQL.
4. Теперь нужно вставить нужный запрос. К примеру, давайте увеличим цену на всех товарах на 13,5%. Для этого используем следующий запрос:
update wp_postmeta set meta_value = meta_value * 1.135 where meta_key='_price'
Если нужно не увеличить, а уменьшить цену — измените знак * на /.
5. После того как вставили запрос нажимаем кнопку «OK».
Ниже наведены все шаблоны запросов, которые нужны для замены простой цены, цены распродажи и т.п.
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_regular_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_sale_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_min_variation_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_max_variation_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_min_variation_regular_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_max_variation_regular_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_min_variation_sale_price'; UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, ',', '.') WHERE meta_key = '_max_variation_sale_price';
Как видите, сложного ничего нету, но лучше воспользуйтесь плагином 😉
Если у Вас возникли какие-либо вопросы или трудности при изменении цен на товары — пишите в комментариях.
А какой шаблон sql запроса для замены вариативных цен на цены распродажи определённой категории товаров? Подскажите?
Очень помогли, спасибо! Много времени сэкономил, так бы и вбивал отдельно в каждый товар.
НЕужели нельзя менять наличие моделей массово!!?? Помогите ктонибуть! Как массово делать НЕТ В НАЛИЧИИ.
Помогите и мне, если нашли решение данного вопрова
Добрый день, как менять цены на товар с вариациями, они не отображаются при сортировке?
нашли способ?
А какой запрос переделки цены из строчной в числовой?
После нажатия кнопки «Get Prices» фильтрации не происходит. В чем может быть причина?
После нажатия кнопки «get prices», цена меняется во всех категориях, а не в выбранных.
Какая может быть причина?
Не работает что-то обновление в БД (
Есть ли возможность делать массовое изменение характеристик имеющегося товара или добавлять новые через export/import хотя бы из CSV
По поводу изменения цен SQL-запросом. Данный код не эквивалентен плагину и вот почему:
Просто поменять цену не достаточно. Нужно еще изменить дату и время обновления поста. Другие плагины, например для формирования выгрузки на Яндекс Маркет, будут думать, что ничего не поменялось и брать значения из кэша.
Нужно в таблице wp_posts обновлять значения post_modified и post_modofied_gmt.
Плагин видит лишь малую часть товаров из всего магазина? Как это исправить?
Плагина вооще нет в репозитории ВордПресса (Сентябрь 2021).
Плагин есть в репозитории Вордпресс, ссылку на него автор дает в статье. Спасибо за него огромное! Ни один сложный и платный плагин для акций и дискаунтов не работал корректно на моем сайте, все конфликтуют с WPML или темой Flatsome. А этот максимально прост, но отлично работает! В общем, на ноябрь 2022 статья актуальна, плагин работает без нареканий.