Как правильно удалить версию WordPress
Удалять версию рекомендуется через фильтр wp_head. Для этого нужно добавить такой код в functions.php вашей темы:
remove_action('wp_head', 'wp_generator');
Проблема такого удаления в том, что информация о версии удаляется только с веб-страниц сайта. Если мы посмотрим исходный код фида по ссылке http://ваш_сайт/feed мы увидим там похожий метатаег:
http://wordpress.org/?v=3.3.1
Чтобы полностью удалить версию WP с веб-страницы и со страниц фидов, добавьте следующий код в файл темы functions.php:
// Полностью убираем версию WordPress
add_filter('the_generator', '__return_empty_string');
Заметка: также не забудьте удалить файл readme.html в корневом каталоге WordPress. Этот сайт легко можно открыть в браузере и в самом его начале указывается версия движка.
Удаление версий в ссылках стилей и скриптов
Кроме того, что WordPress добавляет метаттег generator, он также добавляет версию в конец ссылки на добавляемый css стиль или js скрипт, с том случае если версия скрипта или стиля не указана. В этом примере в конце можно увидеть версию WP.
Чтобы удалить версию из всех ссылок, на стили и скрипты, добавьте такой код в файл functions.php:
// Удаление параметра ver из добавляемых скриптов и стилей
function rem_wp_ver_css_js( $src ) {
if ( strpos( $src, 'ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'style_loader_src', 'rem_wp_ver_css_js', 9999 );
add_filter( 'script_loader_src', 'rem_wp_ver_css_js', 9999 );
Что можно удалить еще с wp_head
Хук-событие wp_head срабатывает внутри HTML блока. Сюда кроме метатега “generator” WordPress по умолчанию добавляем еще много чего. Чтобы узнать какая функцию отвечает за какую строку, вам нужно открыть файл wp-includes/default-filters.php и посмотреть все функции прикрепленные к событию wp_head.
В этом примере я в комментариях объясню какая функция за что отвечает:
// События // Позволяет плагинам добавлять скрипты во фронт-энд add_action( 'wp_head', 'wp_enqueue_scripts', 1 ); // Выводит ссылка на основные фиды add_action( 'wp_head', 'feed_links', 2 ); // Выводит ссылки на дополнительные фиды (фид категоирй) add_action( 'wp_head', 'feed_links_extra', 3 ); // Выводит ссылку на сервис RSD (Really Simple Discovery) add_action( 'wp_head', 'rsd_link' ); // Выводит ссылку на файл манифест программы Windows Live Writer add_action( 'wp_head', 'wlwmanifest_link' ); // Ссылки на соседние статьи ( add_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0 ); // Выводит ссылку на файл стилей (готовый метатег link) add_action( 'wp_head', 'locale_stylesheet' ); // Выводит noindx метатег, основываясь на настройках блога. // Если с настройках чтения установлена галочка "попросить поисковые системы не индексировать сайт", то будет выведет метатег noindex add_action( 'wp_head', 'noindex', 1 ); // Позволяет плагинам подключать css стили add_action( 'wp_head', 'wp_print_styles', 8 ); // Скрипты которые нужно выводить в html head части во фрон-энде add_action( 'wp_head', 'wp_print_head_scripts', 9 ); // Выводит версию движка add_action( 'wp_head', 'wp_generator' ); // Метатег rel=canonical для страниц записей add_action( 'wp_head', 'rel_canonical' ); // Выводит короткую ссылку на запись add_action( 'wp_head', 'wp_shortlink_wp_head', 10, 0 );
Чтобы удалить функцию вам нужно использовать функцию remove_filter() в которой указать фильтр и название функции которую нужно удалить. Например, удалить функцию feed_links:
remove_filter('wp_head', 'feed_links');