О web-разработке
и даже немного больше...

Как убрать лишнее в wp_head?

Если вам приходилось копаться в шаблонах wordpress, то вероятно вы сталкивались с этой функцией. Функция подключает всякое разное, приходящее из плагинов и т.д. в заголовок страницы, а именно между тегами head. А как мы знаем, внутри тега head может подключаться файлы CSS, JavaScript, а так же другие компоненты страницы. Поэтому убрать вызов функции wp_head мы не можем, потому что мы тем самым лишаем возможности подключать плагинам стили, скрипты, и т.д. к заголовкам страниц сайта. В wordpress, начиная с версии 2.5, появляются новые стандартные записи, которые по умолчанию вкрапляются в заголовки тем посредством wp_head, в файле header.php вашей темы.

По умолчанию, в заголовок страницы частенько попадают и такие вещи, которые могут быть нам и не очень там нужны.
К примеру, запись такого вида:

<link rel="pingback" href="https://href.kz/blog/xmlrpc.php" />

Рассмотрим примерный список
feed_links_extra — Ссылки на дополнительные RSS ленты, такие как рубрики, записей, теги и т.д.
feed_links — Ссылки на общие каналы: Публикации записей, комментариев, лента новостей.
rsd_link — Ссылка для блог-клиентов, редактирование публикация и прочее.
wlwmanifest_link — Ссылка используемая блог-клиентом Windows Live Writer.
index_rel_link — Ссылка, ведущая на главную страницу.
start_post_rel_link — Ссылка, ведущая на первый пост.
adjacent_posts_rel_link — Ссылка, ведущая на предыдущий и следующий пост.
parent_post_rel_link — Ссылка на родительскую страницу.

adjacent_posts_rel_link – Ссылка на посты, примыкающих к текущей записи.
wp_generator – Версия движка, на которой сгенерирована данная страница.

Поняв примерно, что это за ссылки, и решив, нужны ли они нам в заголовке страницы или нет, давайте теперь посмотрим, как убрать лишнее в wp_head. Если вы решили не афишировать данные вещи в заголовках своих страниц, то вы можете с легкостью отключить их с помощью функции remove_action.

Синтаксис функции:

remove_action($tag, $function_to_add, $priority);

$tag (тип string, обязательное, по ум. пустое значение) — Имя хука, из которой мы хотим удалить функцию. В нашем случае это «wp_head».
$function_to_add (тип callable, обязательное, по ум. пустое значение) — Имя функции которую следует удалить.
$priority (тип int, не обязательный параметр, по ум. == 10) — Приоритет функции, как он был определен изначально.

В качестве результата функция возвращает булево значение, true либо false. Теперь к практике.
Откройте файл function.php, он находится там же где и ваша тема. В нем попробуем прописать код, указанный ниже.

Убираем лишнее в wp_head:

remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'rsd_link' );
remove_action( 'wp_head', 'wlwmanifest_link' );
remove_action( 'wp_head', 'index_rel_link' );
remove_action( 'wp_head', 'parent_post_rel_link', 10, 0 );
remove_action( 'wp_head', 'start_post_rel_link', 10, 0 );
remove_action( 'wp_head', 'adjacent_posts_rel_link', 10, 0 );
remove_action( 'wp_head', 'wp_generator' );

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

Опубликован: 23.09.2016 г.

См. также:

Убираем URL из формы комментариев WordPress
Работа с базой данных в WordPress
SQL-запросы для смены домена в WordPress
Мультиязычность с помощью плагина Polylang
Как создать свои шорткоды в WordPress
Как добавить виджет на сайт WordPress?
Добавление записей в WordPress средствами PHP
Как отключить архивы по авторам в WP?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта