Как отключить Emoji в WordPress, чтобы ускорить сайт

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

Ниже разберём, как отключить Emoji аккуратно: без правки ядра, с проверкой результата и с учётом того, где это действительно безопасно.

Когда отключение Emoji имеет смысл

Сценарий простой: сайт не использует старую логику преобразования символов в Emoji, а аудит производительности показывает лишние подключения wp-emoji-release.min.js и связанных стилей. Это особенно заметно на проектах, где важна чистота фронтенда: лендинги, корпоративные сайты, блоги с минимальным набором скриптов.

Отключение не влияет на возможность вставлять Emoji как символы в текст. Оно убирает именно штатную проверку совместимости и подгрузку вспомогательных файлов WordPress.

Диагностика: что именно грузится сейчас

Перед изменениями проверьте, есть ли на странице ресурсы Emoji. Проще всего открыть исходный код страницы или вкладку Network в DevTools и найти:

  • wp-emoji-release.min.js;
  • стили, связанные с Emoji;
  • лишние inline-скрипты, которые WordPress добавляет для этой функции.

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

Пошаговое решение без плагинов

Самый надёжный способ — убрать стандартные действия WordPress через хук init. Код можно добавить в functions.php дочерней темы или в собственный небольшой mu-plugin.

<?php
add_action( 'init', function () {
    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' );
} );

Этот вариант убирает Emoji и на фронтенде, и в админке. Если вам нужно отключить только публичную часть сайта, а в панели оставить стандартное поведение, удалите только фронтенд-часть:

<?php
add_action( 'init', function () {
    remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
    remove_action( 'wp_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' );
} );

Если нужен вариант через плагин

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

ПодходПлюсыМинусы
Код в теме или mu-pluginТочно понятно, что отключено; минимум лишнегоНужно один раз внести правку
Плагин оптимизацииУдобно для неразработчикаЛегко включить лишние функции и получить конфликт
Ничего не делатьНулевой риск измененийСохраняется лишняя нагрузка

Как проверить, что решение сработало

После внедрения откройте главную страницу и любую внутреннюю страницу в режиме инкогнито и проверьте исходный код. В нём не должно быть:

  • wp-emoji-release.min.js;
  • emoji detection script в <head>;
  • стилей Emoji в подключённых CSS.

Дополнительно проверьте админку, если вы отключали Emoji и там тоже. В DevTools можно сравнить список запросов до и после изменения. Если всё сделано правильно, количество лишних ресурсов уменьшится, а функциональность редактора и комментариев останется рабочей.

Частые ошибки и как их исправить

Код добавили не туда

Если вставить фрагмент в активную тему, а потом сменить её, отключение пропадёт. Для постоянной технической настройки лучше использовать дочернюю тему или mu-plugin.

Удалили не те хуки

Иногда пытаются отключить Emoji через случайные фильтры из интернета. Если хук не существует в ядре или относится к другой версии WordPress, эффекта не будет. В рабочем варианте выше используются стандартные функции ядра: print_emoji_detection_script, print_emoji_styles, wp_staticize_emoji.

Сломали письма или RSS

Если убрать только фронтенд-часть, а фильтры для писем и RSS оставить, Emoji могут продолжить преобразовываться в письмах и лентах. Это не критично, но поведение будет неполным. Если цель — полное отключение, убирайте все связанные фильтры.

Проверяли только кэшированную страницу

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

Безопасность и производительность: что учесть

Само отключение Emoji — безопасная операция, если вы не правите ядро и не трогаете чужие плагины. Но есть практическое правило: любые оптимизации делайте по одной и проверяйте результат. Так проще понять, что именно повлияло на страницу.

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

Если задача шире и вы чистите сайт от лишних подключений, дублей и технического мусора, имеет смысл смотреть не только на Emoji, но и на другие штатные функции, которые реально не используются на проекте. В таких сценариях полезны инструменты класса Clearfy Pro, но только если вы понимаете, какие опции включаете и зачем: https://wpshop.ru/plugins/clearfy?utm_source=wpboot.ru&utm_medium=article&utm_campaign=kak-otklyuchit-emojii-v-wordpress-chtoby-uskorit-sajt

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

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как добавить переадресацию в WordPress без плагинов
26.01.2026
Как отключить AJAX-загрузку в Gutenberg блоках WordPress
02.04.2026
Как закрыть от индексации страницы поиска WordPress с параметром s
06.09.2026
Как добавить собственные свойства в meta-теги WordPress
10.11.2025
Как создать свой плагин WordPress с настройками
06.11.2025
×
Прокачай свой сайт WordPress!

WordPress

-20% на премиум темы и плагины

Создай сайт своей мечты ⋙