wpcalc.ru wordpress WPCalc

Как отключить эмодзи в WordPress и ускорить загрузку сайта

Если на сайте WordPress не нужны встроенные эмодзи, их можно отключить без риска для контента. Это убирает один лишний скрипт и несколько служебных подключений из страницы, а значит немного сокращает количество запросов и объём HTML. Выигрыш обычно небольшой, но для сайта, где уже вычищают всё лишнее, это нормальная и безопасная оптимизация.

Сразу скажу главное: отключение эмодзи не ломает обычный текст, комментарии и редактор. WordPress просто перестаёт подгружать свой скрипт для старых браузеров и перестаёт вставлять связанные с ним стили и DNS-prefetch. Если на сайте не используется специальная логика вокруг эмодзи, это можно убрать.

Что именно отключается и зачем это делать

По умолчанию WordPress добавляет поддержку эмодзи через небольшой JavaScript и несколько служебных элементов в <head>. Исторически это было нужно для браузеров, которые не умели корректно отображать некоторые символы Unicode. Сейчас на большинстве сайтов эта поддержка не даёт практической пользы, но всё равно создаёт лишнюю загрузку.

Отключение эмодзи полезно, если вы хотите:

  • уменьшить число запросов на странице;
  • убрать ненужный JavaScript;
  • сократить объём служебного кода в <head>;
  • сделать сайт чуть чище с точки зрения фронтенда.

Важно понимать масштаб эффекта: это не способ резко ускорить сайт. Обычно речь идёт о небольшой оптимизации, которая имеет смысл в комплексе с другими мерами — кешированием, оптимизацией изображений и сокращением сторонних скриптов.

Как отключить эмодзи безопасно

Самый надёжный способ — добавить небольшой код в тему или в плагин для сниппетов. Если вы редактируете functions.php, сначала сделайте резервную копию файла или работайте через дочернюю тему. Ошибка в PHP-коде может временно сломать сайт.

Добавьте этот код в functions.php дочерней темы или в собственный мини-плагин:

remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'emoji_svg_url', '__return_false' );

Этот набор отключает вывод скрипта и стилей для фронтенда и админки, а также убирает обработку эмодзи в RSS и письмах. Последняя строка нужна, чтобы WordPress не пытался подставлять SVG-ресурс для эмодзи.

Если вы не хотите править тему, удобнее использовать плагин для сниппетов. Логика та же: код остаётся тем же, но его проще включать и отключать без риска затереть изменения при обновлении темы.

Что проверить после отключения

После сохранения кода откройте главную страницу сайта и посмотрите исходный код страницы. В браузере это можно сделать через просмотр исходника или инструменты разработчика. В <head> больше не должно быть скрипта wp-emoji-release.min.js и связанных с ним стилей.

Если хотите проверить точнее, найдите в исходнике такие признаки:

  • отсутствие подключения wp-emoji-release.min.js;
  • отсутствие inline-скрипта с проверкой поддержки эмодзи;
  • отсутствие стилей, связанных с emoji;
  • отсутствие лишних dns-prefetch для доменов, связанных с emoji.

Ещё один практический способ — сравнить количество запросов до и после через DevTools или сервисы анализа страницы. Разница будет небольшой, но она должна быть видна именно в служебных ресурсах WordPress.

Когда лучше не отключать эмодзи кодом

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

Также не стоит вносить код прямо на рабочем сайте, если у вас нет доступа к резервной копии и вы не уверены, где именно редактируется тема. Для таких случаев безопаснее использовать staging-окружение или плагин для пользовательских фрагментов кода.

Если сайт обслуживается через CDN или агрессивный кеш, после изменения кода очистите кеш WordPress, кеш плагина, серверный кеш и кеш CDN, если он есть. Иначе вы можете проверить старую версию страницы и решить, что отключение не сработало.

Можно ли отключить эмодзи без кода

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

Например, в наборах для оптимизации сайта часто есть отдельный переключатель для отключения emoji. Если вы и так используете подобный плагин, логичнее включить опцию там, чем дублировать ту же логику кодом в теме. Но если такого инструмента нет, ручной сниппет остаётся самым прозрачным вариантом.

Что в итоге даёт это изменение

Отключение эмодзи в WordPress — это аккуратная микрооптимизация. Она не заменяет кеширование и не исправляет тяжёлую тему, но помогает убрать один ненужный фронтенд-скрипт и немного разгрузить страницу. Для сайта, который уже оптимизируют по мелочам, это разумный шаг.

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

×
Halloween Game

Сыграй в игру, спаси сайт! Забери приз

Играть