В WordPress по умолчанию подключается скрипт comment-reply.js, который отвечает за функциональность вложенных комментариев (ответов на комментарии). Однако на многих сайтах, особенно с отключёнными комментариями или без использования вложенных комментариев, этот скрипт становится ненужным и лишь увеличивает время загрузки страниц.
Почему стоит отключать comment-reply.js? Оптимизация загрузки ресурсов
Скрипт comment-reply.js подключается на всех страницах, где разрешены комментарии, даже если на странице нет вложенных комментариев или комментарии отключены. Это приводит к дополнительным HTTP-запросам и увеличивает вес страницы, что негативно сказывается на скорости загрузки и SEO.
Отключение лишних скриптов — важный этап оптимизации WordPress-сайта, особенно если вы стремитесь к максимальной производительности и минимальному времени отклика.
С помощью правильного подхода можно selectively отключать comment-reply.js только там, где он не нужен, без потери функционала в местах, где он важен.
Как проверить, подключается ли comment-reply.js на вашем сайте
Для начала стоит проверить, действительно ли у вас подключается этот скрипт:
- Откройте любую страницу сайта в браузере.
- С помощью инструментов разработчика (F12 → Network или Sources) найдите файл
comment-reply.js. - Если скрипт загружается на страницах, где комментарии не используются, это повод отключить его.
Ещё один способ — использовать плагины для аудита загрузки скриптов, например, Query Monitor.
Практическое решение: как отключить comment-reply.js в WordPress
Для отключения скрипта используйте следующий код, который нужно добавить в файл functions.php вашей темы или в собственный плагин:
function wpsell_disable_comment_reply() {
if (is_singular() && comments_open() && get_option('thread_comments')) {
// Оставляем скрипт только там, где он нужен
return;
}
wp_deregister_script('comment-reply');
}
add_action('wp_print_scripts', 'wpsell_disable_comment_reply');Объяснение кода:
- Функция
wpsell_disable_comment_replyпроверяет, является ли текущая страница записью или страницей (функцияis_singular()), открыты ли комментарии (comments_open()) и включены ли вложенные комментарии (get_option('thread_comments')). - Если все условия выполнены, скрипт не отключается, чтобы функционал ответов на комментарии работал.
- Во всех остальных случаях скрипт
comment-replyудаляется из очереди загрузки с помощьюwp_deregister_script.
Альтернативный вариант: отключаем скрипт на всех страницах
Если вы уверены, что ответов на комментарии не используете нигде, можно полностью отключить скрипт без проверок:
function wpsell_disable_comment_reply_everywhere() {
wp_deregister_script('comment-reply');
}
add_action('wp_print_scripts', 'wpsell_disable_comment_reply_everywhere');Использование плагина Clearfy Pro для управления скриптами
Если вы предпочитаете не лезть в код, то удобным решением будет плагин Clearfy Pro. Он позволяет управлять оптимизацией загрузки скриптов, включая отключение comment-reply.js, через удобный интерфейс без необходимости писать код.
В Clearfy Pro достаточно перейти в раздел оптимизации и найти опцию отключения скрипта ответов на комментарии. Это особенно полезно для тех, кто ведёт сайты с комментариями, но не использует вложенность.
Как проверить результат и убедиться, что скрипт отключён
После внесения изменений:
- Очистите кеш сайта, если используете кэширование.
- Обновите страницу с комментариями и проверьте исходный код страницы (Ctrl+U), убедитесь, что скрипт
comment-reply.jsне загружается. - Проверьте, что функционал вложенных комментариев работает там, где он должен.
Заключение
Отключение скрипта comment-reply.js — простой и эффективный способ ускорить загрузку сайта на WordPress, особенно если у вас отключены или не используются вложенные комментарии. Это уменьшит число HTTP-запросов и облегчит работу браузера, что положительно скажется на пользовательском опыте и SEO.
Используйте проверенный код из статьи или плагин Clearfy Pro для удобного управления этой и другими оптимизациями на вашем сайте.