В WordPress часто на фронтенде загружается множество скриптов, которые не всегда нужны на всех страницах. Это негативно влияет на скорость загрузки сайта и пользовательский опыт. В этой статье подробно разберём, как выявить и удалить неиспользуемые регистрируемые скрипты (JavaScript и CSS), чтобы ускорить сайт и снизить нагрузку на сервер.
Почему важно удалять неиспользуемые скрипты в WordPress
По умолчанию темы и плагины могут подключать множество скриптов на каждой странице сайта. Например, плагин контактной формы может грузить свои JS-файлы на всех страницах, хотя форма находится только на странице «Контакты».
Загрузка лишних скриптов:
- Увеличивает время загрузки страниц;
- Повышает количество HTTP-запросов;
- Увеличивает вес страницы и расход трафика;
- Может создать конфликт между скриптами;
- Отрицательно сказывается на SEO.
Удаление или отключение неиспользуемых скриптов — эффективный способ оптимизации сайта без ущерба функционалу.
Как определить, какие скрипты можно отключить
Первый шаг — узнать, какие скрипты загружаются на сайте и где они подключаются.
Использование инструментов браузера
Откройте сайт в Google Chrome или Firefox, нажмите F12, перейдите во вкладку Network и отфильтруйте по типу JS или CSS. Вы увидите список файлов, которые загружаются при открытии текущей страницы.
Обратите внимание на имена файлов и пути — это поможет понять, к какому плагину или теме они относятся.
Плагины для анализа скриптов
Можно использовать плагины, например, Clearfy Pro, который позволяет анализировать и отключать ненужные скрипты через удобный интерфейс.
Ручной аудит кода
Если вы хорошо разбираетесь в коде, можно проверить функции темы и плагинов, которые регистрируют и подключают скрипты. Обычно это функции wp_enqueue_script и wp_enqueue_style.
Как отключить неиспользуемые скрипты в WordPress через код
Для удаления скриптов, которые не нужны на определённых страницах, используйте хук wp_enqueue_scripts с приоритетом, чтобы отключить их после регистрации.
Пример функции для удаления скрипта по его handle:
function wpmoney_remove_unused_scripts() {
if ( !is_page('contact') ) { // отключаем на всех страницах, кроме страницы контактов
wp_dequeue_script('contact-form-script'); // handle скрипта
wp_deregister_script('contact-form-script');
}
}
add_action('wp_enqueue_scripts', 'wpmoney_remove_unused_scripts', 100);
Здесь contact-form-script — это уникальный идентификатор скрипта, который нужно отключить. Его можно узнать в исходном коде темы или плагина.
Удаление стилей аналогично
Для стилей используйте wp_dequeue_style и wp_deregister_style:
function wpmoney_remove_unused_styles() {
if ( !is_front_page() ) { // отключаем стили только на главной
wp_dequeue_style('frontpage-style');
wp_deregister_style('frontpage-style');
}
}
add_action('wp_enqueue_scripts', 'wpmoney_remove_unused_styles', 100);
Как отключать скрипты от популярных плагинов
Некоторые плагины не имеют встроенного контроля подключения скриптов, поэтому приходится отключать их вручную. Вот примеры для популярных решений.
Contact Form 7
Плагин Contact Form 7 подключает свои скрипты на всех страницах по умолчанию. Чтобы отключить их и загрузить только на странице с формой:
function wpmoney_cf7_remove_scripts() {
if ( !is_page('contact') ) {
wp_dequeue_script('contact-form-7');
wp_dequeue_style('contact-form-7');
}
}
add_action('wp_enqueue_scripts', 'wpmoney_cf7_remove_scripts', 100);
WooCommerce
WooCommerce также грузит множество скриптов на всех страницах. Чтобы отключить их, кроме страниц магазина и корзины, используйте:
function wpmoney_woocommerce_remove_scripts() {
if ( !is_woocommerce() && !is_cart() && !is_checkout() ) {
wp_dequeue_script('woocommerce');
wp_dequeue_script('wc-cart-fragments');
wp_dequeue_style('woocommerce-general');
}
}
add_action('wp_enqueue_scripts', 'wpmoney_woocommerce_remove_scripts', 100);
Автоматизация с помощью плагина Clearfy Pro
Если вы не хотите писать код вручную, можно использовать Clearfy Pro. Он предоставляет удобный интерфейс для отключения ненужных скриптов и стилей без правки кода.
В Clearfy можно задать правила для отключения скриптов по типу страницы, роли пользователя, шаблону URL и другим параметрам. Это значительно упрощает оптимизацию.
Советы и рекомендации
- Начинайте с аудита скриптов на самых посещаемых страницах;
- Всегда тестируйте сайт после отключения скриптов — убедитесь, что функционал не сломался;
- Используйте условные теги WordPress для тонкой настройки;
- Для сложных сайтов лучше комбинировать ручное отключение и плагины;
- Регулярно проверяйте обновления плагинов — иногда они оптимизируют загрузку скриптов сами.
Вывод
Удаление неиспользуемых скриптов в WordPress — простой и эффективный способ улучшить скорость сайта и пользовательский опыт. С помощью примеров кода и плагинов, таких как Clearfy Pro, вы сможете легко контролировать загрузку скриптов без ущерба для функционала.