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

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

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

Теги в WordPress служат для группировки записей по определённым темам, но со временем многие из них перестают использоваться. Их накопление ведёт к нескольким негативным последствиям:

  • Загромождение базы данных. Каждая запись тега — это дополнительная строка в таблицах, что замедляет запросы и увеличивает размер базы.
  • Плохой пользовательский опыт. В админке становится сложнее ориентироваться, что затрудняет управление контентом.
  • Потенциальное негативное влияние на SEO. Неиспользуемые теги могут создавать дублированный контент или пустые страницы архива, что поисковики воспринимают негативно.

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

Как найти неиспользуемые теги через интерфейс WordPress

Самый простой способ — просмотреть список тегов в разделе Записи > Метки. Там отображается количество записей для каждого тега. Теги с нулевым значением — кандидаты на удаление.

Однако, если тег используется в пользовательских типах записей (CPT), число может не отображаться корректно. Кроме того, если тег использовался раньше, но потом записи из него были удалены, он остаётся в базе.

Для более точного анализа лучше использовать SQL-запросы или плагины.

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

Если у вас есть доступ к базе данных через phpMyAdmin или другой инструмент, можно выполнить следующий запрос, чтобы получить список тегов без связанных записей:

SELECT t.term_id, t.name FROM wp_terms t
INNER JOIN wp_term_taxonomy tt ON t.term_id = tt.term_id
WHERE tt.taxonomy = 'post_tag' AND tt.count = 0;

Этот запрос выбирает все теги с нулевым счётчиком записей. Чтобы удалить их, можно выполнить:

DELETE t, tt FROM wp_terms t
INNER JOIN wp_term_taxonomy tt ON t.term_id = tt.term_id
WHERE tt.taxonomy = 'post_tag' AND tt.count = 0;
<

Важно: перед выполнением любых операций с базой данных сделайте резервную копию!

Автоматизация удаления неиспользуемых тегов с помощью PHP-функции

Если вы предпочитаете работать через код, можно добавить следующую функцию в файл functions.php вашей темы или создать небольшой плагин. Эта функция найдёт и удалит все теги без записей:

function wpfind_remove_unused_tags() {
    $args = array(
        'taxonomy' => 'post_tag',
        'hide_empty' => true,
        'fields' => 'ids',
    );
    $used_tags = get_terms($args);

    $all_tags = get_terms(array(
        'taxonomy' => 'post_tag',
        'hide_empty' => false,
        'fields' => 'ids',
    ));

    $unused_tags = array_diff($all_tags, $used_tags);

    foreach ($unused_tags as $tag_id) {
        wp_delete_term($tag_id, 'post_tag');
    }
}

// Запустите функцию один раз, затем удалите вызов
// wpfind_remove_unused_tags();

Обратите внимание, что вызов функции нужно делать один раз, например, через админку или подключение к init, и затем удалить, чтобы не удалять теги при каждом загрузке сайта.

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

Для тех, кто не хочет работать с кодом, есть удобные плагины:

  • Term Management Tools — расширяет возможности управления таксономиями, позволяет объединять и удалять теги.
  • Press Tager — помогает очистить и оптимизировать теги, в том числе удалить неиспользуемые.
  • Clearfy Pro — комплексный плагин для оптимизации сайта, включая управление таксономиями и удаление мусора.

Использование таких плагинов позволяет безопасно и удобно управлять тегами без риска повредить базу данных.

Как избежать повторного появления неиспользуемых тегов

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

  • Ограничьте права пользователей. Разрешайте создавать теги только проверенным редакторам.
  • Используйте автокомплит при вводе тегов. Это снижает вероятность создания синонимов и дубликатов.
  • Регулярно проверяйте и удаляйте пустые теги. Можно настроить автоматизацию с помощью WP-Cron и кастомного кода.

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

Добавьте в functions.php следующий код для еженедельного запуска очистки:

function wpfind_schedule_unused_tags_cleanup() {
    if (! wp_next_scheduled('wpfind_cleanup_unused_tags_hook')) {
        wp_schedule_event(time(), 'weekly', 'wpfind_cleanup_unused_tags_hook');
    }
}
add_action('wp', 'wpfind_schedule_unused_tags_cleanup');

function wpfind_cleanup_unused_tags() {
    $args = array('taxonomy' => 'post_tag', 'hide_empty' => true, 'fields' => 'ids');
    $used_tags = get_terms($args);
    $all_tags = get_terms(array('taxonomy' => 'post_tag', 'hide_empty' => false, 'fields' => 'ids'));
    $unused_tags = array_diff($all_tags, $used_tags);
    foreach ($unused_tags as $tag_id) {
        wp_delete_term($tag_id, 'post_tag');
    }
}
add_action('wpfind_cleanup_unused_tags_hook', 'wpfind_cleanup_unused_tags');

Таким образом, вы обеспечите автоматическую очистку базы без вмешательства.

Заключение

Удаление неиспользуемых тегов в WordPress — важный элемент поддержки сайта в порядке и оптимизации производительности. Используйте SQL-запросы, PHP-функции или плагины, чтобы контролировать и чистить базу данных. Рекомендуется настроить регулярную автоматическую очистку, чтобы не допустить накопления мусора. Если хотите расширенные возможности оптимизации, обратите внимание на Clearfy Pro с инструментами для удобного управления таксономиями и оптимизации сайта.

Как удалить или заблокировать зеркала WordPress сайта
28.12.2025
Как создать свой плагин WordPress: пошаговое руководство
10.11.2025
Как настроить автоматическое удаление старого контента в WordPress
04.01.2026
Как создать динамические категории в WordPress с помощью кода
19.01.2026
Как использовать хуки для динамического изменения контента в WordPress
20.12.2025

Сайт в разработке, скоро здесь будет портал о WordPress.