Как объединить внешний Javascript в WordPress

Опубликовано: 2022-04-22

Язык программирования javascript помогает веб-страницам отображать динамическое содержимое. Например, на веб-сайтах WordPress для встраивания аудио и видео используется Javascript. Он также используется для отображения галерей изображений, интерактивных меню, таймеров обратного отсчета и многого другого.

Файлы Javascript используют расширение файла .js, и на типичном веб-сайте WordPress файлы Javascript вставляются на страницы темой WordPress и активированными плагинами WordPress. Например, для корректной работы слайдера на домашней странице вашей темы может потребоваться файл с именем slider.js, тогда как для страницы контактной формы может потребоваться файл с именем form.js.

Я считаю, что Javascript необходим для современных веб-сайтов WordPress. К сожалению, это также может замедлить работу веб-сайта, если он не оптимизирован правильно.

В первых версиях протокола передачи гипертекста Javascript мог замедлять работу веб-сайтов, поскольку каждый файл Javascript должен был быть загружен и выполнен для правильного отображения страницы. Популярным методом оптимизации для решения этой проблемы является объединение нескольких файлов Javascript, чтобы уменьшить количество HTTP-запросов, которые должен делать браузер. Этот метод иногда называют агрегацией Javascript.

В этой статье я объясню, почему многие владельцы веб-сайтов объединяют внешний Javascript в WordPress , и поделюсь некоторыми полезными плагинами WordPress, которые можно использовать для выполнения этой задачи. Я также расскажу о том, почему большинству владельцев веб-сайтов больше не нужно объединять внешние файлы Javascript.

Зачем объединять внешние файлы Javascript в WordPress?

Хотя функции Javascript можно добавлять непосредственно в HTML с помощью тега SCRIPT, обычной практикой является сохранение кода Javascript во внешнем файле. Это более практично, так как это разделяет код и позволяет вызывать функции Javascript на многих страницах.

Каждый файл Javascript, который требуется веб-странице, должен быть загружен браузером в процессе рендеринга страницы.

Рендеринг страницы Когда кто-то просматривает веб-страницу, браузер создает страницу, обрабатывая каждую строку кода по порядку. Это известно как рендеринг страницы.
HTTP-запросы Запрос на доступ к файлу на сервере называется HTTP-запросом. Поэтому браузер должен выполнять HTTP-запрос для каждого файла Javascript, необходимого для страницы.
Рендеринг страницы и HTTP-запросы.

Когда файлы загружаются в последовательном порядке, большое количество HTTP-запросов может увеличить время, необходимое для загрузки веб-страницы. Таким образом, комбинируя внешние файлы Javascript в WordPress, вы можете значительно сократить количество HTTP-запросов, которые выполняются во время рендеринга страницы.

Некоторые поисковые системы рекомендуют объединять внешний Javascript в два файла.

Важные функции Javascript (файл 1) Первый файл Javascript содержит важные функции, необходимые для корректной обработки начальной загрузки страницы.
Менее важные функции Javascript (файл 2) Второй файл Javascript содержит менее важные функции, которые можно вызывать после загрузки страницы.
Важные функции Javascript должны быть приоритетными.

Если для правильного отображения веб-страницы требуется девять файлов Javascript, объединение внешних файлов JS в WordPress может помочь вам сократить общее количество HTTP-запросов для кода Javascript с девяти до двух. Внешние файлы CSS также можно комбинировать, что еще больше сокращает количество HTTP-запросов страницы.

Будет ли мой сайт WordPress работать быстрее, если я объединим внешние файлы Javascript?

Из-за улучшений в протоколе передачи гипертекста больше нет необходимости объединять файлы Javascript и файлы CSS, если только ваша веб-хостинговая компания не поддерживает HTTP/2.

В HTTP/1.0 и HTTP/1.1 каждый файл Javascript и CSS нужно было загружать в последовательном порядке. Это означало, что один файл должен быть загружен полностью, прежде чем начнется загрузка следующего файла. Протокол HTTP/2, запущенный в 2015 году, решил эту проблему, разрешив параллельную загрузку. Поскольку все внешние ресурсы могут быть загружены одновременно, больше нет никаких преимуществ в объединении файлов, если доступен HTTP/2.

HTTP/2 в настоящее время поддерживается 95,6% интернет-браузеров. По состоянию на 6 января 2022 года HTTP/2 используется 46,9% всех веб-сайтов в Интернете, хотя из приведенного ниже графика видно, что этот показатель значительно выше среди самых популярных веб-сайтов в Интернете.

Использование HTTP/2
Использование HTTP/2 по состоянию на 6 января 2022 г. (Источник: W3Techs)

Если ваш веб-хост поддерживает HTTP/2, объединение файлов может замедлить работу вашего веб-сайта, поскольку объединенные файлы Javascript больше, чем файлы, которые они объединяют. Это связано с тем, что браузеру требуется больше времени для загрузки двух больших файлов Javascript, чем для одновременной загрузки множества небольших файлов Javascript.

Две техники, которые я рекомендую использовать с Javascript, — это минимизация и отложенный синтаксический анализ.

Уменьшить Минификация включает в себя удаление ненужных символов, таких как пробелы и комментарии. Это приводит к тому, что файл Javascript становится меньше.
Отложить синтаксический анализ Код Javascript замедляет процесс рендеринга страницы. Для решения этой проблемы можно использовать два метода, называемые отложенным и асинхронным .
Другие методы оптимизации могут быть применены к Javascript для сокращения времени загрузки страницы.

Пожалуйста, прочитайте мою статью об отсрочке парсинга Javascript в WordPress, чтобы лучше понять, почему Javascript замедляет процесс рендеринга страницы.

Как объединить внешний Javascript в WordPress

Если ваша веб-хостинговая компания все еще использует HTTP 1.1, все равно рекомендуется комбинировать внешние файлы Javascript и файлы CSS в WordPress.

Обязательно запустите тесты производительности до и после объединения файлов, чтобы знать, как это повлияло на время загрузки страницы. Вы можете сделать это с помощью GTmetrix, Google PageSpeed ​​Insights и Pingdom Website Speed ​​Test.

Автооптимизация

Автооптимизация
Autoptimize имеет множество замечательных функций оптимизации.

Autoptimize — один из самых эффективных плагинов для оптимизации, доступных пользователям WordPress. Он поддерживает минификацию для HTML, а также комбинацию файлов и минимизацию для Javascript и CSS. Файлы Javascript также можно отложить, а не агрегировать, чтобы предотвратить блокировку рендеринга, а также есть параметры оптимизации для шрифтов Google.

Я использовал Autoptimize на многих веб-сайтах WordPress, так как это всегда ускоряет загрузку страниц.

Объедините внешний javascript в WordPress с помощью Autoptimize
Autoptimize поддерживает агрегацию файлов Javascript и CSS.
ОФИЦИАЛЬНЫЙ САЙТ
СКАЧАТЬ АВТООПТИМИЗИРОВАТЬ

Очистка активов

Очистка активов
Asset CleanUp предлагает минимизацию, объединение файлов, отложенный анализ и многое другое.

Asset CleanUp — это плагин WordPress для оптимизации с широкими возможностями настройки, который поддерживает минимизацию, комбинирование и отсрочку Javascript и CSS. Он также позволяет очищать HTML и предоставляет множество инструментов для управления шрифтами и уменьшения их влияния на время загрузки страницы.

Одной из выдающихся особенностей Asset Cleanup является менеджер Javascript и CSS. Это позволяет вам точно указать, на каких страницах загружаются файлы Javascript и CSS на вашем веб-сайте.

Объединение файлов Javascript в Asset CleanUp
Если Asset CleanUp обнаружит, что ваш веб-сайт поддерживает протокол HTTP/2, он посоветует вам не объединять файлы Javascript.
ОФИЦИАЛЬНЫЙ САЙТ
СКАЧАТЬ ОЧИСТКУ АКТИВОВ

WP Супер Минимизировать

WP Супер Минимизировать
WP Super Minify может сжимать и минимизировать файлы Javascript и CSS.

WP Super Minify делает все немного по-другому, предоставляя вам только возможность сжатия Javascript и сжатия CSS. При выборе WP Super Minify будет объединять, минимизировать и кэшировать ваши файлы.

Если вы ищете простое решение для оптимизации, которое просто работает, этот плагин может быть для вас.

Настройки WP Super Minify
WP Super Minify сделает все за вас.
ОФИЦИАЛЬНЫЙ САЙТ
СКАЧАТЬ WP SUPER MINIFY

Объединение внешних файлов Javascript с помощью плагина WordPress Cache

Лучшие плагины для кэширования WordPress включают в себя множество дополнительных инструментов оптимизации, которые помогут вам повысить производительность сайта. Поэтому существует высокая вероятность того, что ваше существующее решение для кэширования WordPress позволит вам комбинировать внешние файлы Javascript и CSS.

Например, в WP Rocket есть опции для минимизации и объединения файлов Javascript и CSS. Файлы Javascript также можно отложить, чтобы предотвратить блокировку рендеринга.

Я рекомендую проверить время загрузки страницы, используя комбинацию файлов, используя предпочитаемый плагин кэширования WordPress, а затем сравнить результаты с автономными решениями для оптимизации Javascript, такими как Autoptimize и Asset CleanUp.

Объединение Javascript в WP Rocket
WP Rocket предлагает множество вариантов оптимизации для файлов Javascript и CSS.

Последние мысли

Надеюсь, вам понравился этот взгляд на объединение внешних файлов Javascript. Как вы видели, больше нет необходимости объединять файлы Javascript, если ваш веб-хост поддерживает HTTP/2, поскольку параллельная загрузка файлов более эффективна.

Если ваш веб-хостинг поддерживает только HTTP/1.1, вы можете комбинировать внешний javascript в WordPress, чтобы сократить время загрузки страницы.

Рекомендуем прочитать: удаление неиспользуемого CSS в WordPress

Спасибо за чтение.

Кевин