Как отключить Emojis в WordPress через код и плагин

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

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

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

Не стоит отключать всё подряд только ради «оптимизации». Сначала проверьте, есть ли у вас реальная причина. Обычно Emojis убирают, если:

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

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

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

По умолчанию WordPress подключает Emoji-скрипт в wp_head и wp_print_styles, а также добавляет обработку в админке и в редакторе. На практике это выглядит как отдельный JavaScript-файл и связанные с ним фильтры. Проверить наличие можно в исходном коде страницы или через DevTools.

Что искать в HTML

Откройте фронтенд сайта и посмотрите исходник страницы. Обычно вас интересуют такие признаки:

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

Если этих элементов нет, значит тема или плагин уже отключили поддержку. Тогда повторно вмешиваться не нужно.

Способ через код: убрать Emojis через functions.php или mu-plugin

Самый предсказуемый вариант — отключить Emoji-функции через remove_action и фильтры. Лучше не править ядро и не вносить изменения в родительскую тему, если у вас есть дочерняя тема или отдельный mu-plugin.

Ниже рабочий пример, который можно положить в functions.php дочерней темы или в отдельный файл в wp-content/mu-plugins/.

<?php
/**
 * Disable WordPress emojis.
 */
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' );
    remove_filter( 'the_content', 'wp_staticize_emoji' );
    remove_filter( 'comment_text', 'wp_staticize_emoji' );
} );

Этот код убирает Emoji-обработку и на фронтенде, и в админке. Если вам нужно оставить поддержку в редакторе, но убрать только фронтенд, можно ограничиться удалением действий из wp_head и wp_print_styles.

Если нужно отключить только на сайте, но оставить в админке

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

<?php
add_action( 'init', function () {
    remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
    remove_action( 'wp_print_styles', 'print_emoji_styles' );
} );

Это безопаснее для админки и не мешает редактированию контента. Но если у вас есть кастомные экраны в админке, всё равно проверьте их вручную.

Способ через плагин: когда код трогать не хочется

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

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

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

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

  1. Проверьте, подключается ли Emoji-скрипт на фронтенде и в админке.
  2. Определите, нужно ли отключать его везде или только на публичной части сайта.
  3. Добавьте код в дочернюю тему или mu-plugin.
  4. Очистите кэш страницы, объектный кэш и CDN, если они используются.
  5. Откройте страницу в режиме инкогнито и проверьте исходный код.
  6. Зайдите в редактор записей и убедитесь, что интерфейс не сломался.

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

Проверка должна быть не на глаз, а по факту. Смотрите на три вещи:

  • в исходнике страницы больше нет wp-emoji-release.min.js;
  • в <head> не выводятся emoji-стили;
  • в админке и редакторе не появилось ошибок JavaScript.

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

Для более технической проверки можно использовать curl и поиск по ответу сервера:

curl -s https://example.com/ | grep -i emoji

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

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

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

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

Отключили слишком много

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

Проверили без очистки кэша

Это самая частая причина ложного вывода «не работает». Если у вас есть page cache, object cache, серверный кэш или CDN, старый HTML может продолжать отдаваться ещё некоторое время. После внедрения чистите все уровни кэша, иначе вы будете смотреть на старую версию страницы.

Смешали несколько плагинов оптимизации

Когда один плагин отключает Emojis, второй — тоже, а третий ещё и переписывает <head>, становится сложно понять, кто за что отвечает. В итоге при обновлении одного из плагинов поведение сайта меняется непредсказуемо. Лучше держать одну точку контроля для таких настроек.

Что ещё стоит проверить рядом с отключением Emojis

Если вы уже занимаетесь чисткой WordPress, имеет смысл посмотреть на соседние источники лишней нагрузки: wp-embed, XML-RPC, лишние стили плагинов, неиспользуемые иконки и дубли в <head>. Но не делайте это вслепую: сначала измерение, потом удаление.

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

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

Как закрыть от индексации страницы по параметрам в WordPress
16.09.2026
Как отключить Emojis в WordPress через код и плагин
19.09.2026
Как закрыть дубли страниц от пагинации в WordPress через robots.txt и noindex
13.09.2026
×
Прокачай свой сайт WordPress!

WordPress

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

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