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

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

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

Неиспользуемые шорткоды влияют на производительность и удобство работы с сайтом. Во-первых, WordPress пытается выполнить парсинг и обработку всех шорткодов, включая те, для которых нет обработчика — они выводятся в сыром виде, портя дизайн и пользовательский опыт.

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

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

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

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

Для начала можно попытаться найти все шорткоды, которые встречаются в базе данных. Типичный формат шорткода — [shortcode] или [shortcode param="value"]. Можно выполнить SQL-запрос к таблице wp_posts для поиска таких конструкций:

SELECT ID, post_title, post_content FROM wp_posts WHERE post_content LIKE '%[%]%' AND post_content NOT LIKE '%\[shortcode_name%';

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

function wpcourse_get_all_shortcodes() {
    global $shortcode_tags;
    return array_keys($shortcode_tags);
}

Эта функция вернет все зарегистрированные шорткоды на сайте. Но нам нужны те, которые есть в контенте, но не зарегистрированы — их и нужно удалить.

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

Плагин Shortcodes Finder помогает найти все шорткоды, встречающиеся в контенте. Он выведет список с указанием страниц и постов, где они используются.

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

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

Метод 1: Ручное удаление через базу данных

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

Для массовой очистки можно использовать SQL-запросы с функцией замены:

UPDATE wp_posts SET post_content = REPLACE(post_content, '[old_shortcode]', '') WHERE post_content LIKE '%[old_shortcode]%';

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

Метод 2: Автоматическое удаление через PHP-фильтр

Чтобы избежать вывода нераспознанных шорткодов, можно добавить фильтр, который автоматически удалит все шорткоды, для которых нет обработчика:

function wpcourse_remove_unused_shortcodes($content) {
    global $shortcode_tags;
    return preg_replace_callback('/\[(\[?)([^\] ]+)(?![\w-])[^\]]*\]?/', function($matches) use ($shortcode_tags) {
        $shortcode = $matches[2];
        if (!isset($shortcode_tags[$shortcode])) {
            return '';
        }
        return $matches[0];
    }, $content);
}
add_filter('the_content', 'wpcourse_remove_unused_shortcodes');

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

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

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

2. Shortcodes Ultimate — популярный набор шорткодов. Если вы переходите с этого плагина на другой, важно удалить старые шорткоды из контента, чтобы не было «мусора».

Рекомендации по поддержке чистоты шорткодов на сайте

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

  • Перед удалением плагинов, которые добавляют шорткоды, замените их на альтернативы или удалите шорткоды из контента.
  • Регулярно проверяйте контент на наличие нераспознанных шорткодов с помощью плагинов.
  • Используйте централизованный реестр шорткодов, если разрабатываете много кастомных решений.
  • Оптимизируйте вывод контента, например, применяя фильтр для удаления неиспользуемых шорткодов, как показано выше.

Заключение

Удаление неиспользуемых шорткодов — важная и полезная задача для поддержания чистоты и производительности WordPress-сайта. Используя описанные методы и инструменты, вы сможете проводить как ручную, так и автоматическую очистку, сохраняя удобство и стабильность сайта.

Как создать динамические таблицы в WordPress с помощью шорткода
15.03.2026
Как использовать хуки для оптимизации WordPress
14.01.2026
Как удалить генератор верстки WordPress без потери функциональности
29.12.2025
Как отключить возможность изменения адреса доставки в WooCommerce после оформления заказа
01.05.2026
Как использовать REST API для создания нестандартных запросов в WordPress
06.03.2026

Хотите научиться создавать сайты и зарабатывать на этом от 30 000 рублей в месяц?

Записаться на курс сейчас