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

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

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

Что именно грузит WordPress и почему это видно в head

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

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

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

Диагностика: как понять, что emoji действительно мешают

Сначала проверьте, есть ли проблема вообще. Не стоит отключать всё только потому, что «так советуют». Откройте исходный код страницы и найдите emoji или wp-emoji-release. Если используете DevTools, посмотрите вкладку Network и отфильтруйте по emoji.

На что смотреть в исходнике

В типичном случае вы увидите что-то вроде:

<script src="https://example.com/wp-includes/js/wp-emoji-release.min.js?ver=6.x" defer></script>

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

Быстрая проверка через консоль

Можно проверить наличие подключений через поиск по HTML страницы или через WP-CLI, если у вас есть доступ к серверу. Но для большинства случаев достаточно браузера и просмотра исходника. Важный момент: отключать emoji нужно на фронтенде, а не ломать функциональность редактора в админке без необходимости.

Пошаговое решение: отключаем emoji штатно

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

Вариант 1: отключить emoji через functions.php дочерней темы

Этот код убирает стандартные действия WordPress, связанные с emoji, на фронтенде и в админке. Он не трогает контент в базе и не меняет записи.

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

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

Вариант 2: мини-плагин для более чистого сопровождения

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

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

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-скрипт.

Когда лучше не лезть в код, а использовать плагин

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

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

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

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

  • Откройте исходный код страницы и найдите wp-emoji-release — его быть не должно.
  • Проверьте вкладку Network в DevTools: запросов к emoji-файлу быть не должно.
  • Откройте редактор записи в админке и убедитесь, что он работает без ошибок JavaScript.
  • Если на сайте есть комментарии, отправьте тестовый комментарий и проверьте отображение текста.
  • Посмотрите RSS-ленту, если она используется: текст не должен искажаться.

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

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

Удалили код не там, где нужно

Самая частая ошибка — вставить правку в файл темы, который потом обновляется, или в шаблон, который не загружается на всех страницах. Для таких задач лучше использовать functions.php дочерней темы или отдельный плагин.

Отключили emoji в админке и получили странное поведение

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

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

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

Сломали email-обработку

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

Практические советы по безопасности и производительности

Отключение emoji — это не «ускоритель в один клик», а небольшая техническая уборка. Но такие правки полезны, если вы регулярно чистите сайт от лишних подключений. Держите код в отдельном месте, чтобы можно было быстро откатить изменения. Перед внедрением на боевом сайте проверьте правку на staging-копии, особенно если у вас нестандартная тема или набор плагинов.

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

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

Как закрыть от индексации строковые параметры в WordPress без поломки SEO
26.08.2026
Как отключить emoji в WordPress и убрать лишние скрипты из head
02.09.2026
Как закрыть XML sitemap от индексации в WordPress без потери доступа для поисковиков
30.08.2026
Как закрыть дубли страниц от индексации в WordPress без поломки SEO
22.08.2026