Для SEO-специалиста изучать JavaScript необязательно, но нужно понимать некоторые особенности его применения. И тогда JS будет другом, оказывая помощь в продвижении сайта. Напротив, если не уделить пониманию JavaScript должного внимания, то высока вероятность допустить при проведении технической оптимизации сайта ошибки, которые затруднят его продвижение.

Взаимодействие JS и Google

Поисковики стремятся видеть весь контент, который сайт демонстрирует пользователям. И для этого, к примеру, в Google используется WRS – Web Rendering Service, на который возложена миссия по рендерингу и сканированию страниц.

Сервис WRS – это один из элементов Googlebot, который, кстати, работает так, чтобы как можно меньше мешать пользователям сайта. И WRS позволяет обнаруживать и анализировать ресурсы, которые напрямую не относятся к главному контенту, чтобы по возможности игнорировать их.

В то же время Google проводит сканирование и кэширование всех дополнительных ресурсов, которые нужны для корректного отображения веб-страницы – CSS, JS, XHR-запросы, API и т. д.

Пример взаимодействия Google с сайтом

Собственно, владельцу сайта вникать в технические моменты нет нужды, если в его распоряжении есть нанятый частный SEO специалист с богатым опытом работы. Поскольку такой специалист в курсе того, что нужно делать. При этом сотрудничество с ним выгоднее, чем заказ услуг по СЕО в компании, где в случае чего сложно найти виноватого, а цены довольно высокие. Рассматривая вопрос стоимости, всегда нужно помнить, что она находится в прямой зависимости от конкуренции в выбранной тематике и регионе. К примеру, на продвижение сайта цены Екатеринбург держит выше, чем, к примеру, Белгород. Потому что в городах-миллионниках интенсивность борьбы за внимание потенциального клиента намного выше.

продвижение сайта цены Екатеринбург
JavaScript

Но вернемся к поисковикам и тому, как они взаимодействуют с сайтами, использующими JavaScript:

  1. Сперва бот Google создает запрос формата GET, получая от сайта содержимое веб-страниц и заголовки HTTP. Затем URL ставят в очередь для отображения, если в robots отсутствует запрет на сканирование.
  2. Обработка. При обработке веб-страницы роботы в том числе ищут и сканируют ссылки на другие страницы, а также файлы, которые используются в построении HTML-документа. Найденные ссылки сортируются по приоритету. Если требуется подгрузить JS и CSS файлы, то в ссылках используют атрибут <link>. Если же речь о внутренних/внешних ссылках, то применяют комбинацию <a href=…>. Важно: ссылки, которые подгружаются через JavaScript, будут найдены только после того, как завершится процедура рендеринга. А это снижает скорость сканирования, т. к. поисковик вынужден проводить регулярную коррекцию структуры и оценивать важность каждой страницы в процессе рендеринга и нахождения ссылок, оформленных через JavaScript.
  3. Кэширование. CSS, HTML и JS-файлы Google кэширует, но игнорирует устанавливаемый сайтом тайминг. То есть новую копию в случае изменений Google загрузит, когда сам сочтет нужным. А это порой приводит к применению неактуальных CSS и JavaScript-ресурсов. В качестве одного из решений этой проблемы выступает применение уникальных цифровых отпечатков, из-за чего при обновлении файлов будут формироваться их новые копии. И поисковик станет использовать свежую версию для загрузки веб-страницы.
  4. Дубли и недостоверные 404. JavaScript иногда становится причиной возникновения дублей, если загрузка оригинального контента происходит динамическим путем. В таком случае поисковик увидит лишь дубли шаблонов. Возможным решением в таком случае становится рендеринг, который проводится непосредственно на стороне самого сервера.

Учитывая, что все эти моменты могут неприятно сказаться на СЕО-продвижении, важно заручиться помощью опытного специалиста, который сможет их обнаружить и составить грамотное ТЗ для программиста на исправление.