Как отключить emoji и лишние Dashicons в WordPress без поломки админки

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

Когда это действительно имеет смысл

Отключать emoji и публичные Dashicons стоит не ради абстрактной «скорости», а когда вы видите, что:

  • на главной и внутренних страницах загружаются wp-emoji-release.min.js и связанные inline-скрипты;
  • внешний CSS от dashicons.min.css приходит для обычных посетителей, хотя иконки нужны только в админке;
  • вы уже убрали тяжелые плагины, но в отчётах PageSpeed/Lighthouse всё равно висит лишняя мелочь, которая мешает добрать нормальный результат;
  • тема не использует Dashicons на фронтенде, а иконки в меню, кнопках и виджетах сделаны другими способами.

Диагностика проблемы: что именно грузится и где

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

  • wp-emoji-release.min.js;
  • dashicons.min.css;
  • inline-скрипт с настройками emoji, который WordPress добавляет автоматически;
  • подключения от темы или плагинов, которые завязаны на Dashicons и могут сломаться при отключении.

Если вы видите Dashicons только в админке, это нормально. Их задача — работать в панели, а не на фронтенде. Проблема возникает, когда тема по привычке подтягивает их на всех страницах.

Как быстро проверить без кода

Откройте страницу сайта в режиме инкогнито и посмотрите список CSS/JS в DevTools. Если у вас есть доступ к PageSpeed Insights или WebPageTest, сравните список запросов до и после изменений. Это полезно, потому что иногда ресурс уже закеширован в браузере и кажется, что ничего не изменилось.

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

Самый предсказуемый вариант — добавить код в дочернюю тему или в небольшой mu-plugin. Так вы не потеряете изменения после обновления темы.

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

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

add_action( 'wp_enqueue_scripts', function () {
    if ( ! is_user_logged_in() ) {
        wp_dequeue_style( 'dashicons' );
        wp_deregister_style( 'dashicons' );
    }
}, 100 );

Здесь есть важная деталь: Dashicons снимаются только у незалогиненных посетителей. Если вы авторизованы, WordPress и редактор могут продолжать использовать их в интерфейсе, и это нормально. Такой подход снижает риск сломать админку при тестировании.

Если тема сама подключает Dashicons

Иногда проблема не в ядре WordPress, а в теме или плагине. Тогда одного wp_dequeue_style() может быть недостаточно: ресурс подключается повторно другим кодом. В этом случае ищите в теме вызовы wp_enqueue_style( 'dashicons' ) или похожие регистрации и убирайте их точечно. Если код чужой и обновляется отдельно, лучше не править его напрямую, а переопределить подключение через дочернюю тему или собственный плагин.

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

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

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

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

После добавления кода не ограничивайтесь визуальной проверкой. Сделайте три шага:

  1. Откройте страницу сайта в приватном окне и убедитесь, что в исходнике больше нет wp-emoji-release.min.js.
  2. Проверьте, что dashicons.min.css не грузится для незалогиненного пользователя на фронтенде.
  3. Зайдите в админку, откройте редактор записи и убедитесь, что кнопки, меню и иконки интерфейса работают как раньше.

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

Что считать нормальным результатом

Нормально, если:

  • на фронтенде исчезли лишние запросы к emoji;
  • Dashicons остались в админке, но пропали у гостей сайта;
  • редактор Gutenberg не потерял элементы управления;
  • в консоли браузера нет ошибок, связанных с отсутствующими стилями или скриптами.

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

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

Ошибка 2: вставили код в родительскую тему. После обновления изменения исчезнут. Переносите код в дочернюю тему или mu-plugin.

Ошибка 3: отключили emoji только через один хук. WordPress добавляет emoji в нескольких местах. Если убрать только wp_head, часть ресурсов может остаться в стилях, RSS или email.

Ошибка 4: тестировали под своей учётной записью. Авторизованный пользователь видит не тот же набор ресурсов, что обычный посетитель. Проверяйте в инкогнито.

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

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

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

Для сайтов с активной редакцией контента полезно проверять изменения на staging-копии. Это особенно важно, если у вас много авторов и кто-то работает в классическом редакторе, а кто-то — в Gutenberg. Внешне отключение emoji и Dashicons кажется безобидным, но конфликт чаще всего проявляется не сразу, а на конкретной странице или в конкретном шаблоне.

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

Короткий чек-лист перед публикацией

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

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

}
Как отключить emoji и лишние Dashicons в WordPress без поломки админки
31.08.2026
Как закрыть дубли страниц в WordPress от пагинации, фильтров и параметров
19.08.2026
Как закрыть от индексации отдельные страницы WordPress без поломки SEO
22.08.2026
Поиск и устранение 404 ошибок в WordPress: как найти источник и исправить без лишних редиректов
28.08.2026

Обучение разработке на WordPress, как создавать темы, плагины. Подробнее об обучении.