DNS-prefetch в WordPress: что это такое, как быстро удалить

dns-prefetch wordpress
👍 Научим бесплатно правильно создавать сайты на WordPress. Подробнее →

Подготовка WP-сайта к продвижению — кропотливый процесс, требующий внимания к деталям. Таким, например, как метатеги dns-prefetch в WordPress.

DNS-prefetch: что скрывается за этим понятием

Существует целый ряд метатегов, которые служат для ускорения загрузки страниц. Принцип их работы строится на том, чтобы успеть установить соединение с внешним сервисом или даже загрузить в кэш скрипты, стили и другие файлы до рендеринга сайта. Так осуществляется экономия времени, а показатель скорости загрузки страниц в таких сервисах, как Google Page Speed, повышается.

Эти метатеги, как и многие другие, можно обнаружить в секции head на фронденде веб-сайтов. Кроме dns-prefetch, к ним относятся такие rel-атрибуты метатега link, как preload, preconnect, prerender и другие.

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

Префетчинг — это предварительное соединение с внешним ресурсом, с которого в дальнейшем потребуется закачать какие-то стили, скрипты или другой контент для использования на сайте. Установка соединения заранее позволяет сэкономить какие-то доли секунд на загрузку страницы.

Как в html-коде WP обнаружить dns-prefetch

DNS-prefetch впервые был включен в ядро WP в версии 4.6.1. А из версии 6.1 эти метатеги исключили. Поэтому если вы по каким-то причинам не обновляли движок, и его версия относится к этому интервалу, то вы обнаружите ссылки с dns-prefetch в секции head.

Для этого перейдите на фронтенд своего ресурса и посмотрите его исходный код (Ctrl+U). Изучите секцию head, где вы обнаружите одну из следующих записей (или даже сразу две):

<link rel='dns-prefetch' href='fonts.googleapis.com' />

<link rel='dns-prefetch' href='s.w.org' />

dns-prefetch в коде сайта WP

Первая отвечает за подключение Google шрифтов, а вторая — за предварительную загрузку эмоджи и еще каких-то данных.

Какой эффект дает dns-prefetch на сайте?

Теоретически, размещение этих метатегов должно давать какой-то выигрыш по производительности. Но одновременно сам факт подключения лишнего кода в секции head эту же производительность снижает.

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

Когда все-таки стоит использовать dns-prefetch?

Если на вашем сайте на каких-то внутренних страницах с внешних ресурсов подгружаются тяжелые файлы, то вы можете использовать dns-prefetch для ускорения загрузки.

Для этого добавьте в секцию head метатег с указанием адреса внешнего сервиса. В ВордПресс есть специальный хук wp_resource_hints(), предназначенный для правильного подключения таких линков.

Вот как это будет работать. Пока посетители переходят по другим страницам, директива dns-prefetch установит ДНС соединение с удаленным доменом. Когда пользователь зайдет на целевую страницу, его браузеру не потребуется затрачивать время на соединение с внешним сервисом. Таким образом, на несколько миллисекунд сократится время загрузки страницы.

Какие браузеры поддерживают dns-prefetch?

Согласно сервису Caniuse, этот метатег полностью или частично поддерживают почти все современные браузеры, кроме приложения Opera Mini. По этой причине разработчики часто отдают ему предпочтение перед аналогичными тегами, например, prefetch или prerender.

Стоит ли оставлять линки dns-prefetch

Предпочтительно, чтобы стили, скрипты и другие ресурсы размещались локально на выделенном сервере или обычном хостинге. В этом случае решается сразу несколько проблем:

  • Уменьшается зависимость от внешних ресурсов. Популярные сервисы могут из-за высокой нагрузки работать медленно. А еще в один прекрасный день они могут и вовсе прекратить поддержку.
  • Загрузка ресурсов с удаленных источников плохо влияет на производительность. А это, в свою очередь, ухудшает позиции сайта в поисковых системах, потому что поисковики отдают предпочтение быстрым сайтам.

Кроме того, в секции head WordPress по умолчанию содержится много лишнего кода.

Этот код нужно убирать не только из соображений поисковой оптимизации, но и ради безопасности. Он выдает хакерам информацию о том, что мы используем движок ВордПресс и функционал у нас установлен. Все перечисленное упрощает для них задачу найти уязвимость и взломать сайт.

Поэтому лучше все-таки избавляться от внешних загрузок. А, следовательно, и от метатегов dns-prefetch, находящихся в секции head.

Как удалить DNS-Prefetch в WordPress

Способ 1. Многофункциональный плагин Clearfy Pro от WPShop

Модуль Clearfy PRO
Clearfy Pro — коммерческий модуль от русской команды WPShop помогает справляться с наиболее распространенными проблемами ядра WordPress. Для удаления линка dns-prefetch выполните следующие действия:
  1. Приобретите лицензию на официальном сайте разработчика и установите плагин.
  2. После активации зайдите в раздел «Код». Отыщите настройку отключения dns-prefetch и включите ее.

Отключить dns-prefetch в Clearfy Pro

  1. Прокрутите страницу вниз и нажмите кнопку сохранения настроек.
  2. Перейдите на сайт и проверьте исходный код. Метатеги должны исчезнуть.

Кроме отключения dns-prefetch, с помощью этого плагина вы можете задействовать дополнительные опции, чтобы избавиться от ненужного функционала.

Для этого на той же странице настроек включите следующие пункты:

  • Удаление JSON REST API. Позволит увеличить скорость загрузки страниц за счет отказа от тяжелого скрипта, по умолчанию подгружаемого в head.

Отключить JSON

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

Отключить Emoji

  • Удаление ссылки на jquery-migrate.min.js. Этот файл обеспечивает совместимость со старыми версиями библиотеки jQuery. Он нужен, если вы используете шаблон или плагин, поддержка которых прекратилась несколько лет назад. В ином случае это просто лишний код, который замедляет загрузку страниц.

Удаление Migrate из кода WP

Рекомендую также с помощью плагина удалить стили блока последних комментариев, ссылки RDS, WLWmanifest и весь остальной ненужный «мусорный» код.

На этом возможности модуля Cleafy Pro не заканчиваются. Он также включает множество инструментов для улучшения SEO ресурса и повышения его безопасности. В частности, плагин справляется со всеми проблемами WordPress, связанными с дублированием контента, а также устраняет известные уязвимости ядра.

Скидка на Clearfy Pro

Способ 2. Бесплатные плагины

Существует также множество свободно распространяемых плагинов, которые можно найти в репозитории WordPress. Все они предлагают разный набор полезных опций для удаления лишнего кода. Но у них есть серьезный недостаток: эти модули, как правило, живут недолго.

Например, такой популярный плагин для отключения префетчинга на WordPress, как Remove DNS Prefetch, уже давно не поддерживается.

Unbloater: чистка бэкенда и фронтенда

Unbloater для чистки кода

Плагин Unbloater предлагает инструменты для очистки ядра WordPress от мусорного кода. С его помощью вы можете избавиться от подключений ненужного функционала как на фронтенде, так и в админ-панели.

Модуль позволяет удалить ссылки dns-prefetch для sworg, jquery-migrate, WLW, RSD и др.

WP Hide & Security Enhancer: удаление лишнего кода и усиление безопасности

WP Hide & Security Enhancer удаляет DNS-prefetch

Модуль WP Hide & Security Enhancer предоставляет крутые возможности для сокрытия на фронтенде «следов» WordPress. Информация о том, что сайт построен на CMS WordPress помогает хакерам находить уязвимости и взламывать сайты.

Среди настроек плагина вы также найдете удаление ссылок dns-prefetch.

Disable Emojis (GDPR friendly): удаление всего лишнего, что связано с эмоджи

Disable Emojis убирает лишний код

Модуль Disable Emojis убирает весь функционал эмоджи из движка WordPress, в том числе dns-prefetch загрузку.

Разработчик постарался сделать все возможное в этом направлении, чтобы привести ресурсы WordPress в соответствие с требованиями GDPR. Эти требования касаются не только использования cookie-файлов, но и другого функционала, влияющего на сохранность персональных данных пользователей.

Подключение к внешним сервисам также является угрозой нарушения конфиденциальности.

WordPress Bootscraper: чистота кода и внешнего интерфейса

Модуль WordPress Bootscraper

WordPress Bootscraper чистит код ядра и удаляет лишние ссылки из секции head на фронтенде сайта.

Кроме удаления ссылок dns-prefetch плагин избавит ваш ресурс от ссылок REST API, wp-embed.min.js, wlwmanifest.xml, а также скроет версию WP.

Head Trimmer: простое решение для улучшения безопасности

Улучшит безопасность Head Trimmer

Аналогично предыдущему решению, модуль Head Trimmer убирает из секции head информацию, которая может использоваться хакерами для взлома. Также он чистит код от лишних подключений, замедляющих загрузку.

Помимо двух ссылок dns-prefetch (sworg и Google Fonts) плагин удаляет функционал REST API, версию WP, канонические урлы, классические и глобальные стили, RSS-feed, RSD-link, поддержку эмодзи и др.

WP Clean: удаление виджетов и лишних ссылок из head

Модуль WP Clean

WP Clean содержит массу настроек, позволяющих удалять ненужный код, по умолчанию включенный в ядро WordPress.

Кроме устранения лишних ссылок из секции head, таких как dns-prefetch, плагин позволяет отключить неиспользуемые стандартные виджеты, почистить панель администратора от лишней информации и многое другое.

Способ 3. Удаление dns-prefetch с помощью php-кода

Убрать метатег dns-prefetch можно также программным способом. Для этого поместите следующий код в файл functions.php:

remove_action( 'wp_head', 'wp_resource_hints', 2 );

В этом обзоре я рассмотрел все доступные способы избавления от dns-prefetch WordPress. Рекомендую использовать плагин Clearfy Pro. Он позволит не только удалить этот функционал, но и комплексно почистить код ядра, а также улучшить безопасность сайта и его SEO показатели.

Лицензия на Clearfy Pro

Создай свой первый сайт на WordPress

Александр

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

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