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

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

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

Когда это вообще имеет смысл

Отключать emoji стоит не ради абстрактной «оптимизации», а если вы видите в исходнике страницы лишние подключения wp-emoji-release.min.js и связанные с ним inline-скрипты. Обычно это имеет смысл, когда:

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

При этом это не «ускоритель в один клик». Эффект обычно небольшой, и его стоит рассматривать как часть общей чистки сайта, а не как отдельное чудо-решение.

Диагностика проблемы: где искать emoji-скрипты

Сначала проверьте исходный код страницы. Откройте любую публичную страницу сайта и найдите:

  • wp-emoji-release.min.js;
  • inline-скрипт с проверкой поддержки emoji;
  • подключения через wp_head и print_emoji_detection_script.

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

Ещё один практический способ — временно вывести список подключённых скриптов в шаблоне или проверить HTML-источник. Для этого не обязательно лезть в ядро WordPress: достаточно понять, что именно выводится на фронтенде и в админке.

Что не стоит трогать

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

Пошаговое решение через functions.php или мини-плагин

Самый надёжный вариант — добавить код в дочернюю тему или в небольшой mu-plugin/обычный плагин для сайта. Если правка нужна только для одного проекта, мини-плагин даже удобнее: он не зависит от темы.

Ниже рабочий вариант, который отключает emoji-скрипты и стили на фронтенде и в админке:

<?php
/**
 * Disable WordPress emoji scripts and styles.
 */
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 только на фронтенде, но оставить в админке, уберите строки для admin_print_scripts и admin_print_styles. Это полезно, если редакторы активно используют emoji в контенте и вы не хотите менять их рабочий процесс.

Вариант через мини-плагин

Если не хотите держать код в functions.php, создайте файл, например disable-emoji.php, в каталоге wp-content/plugins/ и активируйте его как обычный плагин:

<?php
/**
 * Plugin Name: Disable Emoji
 * Description: Removes WordPress emoji scripts and styles.
 * Version: 1.0.0
 */

if ( ! defined( 'ABSPATH' ) ) {
    exit;
}

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' );
} );

Такой подход проще откатить, если позже выяснится, что какой-то плагин или шаблон рассчитывает на стандартное поведение ядра.

Сравнение подходов: плагин, код, компромисс

ПодходЧто даётМинус
Код в дочерней темеБыстро, без лишних плагиновПривязан к теме
Мини-плагинНе зависит от темы, удобно переноситьНужно хранить отдельный файл
Ничего не делатьНулевой риск сломать что-то вручнуюЛишние скрипты остаются

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

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

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

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

Если используете консоль браузера, можно быстро проверить наличие файла через поиск по HTML или вкладку Network. В идеале на странице не должно быть ни отдельного запроса на emoji-скрипт, ни inline-блока, связанного с его детекцией.

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

Код добавили, но скрипт остался

Чаще всего причина в том, что код вставили слишком поздно или не в тот файл. Хук init должен отработать до вывода wp_head. Если тема уже выводит что-то нестандартно, проверьте, не подключает ли emoji другой плагин или кастомный код.

Сломали админку или редактор

Обычно это происходит, если удалили не только emoji-скрипты, но и связанные стили/фильтры без понимания, где они используются. Верните код по частям: сначала отключите только фронтенд, затем отдельно проверьте админку.

Не очистили кэш

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

Путают отключение emoji с оптимизацией шрифтов

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

Что ещё можно почистить рядом с emoji

Если вы уже занимаетесь технической гигиеной сайта, имеет смысл посмотреть и на другие стандартные элементы WordPress, которые не всегда нужны на публичной части:

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

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

Чек-лист перед публикацией изменений

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

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

Как сделать отложенный запуск функции в WordPress: практические примеры и код
08.09.2026
Как отключить XML-RPC в WordPress без поломки авторизации и pingback
06.09.2026
WooCommerce: как отключить автологин после регистрации пользователя
25.08.2026
WooCommerce: автоматическое удаление товаров из корзины после отмены оплаты
08.09.2026
Как убрать дубли страниц в WordPress из-за canonical и пагинации
20.08.2026
×
-15%
на премиум-тему
Bono

Создай магазин мечты
на WordPress!

↓ ↓ ↓ ↓ ↓
Купить со скидкой »