В современных проектах на WordPress часто возникает проблема с лишними CSS стилями, которые подключаются плагинами. Эти стили могут значительно замедлять загрузку страниц, особенно если они критические (critical CSS) и блокируют рендеринг. В этой статье разберёмся, как определить и удалить ненужные критические CSS стили, которые подключают плагины, чтобы ускорить загрузку сайта и улучшить пользовательский опыт.
Что такое критические CSS стили и почему их нужно оптимизировать
Критические CSS — это минимальный набор стилей, необходимых для первичной отрисовки контента страницы без задержек. Если сторонние плагины подключают большие CSS-файлы или стили, которые не нужны сразу, браузер вынужден ждать их загрузки и обработки, что увеличивает время до первого отображения контента (First Contentful Paint).
Удаление или отложенная загрузка неподходящих стилей уменьшает вес страницы и ускоряет отображение контента.
Как определить, какие CSS стили блокируют рендеринг
Чтобы выявить критические стили от плагинов, используйте инструменты разработчика в браузере (Chrome DevTools):
- Откройте вкладку Network и отфильтруйте по CSS;
- Посмотрите время загрузки каждого CSS файла и его размер;
- На вкладке Performance запустите запись и изучите цепочку рендеринга;
- В разделе Coverage можно определить, какие стили не используются на странице.
Также для автоматизации можно использовать плагины, например Clearfy Pro, который помогает отключать лишние стили.
Методы удаления критических CSS стилей от плагинов
Существует несколько способов убрать ненужные CSS:
1. Отключение стилей через функции темы
Если плагин регистрирует стили с помощью wp_enqueue_style, их можно отключить программно, например:
function wpskins_remove_plugin_css() {
wp_dequeue_style('plugin-style-handle');
wp_deregister_style('plugin-style-handle');
}
add_action('wp_enqueue_scripts', 'wpskins_remove_plugin_css', 20);
Чтобы узнать handle, используйте инспектор кода или ищите в исходниках плагина.
2. Условная загрузка CSS только на нужных страницах
Для оптимизации подключайте стили плагинов только там, где они действительно нужны:
function wpskins_conditionally_enqueue_plugin_css() {
if (is_page('contact')) { // Только на странице контактов
wp_enqueue_style('plugin-style-handle');
} else {
wp_dequeue_style('plugin-style-handle');
}
}
add_action('wp_enqueue_scripts', 'wpskins_conditionally_enqueue_plugin_css', 20);
3. Использование плагинов для оптимизации CSS
Clearfy Pro позволяет отключать CSS и JS плагинов через удобный интерфейс, а также автоматизирует процесс удаления неиспользуемых стилей. Он интегрируется с большинством популярных плагинов и не требует ручного вмешательства.
Подробнее о Clearfy Pro можно узнать на официальном сайте.
Как определить и исправить конфликты после удаления стилей
Удаление CSS иногда может вызвать ошибки отображения. Чтобы минимизировать риски:
- Тестируйте изменения на локальной копии сайта;
- Используйте инструменты инспекции для выявления недостающих стилей;
- Добавляйте собственные CSS-правила для исправления;
- В редких случаях используйте динамическое добавление стилей через
wp_add_inline_style.
Пример добавления инлайн стилей:
function wpskins_add_custom_inline_css() {
$custom_css = '.custom-class { color: #333; }';
wp_add_inline_style('plugin-style-handle', $custom_css);
}
add_action('wp_enqueue_scripts', 'wpskins_add_custom_inline_css');
Практический пример: удаление стилей плагина Contact Form 7
Плагин Contact Form 7 подключает стили на всех страницах, хотя формы могут быть нужны только на нескольких. Чтобы убрать стили с ненужных страниц, используйте такой код:
function wpskins_dequeue_cf7_styles() {
if (!is_page('contact')) {
wp_dequeue_style('contact-form-7');
}
}
add_action('wp_enqueue_scripts', 'wpskins_dequeue_cf7_styles', 20);
Это уменьшит количество CSS, загружаемого на страницах без форм, ускоряя загрузку.
Заключение: системный подход к удалению критических CSS
Удаление критических CSS стилей от плагинов — задача, требующая аккуратности и тестирования. Используйте инструменты разработчика для анализа, применяйте условную загрузку, и если нужно — плагин Clearfy Pro для автоматизации. Такой подход позволит значительно ускорить сайт на WordPress без потери функционала.