Как удалить неиспользуемые теги в WordPress

В процессе ведения сайта на WordPress часто возникает ситуация, когда в базе данных накапливаются неиспользуемые теги. Они могут значительно засорять структуру сайта, ухудшать SEO и замедлять работу, поэтому важно периодически очищать их. В этой статье мы подробно рассмотрим, как удалить неиспользуемые теги в WordPress с помощью плагинов и собственного кода.

Почему важно удалять неиспользуемые теги в WordPress

Теги — это таксономия, которая помогает структурировать контент. Но если на сайте остались теги, которые не связаны ни с одним постом, они становятся лишним мусором в базе данных. Это приводит к следующим проблемам:

  • Увеличение размера базы данных и замедление запросов.
  • Появление «битых» страниц с архивами тегов, которые не имеют контента, что плохо сказывается на SEO.
  • Путаница в панели управления и усложнение администрирования.

Регулярная очистка тегов помогает поддерживать сайт в порядке и улучшать его производительность.

Удаление неиспользуемых тегов через плагины

Плагин Tag Cleaner

Один из удобных инструментов для очистки тегов — плагин Tag Cleaner. Он позволяет быстро найти и удалить теги, которые не привязаны ни к одному посту.

После установки и активации плагина перейдите в его настройки и нажмите кнопку сканирования. Плагин покажет список пустых тегов, которые можно массово удалить.

Плагин Term Management Tools

Еще один полезный плагин — Term Management Tools. Он расширяет стандартные возможности управления таксономиями и позволяет объединять, удалять и редактировать теги в большом объеме.

Плагин удобен, если нужно не только удалять пустые теги, но и объединять похожие для упрощения структуры.

Удаление неиспользуемых тегов вручную с помощью кода

Если по каким-то причинам вы не хотите использовать плагины, можно удалить неиспользуемые теги с помощью простого PHP-кода, который выполнит удаление всех тегов с нулевым счетчиком.

Пример кода для удаления пустых тегов

function wpstock_delete_unused_tags() {
    $unused_tags = get_terms(array(
        'taxonomy' => 'post_tag',
        'hide_empty' => true,
        'fields' => 'ids',
        'count' => 0 // получить теги с нулевым счетчиком
    ));

    if (!empty($unused_tags) && !is_wp_error($unused_tags)) {
        foreach ($unused_tags as $tag_id) {
            wp_delete_term($tag_id, 'post_tag');
        }
        echo 'Удалено ' . count($unused_tags) . ' неиспользуемых тегов.';
    } else {
        echo 'Неиспользуемых тегов не найдено.';
    }
}

// Запуск функции
wpstock_delete_unused_tags();

Этот код можно временно добавить в файл functions.php вашей темы или выполнить через плагин для вставки произвольного PHP. Он найдет и удалит все теги, которые не привязаны ни к одному посту.

Важные нюансы при работе с кодом

  • Перед выполнением любых действий с базой данных обязательно сделайте резервную копию.
  • Функция удалит теги без возможности восстановления через админку, если не использовать резервную копию.
  • В больших базах данных выполнение может занять некоторое время, рекомендуется запускать в безопасном режиме или через WP-CLI.

Удаление неиспользуемых тегов через WP-CLI

Для тех, кто работает с командной строкой, существует удобный способ очистить теги через WP-CLI. Команда позволяет быстро найти и удалить теги с нулевым счетчиком.

Выполните команду:

wp term list post_tag --field=term_id --format=ids --hide_empty=true

Она выведет ID всех используемых тегов. Чтобы получить неиспользуемые, нужно наоборот — вывести все теги и исключить используемые. Это можно сделать с помощью скрипта на Bash или PHP.

Пример удаления через WP-CLI с PHP-скриптом

Создайте PHP-файл delete-unused-tags.php с содержимым:

<?php
require_once 'wp-load.php';

$unused_tags = get_terms(array(
    'taxonomy' => 'post_tag',
    'hide_empty' => false
));

foreach ($unused_tags as $tag) {
    if ($tag->count == 0) {
        wp_delete_term($tag->term_id, 'post_tag');
        echo 'Удален тег: ' . $tag->name . "\n";
    }
}

Запустите скрипт через командную строку:

php delete-unused-tags.php

Это надежный способ очистить базу без риска случайного удаления.

Рекомендации по профилактике появления неиспользуемых тегов

Чтобы минимизировать накопление пустых тегов, соблюдайте такие рекомендации:

  • Перед созданием нового тега проверяйте, нет ли уже похожего.
  • Используйте плагин Clearfy Pro, который помогает оптимизировать таксономии, в том числе управлять тегами.
  • Регулярно проводите аудит таксономий и удаляйте пустые теги.
  • Ограничьте возможность создания тегов для авторов, если это не требуется.

Соблюдение этих правил поможет сохранить базу данных чистой и ускорить работу сайта.

Заключение

Удаление неиспользуемых тегов — важная задача для поддержания порядка и производительности сайта на WordPress. Вы можете использовать удобные плагины, писать собственные скрипты или воспользоваться WP-CLI для автоматизации процесса. Главное — делать это регулярно и с осторожностью, создавая резервные копии перед изменениями.

Если хотите попробовать мощные инструменты для управления и оптимизации WordPress, обратите внимание на Clearfy Pro на wpshop.ru — он значительно упростит работу с таксономиями и другими аспектами сайта.

Как создать автоматическое отображение отзывов в WordPress
15.01.2026
Отключение оплаты в WooCommerce для товаров с заданным статусом
31.05.2026
Запрет доступа к страницам WooCommerce для неавторизованных пользователей
16.03.2026
WooCommerce: автоматическое отключение оплаты для товаров с определённым статусом
29.06.2026
Как удалить заказы WooCommerce по дате и статусу с помощью кода
19.05.2026