В некоторых случаях разработчикам WordPress требуется полностью удалить или отключить загрузку всех скриптов и стилей на сайте. Это может понадобиться для создания максимально легкой страницы с собственным минимальным набором ресурсов, для отладки, разработки или для кастомных лендингов, где не нужны стандартные стили и скрипты темы и плагинов.
Почему может понадобиться удалить все скрипты и стили в WordPress
По умолчанию WordPress, темы и множество плагинов подключают большое количество CSS и JS файлов. Это может привести к:
- Замедлению загрузки сайта;
- Конфликтам между стилями и скриптами;
- Ненужной нагрузке на сервер и браузер пользователя;
- Сложностям при создании уникального дизайна без влияния стандартных стилей.
Удаление всех стилей и скриптов позволяет начать с "чистого листа" и подключать только необходимые ресурсы.
Как удалить все скрипты и стили в WordPress: базовый подход
Для удаления всех стилей и скриптов можно использовать хук wp_enqueue_scripts с приоритетом 100 и функцию wp_dequeue_style и wp_dequeue_script.
Однако вручную перечислять все ресурсы сложно. Поэтому можно написать функцию, которая перебирает все зарегистрированные стили и скрипты и отключает их.
Пример функции для удаления всех стилей и скриптов
add_action('wp_enqueue_scripts', 'wpclass_remove_all_scripts_styles', 100);
function wpclass_remove_all_scripts_styles() {
global $wp_styles, $wp_scripts;
// Отключаем все стили
if (!empty($wp_styles->queue)) {
foreach ($wp_styles->queue as $handle) {
wp_dequeue_style($handle);
wp_deregister_style($handle);
}
}
// Отключаем все скрипты
if (!empty($wp_scripts->queue)) {
foreach ($wp_scripts->queue as $handle) {
wp_dequeue_script($handle);
wp_deregister_script($handle);
}
}
}Этот код удалит все стили и скрипты, зарегистрированные и поставленные в очередь на вывод в фронтенде.
Учет зависимостей и важность порядка удаления
Иногда стили и скрипты зависят друг от друга, и удаление в неправильном порядке может привести к ошибкам. Поэтому лучше отключать ресурсы максимально поздно, чтобы все зависимости уже были зарегистрированы и в очереди.
Также стоит понимать, что некоторые плагины или темы могут добавлять скрипты и стили не через стандартные хуки, а напрямую в шаблонах. В таких случаях удаление стандартными методами не сработает.
Удаление стилей и скриптов из админки WordPress
Если необходимо очистить стили и скрипты в админке, то аналогичный подход применяется к хуку admin_enqueue_scripts. Например:
add_action('admin_enqueue_scripts', 'wpclass_remove_all_admin_scripts_styles', 100);
function wpclass_remove_all_admin_scripts_styles() {
global $wp_styles, $wp_scripts;
if (!empty($wp_styles->queue)) {
foreach ($wp_styles->queue as $handle) {
wp_dequeue_style($handle);
wp_deregister_style($handle);
}
}
if (!empty($wp_scripts->queue)) {
foreach ($wp_scripts->queue as $handle) {
wp_dequeue_script($handle);
wp_deregister_script($handle);
}
}
}Но будьте осторожны: удаление всех скриптов и стилей из админки может привести к поломке интерфейса.
Как selectively удалить скрипты и стили — выборочное отключение
Полное удаление — это радикальный метод. Чаще нужно отключить конкретные стили или скрипты для оптимизации.
Например, чтобы отключить скрипт jQuery UI, можно сделать так:
add_action('wp_enqueue_scripts', 'wpclass_dequeue_jquery_ui', 100);
function wpclass_dequeue_jquery_ui() {
wp_dequeue_script('jquery-ui-core');
wp_deregister_script('jquery-ui-core');
}Это полезно, если плагин подключает тяжелый скрипт, который не используется на нужных страницах.
Использование плагина Clearfy Pro для управления загрузкой
Для удобного управления отключением скриптов и стилей в WordPress можно использовать плагин Clearfy Pro. Он позволяет отключать ненужные скрипты и стили без написания кода, настраивать загрузку ресурсов на страницах и ускорять сайт.
Выводы и рекомендации
Удаление всех скриптов и стилей — мощный инструмент для разработчиков, который помогает:
- Создавать максимально легкие страницы;
- Избегать конфликтов между сторонними ресурсами;
- Оптимизировать скорость загрузки.
Однако применять этот метод нужно аккуратно, тестируя работу сайта после изменений.
Если хотите более тонкий контроль без ручного кода, рекомендую посмотреть на Clearfy Pro — это удобное решение для оптимизации загрузки ресурсов в WordPress.