В WordPress по умолчанию в <head> каждой страницы выводится мета-тег <meta name="generator" content="WordPress X.X.X" />, который сообщает о версии движка. Для многих разработчиков и владельцев сайтов это нежелательно, так как раскрывает информацию, потенциально полезную для хакеров и автоматизированных сканеров уязвимостей. В этой статье подробно разберём, как убрать этот мета-тег без использования сторонних плагинов, сохраняя при этом чистоту и безопасность кода.
Почему важно удалить meta generator в WordPress
Мета-тег generator, несмотря на свою кажущуюся безобидность, может стать источником проблем:
- Раскрытие версии WordPress: Указывает, какую именно версию движка вы используете, что облегчает подбор эксплойтов.
- Повышение риска атак: Автоматические боты могут целенаправленно искать сайты с уязвимыми версиями.
- Понижение уровня безопасности: Даже если вы своевременно обновляете сайт, лучше не давать лишней информации посторонним.
Удаление этого тега — простой и эффективный способ повысить безопасность без лишних затрат.
Как WordPress добавляет meta generator и где это отключить
WordPress добавляет мета-тег с помощью функции wp_generator(), которая привязана к хуку wp_head. По умолчанию она выводится в <head> темы, если не отключена.
Для удаления мета-тега нам нужно просто отключить этот хук. Это можно сделать, добавив следующий код в файл functions.php вашей активной темы или в кастомный плагин:
function wptests_remove_meta_generator() {
remove_action('wp_head', 'wp_generator');
}
add_action('init', 'wptests_remove_meta_generator');Данный код при инициализации WordPress удалит действие, отвечающее за вывод мета тега.
Пояснения к коду
Функция remove_action отменяет привязку функции wp_generator к хуку wp_head. Хук init — одно из первых событий, на котором безопасно можно менять привязки.
Проверка результата и дополнительные меры
После добавления кода очистите кэш браузера и кэш сайта (если используется). Затем откройте исходный код страницы и найдите тег <meta name="generator">. Он должен отсутствовать.
Если тег всё ещё появляется, возможно, тема или плагин добавляют его повторно или с помощью собственного кода. В этом случае:
- Проверьте, нет ли в теме вызова
wp_generator()напрямую. - Отключите плагины по очереди, чтобы выявить источник.
Удаление meta generator из RSS-лент
WordPress также добавляет мета-тег генератора в RSS-ленты. Чтобы убрать его, добавьте следующий код в functions.php:
function wptests_remove_generator_rss() {
return '';
}
add_filter('the_generator', 'wptests_remove_generator_rss');Этот фильтр заменяет содержимое тега генератора на пустую строку, что полностью убирает информацию о версии из RSS.
Использование WPGPT для автоматизации проверки безопасности
Если вы используете продукт WPGPT, можно с его помощью автоматизировать проверку наличия мета-тегов и других уязвимостей на сайте. Это поможет быстро выявлять подобные проблемы и своевременно их устранять.
Пример кода для комплексной безопасности
Для комплексного удаления лишних мета-тегов и повышения безопасности можно использовать следующий набор функций:
// Удаление meta generator из head
function wptests_remove_meta_generator() {
remove_action('wp_head', 'wp_generator');
}
add_action('init', 'wptests_remove_meta_generator');
// Удаление meta generator из RSS
function wptests_remove_generator_rss() {
return '';
}
add_filter('the_generator', 'wptests_remove_generator_rss');
// Удаление других небезопасных ссылок
function wptests_cleanup_head() {
remove_action('wp_head', 'wlwmanifest_link'); // Удаляет ссылку Windows Live Writer
remove_action('wp_head', 'rsd_link'); // Удаляет ссылку Really Simple Discovery
}
add_action('init', 'wptests_cleanup_head');Этот код можно разместить в functions.php или в отдельном небольшом плагине. Он обеспечит базовую чистоту <head> и повысит безопасность сайта.
Выводы и рекомендации
Удаление meta generator — это одна из простейших, но эффективных мер безопасности WordPress. Используя приведённые в статье методы, вы сможете легко избавиться от ненужной информации в коде сайта без плагинов.
Если вы хотите автоматизировать работу с безопасностью и оптимизацией, рекомендуем обратить внимание на Clearfy Pro — плагин с расширенными функциями по очистке и оптимизации WordPress.