Bulk Tag Updater Woocommerce
WordPress plugin pentru actualizarea bulk a tag-urilor pentru wooccomerce
by Dolghieru Maxim · github.com/kend-y/woocommerce-bulk-tag-plugin
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/kend-y/woocommerce-bulk-tag-plugin/archive/refs/heads/main.zip# Bulk Tag Updater для WooCommerce
Тема плагина
Bulk Tag Updater — это инструмент централизованного управления промо-тегами для товаров WooCommerce. Главная идея: вместо того чтобы открывать каждый товар по отдельности, вы управляете тегами сразу для всего каталога — из одного места, за секунды. Плагин закрывает типичную боль: когда нужно обновить теги у десятков или сотен товаров перед акцией или после её окончания.
Что делает плагин?
Плагин добавляет к каждому товару WooCommerce пользовательское поле _promo_tag («Promo Tag») и предоставляет отдельную страницу управления в панели администратора, где можно просматривать и редактировать теги всех товаров одновременно.
Требования
- WordPress 5.0 и выше
- WooCommerce 3.0 и выше
- PHP 7.0 и выше
Установка
- Скачайте zip-архив плагина.
- В WordPress перейдите в Плагины → Добавить новый.
- Нажмите Загрузить плагин и выберите zip-файл.
- Установите и активируйте плагин.
После активации в меню WooCommerce появится новый пункт Product Tag.
Основные возможности
1. Пользовательское поле тега в карточке товара
- К каждому товару WooCommerce (простой, вариативный, групповой и т.д.) добавляется текстовое поле «Tag».
- Поле находится во вкладке Inventory (Управление запасами) блока «Product Data».
- При сохранении товара значение поля автоматически записывается в мета-данные.
- Это позволяет редактировать тег и напрямую из карточки товара, без использования страницы плагина.
2. Централизованная страница управления
Доступна по пути WooCommerce → Product Tag.
Страница состоит из трёх зон:
Зона фильтров (верхняя)
- Поле поиска по названию товара (только по заголовку, не по описанию).
- Выпадающий список всех категорий WooCommerce для фильтрации.
- Кнопка «Filtreaza» — применить фильтры.
- Кнопка «Reseteaza» — сбросить все фильтры и вернуться к полному списку.
Зона массового обновления
- Поле ввода тега + кнопка «Actualizează selectate» — обновить отмеченные товары.
- Поле ввода тега + кнопка «Actualizează toate» — обновить все отфильтрованные товары.
Таблица товаров
- Отображает 10 товаров на странице с автоматической пагинацией.
- Столбцы: чекбокс, изображение, название, статус наличия, цена, поле тега + кнопка сохранения.
3. Три режима обновления тегов
а) Индивидуальное обновление
- В столбце «Actiune» каждая строка содержит поле ввода с текущим тегом и кнопку «Save».
- Позволяет изменить тег конкретного товара прямо из таблицы, не открывая его карточку.
- Подходит для быстрой правки 1–2 товаров.
б) Обновление выбранных товаров (Bulk Update)
- Каждая строка таблицы имеет чекбокс.
- В заголовке таблицы — чекбокс «Select All», выделяющий все товары на текущей странице.
- Вводите нужный тег в поле «Introdu Tag-ul» и нажимаете «Actualizează selectate».
- Тег применяется только к отмеченным товарам.
- Если ни один товар не выбран или поле тега пустое — отображается сообщение об ошибке.
- Счётчик в уведомлении об успехе показывает, сколько товаров было обновлено.
в) Обновление всех товаров
- Отдельное поле ввода и кнопка «Actualizează toate».
- Обновляет все товары, соответствующие активным фильтрам (поиск + категория), независимо от страницы пагинации.
- Если фильтры не применены — обновляет весь каталог.
- Идеально для массовых промо-кампаний или сброса тегов после акции.
4. Поиск по названию
- Строка поиска фильтрует товары только по заголовку (post_title), исключая описания и мета-данные.
- Реализовано через кастомный хук
posts_searchс флагомsearch_prod_title_only, что обеспечивает точность и скорость поиска.
5. Фильтрация по категории
- Выпадающий список формируется динамически из всех категорий WooCommerce (
product_cat). - Фильтрация через
tax_query— стандартный и производительный механизм WordPress. - Фильтр категории и поиск можно комбинировать одновременно.
6. Отображение статуса наличия
В столбце «Стoc» статус товара отображается цветным значком:
| Статус WooCommerce | Надпись | Цвет |
|---|---|---|
instock |
In Stoc | Зелёный |
outofstock |
Indisponibil | Красный |
onbackorder |
Pe comanda | Серый |
7. Пагинация
- По умолчанию отображается 10 товаров на странице.
- При наличии нескольких страниц внизу таблицы появляются кнопки навигации Prev / Next и номера страниц.
- Пагинация корректно работает совместно с активными фильтрами поиска и категории.
8. Безопасность
- Все формы защищены WordPress Nonce (уникальными одноразовыми токенами):
update_product_action— для индивидуального обновления.bulk_update_action— для обновления выбранных.update_all_action— для обновления всех.
- Все пользовательские данные проходят санитизацию (
sanitize_text_field,absint). - Доступ к странице управления ограничен ролью
manage_woocommerce. - Если WooCommerce не активен — плагин показывает уведомление и не выполняется.
Практические сценарии использования
Сценарий 1: Запуск новой коллекции
- В поиске введите ключевое слово из названий новых товаров.
- Отметьте все найденные товары (чекбокс в заголовке).
- Введите тег
NOUи нажмите «Actualizează selectate».
Сценарий 2: Промо-акция на категорию
- Выберите нужную категорию из выпадающего списка.
- Нажмите «Filtreaza».
- Введите тег
REDUCERE 30%в поле для всех. - Нажмите «Actualizează toate».
Сценарий 3: Быстрое редактирование одного товара
- Найдите товар через поиск.
- В столбце «Actiune» введите новый тег.
- Нажмите «Save» напротив этого товара.
Сценарий 4: Сброс тегов после акции
- Отфильтруйте категорию «Sale Items».
- Оставьте поле тега пустым.
- Нажмите «Actualizează toate» — теги будут очищены.
Сценарий 5: Выборка товаров из разных категорий
- Просматривайте страницы без фильтров.
- Вручную отмечайте нужные товары на разных страницах.
- Введите тег и нажмите «Actualizează selectate».
Редактирование тега из карточки товара
Помимо страницы плагина, тег можно изменить напрямую:
- Перейдите в Products → All Products.
- Откройте нужный товар.
- В блоке Product Data перейдите на вкладку Inventory.
- Найдите поле «Tag» (после SKU и Stock).
- Введите значение и сохраните товар.
Техническая информация
- Теги хранятся как мета-данные товара с ключом
_promo_tag(wp_postmeta). - Основной файл плагина:
wc_bulk_tag.php. - Стили административной страницы:
assets/css/admin.css. - Плагин использует стандартное WordPress/WooCommerce API — совместим с любыми темами и плагинами.