Как удалить неиспользуемые шорткоды в WordPress: практическое руководство

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

В этой статье мы подробно разберём, как найти и удалить неиспользуемые шорткоды в WordPress, чтобы очистить контент, повысить производительность и избежать багов. Также рассмотрим примеры кода, которые помогут автоматизировать этот процесс.

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

Когда шорткод, используемый в контенте, перестаёт поддерживаться плагином или темой, он перестаёт работать и выводится как текст, например: [example_shortcode]. Это портит внешний вид страниц и может сбивать пользователей.

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

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

  • Избавиться от лишнего мусора в базе данных и контенте.
  • Обеспечить корректное отображение страниц.
  • Повысить скорость загрузки за счёт уменьшения объёма обрабатываемого контента.
  • Избежать конфликтов с другими плагинами и темами.

Как найти неиспользуемые шорткоды в контенте

Поиск вручную через редактор

Если сайт небольшой, можно открыть записи и страницы в визуальном или текстовом редакторе и найти шорткоды по шаблону [название_шорткода]. Однако это трудоёмко и неэффективно для больших сайтов.

Поиск с помощью SQL-запроса

Можно сделать выборку из базы данных для поиска записей, где встречается шорткод. Например, чтобы найти все записи с шорткодом [my_shortcode], выполните запрос:

SELECT ID, post_title FROM wp_posts WHERE post_content LIKE '%[my_shortcode]%';

Таким образом можно выявить, где шорткод ещё используется.

Использование плагинов для поиска шорткодов

Существуют плагины, которые сканируют контент на наличие шорткодов, например:

  • Shortcode Cleaner Lite — помогает выявлять и удалять старые шорткоды.
  • Find Shortcodes — позволяет найти все шорткоды на сайте.

При установке плагинов с WPSHOP.ru можно быть уверенным в совместимости и актуальности.

Как удалить неиспользуемые шорткоды из контента

Удаление вручную

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

Автоматическое удаление через код

Можно написать функцию, которая будет искать и удалять определённые шорткоды из всех записей. Ниже пример функции wpnews_remove_unused_shortcodes, которая удаляет шорткод [old_shortcode] из контента:

function wpnews_remove_unused_shortcodes() {
    global $wpdb;
    $shortcode = 'old_shortcode';
    $pattern = '\\[' . preg_quote($shortcode, '/') . '[^\]]*\\]';

    // Получаем все посты с этим шорткодом
    $posts = $wpdb->get_results($wpdb->prepare(
        "SELECT ID, post_content FROM {$wpdb->posts} WHERE post_content LIKE %s",
        '%' . $wpdb->esc_like('[' . $shortcode) . '%'
    ));

    foreach ($posts as $post) {
        $new_content = preg_replace('/' . $pattern . '/', '', $post->post_content);
        if ($new_content !== $post->post_content) {
            // Обновляем пост
            $wpdb->update(
                $wpdb->posts,
                array('post_content' => $new_content),
                array('ID' => $post->ID),
                array('%s'),
                array('%d')
            );
        }
    }
}

// Запуск функции один раз
// wpnews_remove_unused_shortcodes();

Эту функцию рекомендуется запускать один раз, например, через WP-CLI или временно добавив в functions.php и потом удалив.

Использование плагинов для массового удаления

Плагины вроде Shortcode Cleaner Lite позволяют искать неиспользуемые шорткоды и очищать их из контента через удобный интерфейс, без риска повредить данные.

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

Деактивация плагинов и шорткодов

Если вы планируете отключить плагин, который добавляет шорткоды, сначала удалите все шорткоды из контента, чтобы избежать отображения ошибок.

Использование функций-заглушек для шорткодов

Чтобы временно скрыть ошибки от неактивных шорткодов, можно зарегистрировать пустые функции-обработчики. Например:

function wpnews_empty_shortcode_handler($atts, $content = null) {
    return '';
}
add_shortcode('old_shortcode', 'wpnews_empty_shortcode_handler');

Это позволит сохранить контент без вывода ошибок, пока вы не удалите шорткод полностью.

Автоматизация с помощью WPRemark

Для сайтов с большим количеством контента можно использовать WPRemark — плагин для автоматического анализа и редактирования контента, который помогает выявлять и убирать устаревшие элементы, включая шорткоды.

Выводы и рекомендации

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

Используйте SQL-запросы, плагины и собственные функции для поиска и удаления неиспользуемых шорткодов. Временно можно регистрировать заглушки, чтобы избежать ошибок отображения.

Если хотите автоматизировать эти процессы и получить дополнительные инструменты для работы с контентом, обратите внимание на решения с WPSHOP.ru.

Как создать собственный блок в Gutenberg WordPress: практическое руководство
15.01.2026
Как создать динамические таблицы в WordPress с помощью шорткодов
05.01.2026
Автоматизация публикации новостей в WordPress с WPRemark
01.03.2026
Как создать автоматический импорт новостей из внешнего API в WordPress
16.03.2026
Как добавить автоматическое обновление плагинов в WordPress без помощи коммерческих пакетов
20.12.2025