Владелец студии по ремонту вставил с форума код без проверки логина: PageSpeed у гостей позеленел, а у него пропали иконки в чёрной панели WordPress — откат темы из бэкапа. Та же боль: в Network виден dashicons.min.css, а страшно трогать functions.php. Ниже отключите лишний CSS только для гостей, проверьте инкогнито и после входа убедитесь, что панель снова с иконками.
Dashicons — иконочный шрифт админки WordPress; файл dashicons.min.css в ядре весит около 59 KB несжатым и часто ~30 KB по сети с gzip. Гостям эти иконки на публичных страницах обычно не нужны, но плагины подключают стиль «на всякий случай». Безопасный приём: на хуке wp_enqueue_scripts с приоритетом 100 снять handle dashicons только если посетитель не залогинен. У авторизованных пользователей стиль нужен панели администратора на фронте — у неё зависимость от dashicons в ядре.
Микро-оптимизация без магии: один CSS, который гость не использует, убираем аккуратно. Выигрыш умеренный, зато минус блокирующий запрос в PageSpeed — такой результат вы сможете увидеть в Network за один вечер. В WordPress 7.2 в админ-UI планируют SVG, но stylesheet Dashicons останется для плагинов с классом dashicons-* — ждать обновления не стоит.
- Разберите, зачем dashicons.min.css грузится на страницах для клиентов
- Найдите dashicons.min.css в DevTools и PageSpeed за пять минут
- Отключите Dashicons только для гостей через дочернюю тему или сниппет
- Сравните dequeue, deregister и галочку в плагине
- Узнайте, когда Dashicons на фронте всё же нужен
- Не сломайте кеш, CDN и страницу входа
- Частые вопросы
- Безопасно ли отключать dashicons на WordPress для гостей?
- Влияет ли отключение на админку /wp-admin?
- Нужен ли отдельный плагин, чтобы убрать dashicons.min.css?
- Пропадут ли иконки в меню на сайте?
- Что такое dashicons.min.css простыми словами?
- Исчезнут ли Dashicons после обновления WordPress 7.2?
- Чем dequeue отличается от deregister?
Разберите, зачем dashicons.min.css грузится на страницах для клиентов
Dashicons — это набор пиктограмм для панели /wp-admin: корзина, карандаш, шестерёнка. Файл лежит в ядре по пути /wp-includes/css/dashicons.min.css, WordPress регистрирует его под именем handle dashicons. На практике стиль попадает в head даже у анонимного посетителя, потому что тема или плагин объявил зависимость или просто подключил «про запас».
Для сайта услуг, салона или небольшого магазина контент обычно из своих картинок, SVG в блоках или иконок темы — не из шрифта админки. Типичная ошибка: думать, что раз файл из ядра, его нельзя трогать. Ядро не ломается — вы лишь говорите «гостям этот CSS не отдавать». Параллельно имеет смысл убрать и другой «балласт», например лишние emoji-скрипты WordPress — там та же логика лишнего в head.

Найдите dashicons.min.css в DevTools и PageSpeed за пять минут
Боль «не знаю, есть ли проблема» снимается проверкой без плагинов.
- Шаг 1: откройте главную сайта в режиме инкогнито (гость) или выйдите из WordPress.
- Нажмите F12 → вкладка Network (Сеть), включите «Disable cache» / отключить кэш.
- Обновите страницу и в фильтре введите dashicons.
- Если видите dashicons.min.css со статусом 200 — файл реально тянется гостю; повторите на одной внутренней (услуга, статья, контакты), не только на главной.
В PageSpeed тот же файл может попасть в блокирующие ресурсы — это сигнал убрать лишнее, не приговор сайту. Запишите URL, где dashicons есть, перед правкой.

Отключите Dashicons только для гостей через дочернюю тему или сниппет
Страх «сломаю админку» закрывается одним условием: проверять, залогинен ли пользователь. Официальная функция is_user_logged_in() возвращает false для гостя — именно тогда можно снять стиль с очереди через wp_dequeue_style.
Куда вставить код (выберите один путь): используйте дочернюю тему, если она уже есть, или бесплатный плагин с фрагментами PHP.
- Дочерняя тема: файл functions.php в дочерней теме (не в родительской — обновление темы сотрёт правки).
- Плагин Code Snippets или аналог: новый сниппет PHP, выполнение «только на фронте», без галочки «админка».
- MU-плагин в wp-content/mu-plugins/ — если сниппеты не используете; файл должен начинаться с <?php.
Эталонный фрагмент для вставки (скопируйте целиком):
add_action( ‘wp_enqueue_scripts’, ‘smartdm_dequeue_dashicons_guests’, 100 );
function smartdm_dequeue_dashicons_guests() {
if ( is_user_logged_in() ) {
return;
}
wp_dequeue_style( ‘dashicons’ );
}
Приоритет 100 — после enqueue плагинов. Если файл всё равно в Network, добавьте wp_deregister_style( ‘dashicons’ ); после dequeue. Не делайте dequeue без is_user_logged_in() — сделайте сначала бэкап functions.php, потом вставку: иначе пропадает панель на фронте.

Сравните dequeue, deregister и галочку в плагине
| Способ | Кому подходит | Риск |
|---|---|---|
| wp_dequeue_style + is_user_logged_in | Владелец с дочерней темой или Code Snippets | Низкий при проверке панели после входа |
| + wp_deregister_style | Файл снова появляется в Network после dequeue | Средний: не отключайте у залогиненных |
| Perfmatters → Disable Dashicons | Уже платите за плагин, PHP не трогаете | Низкий на фронте для гостей по документации |
| Плагин «отключить везде» | Не рекомендуем | Иконки могут пропасть и в /wp-admin |
Схема проверки после правки:
Инкогнито → Network без dashicons.min.css → главная и внутренняя → форма заявки → вход под своим логином → панель сверху с иконками → при «квадратиках» в меню откат сниппета
Без PHP: Perfmatters → Disable Dashicons (фронт для гостей). Не ставьте плагины, режущие Dashicons в /wp-admin. Рядом помогут gzip и кеш — другой лишний вес, не замена dequeue.
Узнайте, когда Dashicons на фронте всё же нужен
Боль «отключил — пропали иконки» значит: тема или плагин на публичной части использует классы dashicons-* в меню, кнопках или виджетах. Тогда файл гостям нужен, оптимизация здесь не универсальна.
Как понять за пару минут:
- После отключения пройдитесь по главной, услугам, блогу, мобильной вёрстке — нет ли пустых квадратиков вместо стрелок и иконок.
- Если квадратики есть — откатите сниппет и оставьте dashicons.min.css для гостей или замените иконки в теме на SVG/картинки (отдельная задача).
- Чёрная панель WordPress на фронте видна только залогиненным — для них стиль не отключаем.
Gutenberg с SVG и социконки темы от Dashicons не зависят. Про чёрную панель сверху — отдельно: скрыть admin bar для гостей.
Не сломайте кеш, CDN и страницу входа
После любой правки сбросьте кеш страницы в плагине кеширования и в CDN, если сайт через Cloudflare или аналог. Иначе проверка в инкогнито покажет старую версию head, и кажется, что код «не работает».
Чеклист на один заход:
- Сохраните бэкап functions.php или экспорт сниппета.
- Вставьте гостевой код с приоритетом 100.
- Инкогнито: Network без dashicons.min.css на главной и одной записи.
- Проверьте форму заявки и кнопки — без квадратиков.
- Войдите под своим логином: dashicons.min.css снова в Network, иконки панели на месте.
- Откройте /wp-login.php — страница входа не должна «поехать» (редко, но при агрессивном deregister у всех проверьте).
Критерий успеха и ориентир результата: у гостя в Network нет dashicons.min.css, после входа файл снова есть и панель с иконками, меню и формы без квадратиков — настройте проверку так и уберите сниппет, если квадратики вернулись. Шрифты темы — локально на WordPress.
Сайт под заявки без риска на боевом домене — услуги или форма (MAX, VK, WhatsApp, Telegram). Вопросы — Telegram. Ещё гайды — /stati/.
Материал проверен: Андрей Дикий (создаёт сайты и продвигает их статьями, SEO/GEO).
Откуда факты: WordPress Developer (wp_dequeue_style, wp_enqueue_scripts, is_user_logged_in, is_admin_bar_showing), ресурс Dashicons, Make WordPress Core (Replacing Dashicons, Roadmap 7.2, сентябрь 2026), script-loader.php в wordpress-develop, Stack Exchange #161476, документация Perfmatters Remove Dashicons, wpseek по размеру dashicons.min.css; частотность запросов — по Яндекс Вордстат на 2026-10-05 (MCP недоступен, LSI из SERP).
Частые вопросы
Безопасно ли отключать dashicons на WordPress для гостей?
Да, если используете проверку is_user_logged_in() и после правки проходите чеклист: инкогнито без файла в Network, после входа панель с иконками, нет квадратиков в меню темы. Без условия логина легко сломать admin bar на фронте у редакторов.
Влияет ли отключение на админку /wp-admin?
Код на wp_enqueue_scripts для публичной части не должен трогать экраны админки, если сниппет не помечен «run in admin». Плагины, которые отключают Dashicons глобально, могут испортить иконки в панели управления — их лучше не ставить.
Нужен ли отдельный плагин, чтобы убрать dashicons.min.css?
Нет. Достаточно дочерней темы или бесплатного сниппета с dequeue. Perfmatters — платная альтернатива одной галочкой. Выбор зависит от того, платите ли вы уже за плагин и боитесь ли PHP.
Пропадут ли иконки в меню на сайте?
Только если тема или плагин на фронте рисуют пункты меню классами dashicons-*. Тогда откатите отключение или замените иконки в теме. Большинство бизнес-тем используют свои SVG или спрайты.
Что такое dashicons.min.css простыми словами?
Это сжатый CSS-файл со шрифтом иконок админки WordPress. Браузер качает его, даже если гость никогда не видит эти пиктограммы — отсюда лишний вес и строка в PageSpeed.
Исчезнут ли Dashicons после обновления WordPress 7.2?
В админ-меню и admin bar планируют SVG, но stylesheet для расширений с классом dashicons-* должен остаться по обсуждению в тикете #65387. Отключение на фронте для гостей останется актуальным.
Чем dequeue отличается от deregister?
Dequeue снимает стиль с очереди на этой странице. Deregister удаляет регистрацию handle — плагин не сможет снова подключить тот же handle без повторной регистрации. Сначала пробуйте dequeue с проверкой логина; deregister добавляйте, если файл всё равно возвращается в Network.
