Как отключить emoji в WordPress и убрать лишние загрузки

В WordPress поддержка emoji включена по умолчанию, и на части сайтов это превращается в лишние подключения к wp-emoji-release.min.js, дополнительные фильтры в <head> и ненужную работу на фронтенде. Если сайт не использует старые браузеры и вам не нужна эта совместимость, emoji можно отключить аккуратно — без влияния на обычный текст, редактор и комментарии.

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

Когда отключение emoji действительно имеет смысл

Сценарий простой: вы открываете страницу в DevTools и видите отдельный запрос к скрипту emoji, а в исходнике страницы — инлайн-скрипт, который подготавливает проверку поддержки emoji в браузере. На современных проектах это редко даёт большой выигрыш само по себе, но в сумме с другими мелкими оптимизациями помогает убрать лишний код из фронтенда.

Отключать emoji имеет смысл, если:

  • сайт рассчитан на современные браузеры;
  • вам важна минимизация лишних запросов и инлайн-кода;
  • вы уже чистите <head> от ненужных элементов;
  • на сайте нет требований к старым клиентам, где emoji могли отображаться некорректно без полифилла.

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

Диагностика: что именно добавляет WordPress

Проверка начинается не с кода, а с факта загрузки. Откройте главную страницу и посмотрите:

  • исходный HTML в браузере;
  • вкладку Network в DevTools;
  • наличие запроса к wp-emoji-release.min.js;
  • инлайн-блок с функцией, которая подменяет emoji-рендеринг.

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

Как быстро понять, что emoji ещё активны

Самый практичный способ — поиск по исходнику страницы. Если в HTML есть упоминание wp-emoji-release.min.js или emoji в блоке скриптов WordPress, значит, стандартная поддержка ещё подключается. Дополнительно можно посмотреть, не добавляет ли её тема или плагин повторно через собственные хуки.

Рабочий способ: отключить emoji через functions.php или mu-plugin

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

<?php
/**
 * Plugin Name: Disable WP Emoji
 */

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 в <head>;
  • стили emoji в админке и на сайте;
  • замену emoji в RSS и письмах.

Если вы вставляете код в functions.php, убедитесь, что тема дочерняя. Иначе при обновлении изменения пропадут.

Если нужен только фронтенд, а админку трогать не хочется

Иногда удобнее оставить 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Отключает стандартные emoji-хуки WordPressПрозрачно, без лишних зависимостей, легко проверитьНужно один раз аккуратно внедрить
functions.phpТо же самое, но в темеБыстроСлетает при смене темы или обновлении
Оптимизатор/плагин чисткиМожет убирать emoji вместе с другими мелкими оптимизациямиУдобно, если уже используете такой плагинНе всегда очевидно, что именно отключено

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

Проверка результата после внедрения

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

  1. Откройте страницу в режиме инкогнито.
  2. Посмотрите исходный код и найдите wp-emoji-release.min.js.
  3. Проверьте вкладку Network — запроса к этому файлу быть не должно.
  4. Откройте админку и убедитесь, что редактор и комментарии работают штатно.
  5. Если есть RSS-лента или email-уведомления, проверьте, что emoji в них не ломаются.

Если после внедрения скрипт всё ещё грузится, значит, его добавляет не ядро WordPress, а тема или плагин. Тогда ищите прямой вызов wp_enqueue_script или инлайн-код в шаблонах.

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

Код вставили слишком поздно

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

Отключили только скрипт, но оставили стили

Иногда убирают print_emoji_detection_script, но забывают про print_emoji_styles. В результате часть лишнего кода остаётся в <head>. Проверяйте оба места.

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

Если вы удалили фильтры неаккуратно, emoji могут начать отображаться как символы-заменители в лентах и уведомлениях. Для этого и нужны фильтры the_content_feed, comment_text_rss и wp_mail в примере выше — их лучше снимать вместе со скриптом.

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

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

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

Отключение emoji — это не «ускоритель в один клик», а маленькая техническая чистка. Смысл есть только в комплексе с другими точечными правками: удалением лишних скриптов, оптимизацией <head>, контролем автозагрузки и кэшем.

Если вы делаете это на клиентском проекте, храните изменения в mu-plugin или в отдельном небольшом плагине. Так проще:

  • переносить настройку между темами;
  • отслеживать изменения в Git;
  • не терять правку при обновлении шаблона.

И ещё один практический момент: не отключайте всё подряд «для скорости». Сначала проверьте, что именно реально грузится на странице, и только потом убирайте лишнее. В WordPress мелкие оптимизации работают лучше, когда они адресные.

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

Что должно получиться в итоге

После отключения emoji на фронтенде вы должны увидеть:

  • отсутствие запроса к wp-emoji-release.min.js;
  • исчезновение emoji-скрипта из <head>;
  • отсутствие лишних стилей emoji;
  • корректную работу контента, комментариев и админки.

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

Как настроить редиректы 301 в WordPress без плагинов
15.10.2026
Как удалить лишние метатеги и служебный код из WordPress
20.10.2026
Как найти и удалить битые ссылки в WordPress
11.10.2026
Как настроить отправку писем через SMTP в WordPress без плагинов
01.10.2026
Как создать и использовать собственные виджеты в WordPress
26.08.2026

На оформлении, скоро здесь появится полноценный ресурс