Если на публичной части сайта загружается файл Dashicons, а иконки из админки нигде не используются, это лишний запрос и лишний вес страницы. Для гостей такой ресурс обычно не нужен: Dashicons — это набор иконок WordPress, который в первую очередь нужен в админке и в некоторых темах или плагинах. На фронтенде его часто подключают по привычке или вместе с темой, даже когда реальной пользы от него нет.
Отключать Dashicons для незалогиненных посетителей можно безопасно, если вы понимаете, что именно убираете. Для админки и для авторизованных пользователей файл лучше оставить: в панели управления и в некоторых пользовательских интерфейсах он может быть нужен.
Когда Dashicons можно отключать
Сначала стоит проверить, действительно ли иконки используются на публичной части сайта. Если в исходном коде страницы есть подключение dashicons.css, но на сайте нет элементов, завязанных на эти иконки, отключение обычно безопасно.
Типичный сценарий такой:
- сайт открыт для гостей без входа в админку;
- на фронтенде нет меню, кнопок или блоков, которые используют классы Dashicons;
- иконки нужны только в панели управления WordPress;
- вы хотите уменьшить число запросов и убрать ненужный CSS.
Если у вас тема или плагин выводит иконки через Dashicons на публичной части, отключать их нельзя без проверки. В этом случае на месте иконок могут появиться пустые квадраты или сломается верстка.
Самый безопасный способ: отключить Dashicons только для гостей
Надёжнее всего сделать это через код в дочерней теме или в небольшом функциональном плагине. Так вы не затронете админку и не потеряете изменения после обновления темы.
Добавьте такой код в functions.php дочерней темы или в свой мини-плагин:
add_action( 'wp_enqueue_scripts', function () {
if ( is_user_logged_in() ) {
return;
}
wp_dequeue_style( 'dashicons' );
wp_deregister_style( 'dashicons' );
}, 100 );Что здесь происходит:
wp_enqueue_scriptsсрабатывает на фронтенде, когда WordPress уже собрал подключаемые стили и скрипты;is_user_logged_in()не даёт отключать Dashicons для авторизованных пользователей;wp_dequeue_style( 'dashicons' )убирает стиль из очереди подключения;wp_deregister_style( 'dashicons' )снимает регистрацию стиля, если его успели подключить раньше.
Приоритет 100 нужен, чтобы код выполнился после большинства тем и плагинов. Если оставить стандартный приоритет, иногда Dashicons успевают снова добавить в очередь.
Почему не стоит просто удалять Dashicons без условия
Иногда советуют полностью отключить Dashicons одной строкой для всех пользователей. Это плохая идея, если у вас есть авторизованные редакторы, администраторы или фронтенд-часть, которая использует иконки WordPress. В таком случае можно сломать интерфейс в админке или на сайте.
Условие is_user_logged_in() решает именно эту проблему: гости не тянут лишний CSS, а авторизованные пользователи продолжают работать как обычно. Для большинства сайтов это лучший баланс между безопасностью и экономией ресурсов.
Как проверить, что Dashicons действительно отключились
После добавления кода откройте главную страницу сайта в режиме гостя, лучше в приватном окне браузера. Затем проверьте исходный код страницы или вкладку Network в инструментах разработчика.
Что должно измениться:
- в списке загружаемых ресурсов больше не должно быть
dashicons.min.cssилиdashicons.cssдля гостя; - число CSS-запросов на фронтенде станет меньше;
- если раньше файл подключался только ради иконок, визуально на сайте ничего не изменится.
Если файл всё ещё загружается, значит его подключает тема или плагин позже, чем срабатывает ваш код, либо он добавлен не стандартным способом. Тогда нужно искать источник подключения.
Если Dashicons не отключаются: где искать причину
На практике Dashicons могут подключаться не только ядром WordPress. Часто их добавляет тема, конструктор или плагин, который использует стандартные иконки WordPress в интерфейсе на фронтенде.
Проверьте несколько мест:
- functions.php активной темы и дочерней темы;
- плагины, которые добавляют кнопки, меню, личный кабинет или элементы интерфейса на сайте;
- кастомные сниппеты в плагинах для вставки кода;
- кэш страницы: после изменений его нужно очистить, иначе вы увидите старую версию.
Если у вас установлен плагин оптимизации, он может объединять или переносить стили, и из-за этого кажется, что Dashicons всё ещё подключены. В таком случае сначала очистите кэш, а потом повторно проверьте исходный код страницы.
Когда лучше не трогать Dashicons
Есть ситуации, в которых отключение принесёт больше проблем, чем пользы. Например, если на сайте есть публичный личный кабинет, фронтенд-редактор, кастомная тема с иконками WordPress или старый плагин, который явно использует Dashicons на страницах для гостей.
В таких случаях сначала найдите конкретное место использования. Если иконки нужны только на отдельных страницах, лучше убрать их точечно, а не отключать глобально. Полное отключение уместно только тогда, когда вы уверены, что на фронтенде они не используются.
Что это даёт по скорости
Отключение Dashicons не превращает медленный сайт в быстрый само по себе, но убирает один лишний CSS-файл и сокращает количество запросов. Для небольших сайтов это может быть скромная, но вполне реальная оптимизация: меньше ресурсов на загрузку, меньше работы для браузера и чуть чище фронтенд.
Если вы уже оптимизируете сайт, убираете ненужные стили, отключаете лишние скрипты и чистите кэш, Dashicons логично входят в этот список. Это не главный источник ускорения, но хороший кандидат на удаление, когда они действительно не нужны гостям.
Если нужен более широкий разбор лишних подключений и чистки WordPress без ручного кода, для этой задачи может подойти Clearfy Pro: https://wpshop.ru/plugins/clearfy?utm_source=wpmeta.ru&utm_medium=article&utm_campaign=otklyuchit-dashicons-dlya-gostey-wordpress. Но если вам нужно убрать только Dashicons, достаточно и небольшого кода выше.
После внедрения обязательно проверьте сайт в режиме гостя, очистите кэш и убедитесь, что админка осталась без изменений. Это самый простой способ убрать ненужные Dashicons без риска сломать рабочие интерфейсы WordPress.