Шорткоды — удобный способ расширить функциональность сайта на WordPress без глубоких знаний программирования. Но со временем на сайте накапливается множество шорткодов, которые перестали использоваться или устарели. Они могут замедлять загрузку страниц или вызывать ошибки. В этой статье подробно рассмотрим, как найти и автоматически удалять неиспользуемые шорткоды, чтобы поддерживать чистоту кода и скорость сайта.
Почему важно удалять неиспользуемые шорткоды в WordPress
Шорткоды — это маленькие кусочки кода, которые выполняют определённые функции, например, вывод слайдера, формы или галереи. Если шорткод остался в базе данных, но больше не определён в коде — WordPress покажет его как текст, что выглядит некрасиво и снижает качество сайта.
Кроме того, неиспользуемые шорткоды создают дополнительную нагрузку при парсинге контента и усложняют поддержку сайта. Это особенно актуально для крупных проектов с большим количеством контента и плагинов.
Удаление таких шорткодов помогает:
- Избавиться от лишнего мусора в базе данных и контенте.
- Избежать ошибок и некорректного отображения на страницах.
- Упростить сопровождение и развитие сайта.
Как найти неиспользуемые шорткоды: ручной и автоматический методы
Ручной поиск через базу данных
Самый простой способ — поискать в базе данных все записи, в которых встречаются шорткоды. Для этого можно использовать SQL-запрос:
SELECT ID, post_content FROM wp_posts WHERE post_content LIKE '%[название_шорткода]%';Так вы увидите, где именно используются определённые шорткоды. Если плагин или тема с этим шорткодом удалены или неактивны, имеет смысл очистить эти записи.
Автоматический поиск с помощью плагинов
Плагины, такие как Clearfy Pro, помогают управлять шорткодами, выявлять неиспользуемые и очищать код без риска. Они сканируют весь контент и показывают список устаревших элементов.
Другой вариант — использовать WPRemark для автоматического анализа комментариев и контента, выявляя ошибки в шорткодах.
Пример кода для автоматического удаления неиспользуемых шорткодов
Можно написать функцию, которая будет проверять записи на наличие неактивных шорткодов и удалять их. Ниже пример простой функции, которая удаляет шорткод [oldshortcode] из всех постов:
function wpreboot_remove_oldshortcode_from_posts() {
// Получаем все посты с шорткодом
$args = [
'post_type' => 'any',
'posts_per_page' => -1,
's' => '[oldshortcode]',
'post_status' => 'publish',
];
$query = new WP_Query($args);
while ($query->have_posts()) {
$query->the_post();
$content = get_the_content();
$new_content = str_replace('[oldshortcode]', '', $content);
if ($content !== $new_content) {
// Обновляем запись без шорткода
wp_update_post([
'ID' => get_the_ID(),
'post_content' => $new_content
]);
}
}
wp_reset_postdata();
}
// Запуск функции один раз, например, через админскую страницу или WP-CLI
// wpreboot_remove_oldshortcode_from_posts();Этот код ищет все публикации с шорткодом [oldshortcode] и удаляет его из контента. В реальном проекте стоит добавить безопасность и отчёты о проделанной работе.
Как предотвратить появление неиспользуемых шорткодов в будущем
Используйте централизованное управление шорткодами
Если вы активно работаете с большим количеством шорткодов, создайте отдельный файл или плагин для их регистрации. Так вы сможете быстро отключать или менять шорткоды, не оставляя «мертвых» ссылок в базе.
Удаляйте шорткоды вместе с плагинами
Перед удалением плагина, который добавляет шорткод, убедитесь, что в контенте сайта он не используется. Если используется, замените или удалите их, чтобы избежать отображения кода как текста.
Автоматизируйте очистку с помощью WP-Cron
Можно настроить периодическую проверку контента и автоматическую очистку неиспользуемых шорткодов с помощью WP-Cron. Это позволит поддерживать сайт в чистоте без регулярного ручного вмешательства.
Заключение
Удаление неиспользуемых шорткодов — важная часть технического обслуживания WordPress-сайтов. Используя сочетание ручных методов, плагинов и собственного кода, вы сможете поддерживать сайт быстрым, чистым и без ошибок отображения. Для удобства рекомендуем обратить внимание на плагин Clearfy Pro, который существенно упрощает эту задачу и помогает управлять шорткодами на профессиональном уровне.