JavaScript i SEO – jak połączyć te kwestie?

Pozycjonowanie

Jedną z ważnych umiejętności przy zajmowaniu się SEO jest zrozumienie potencjalnego wpływu JavaScipt na pozycjonowanie strony. Jeśli algorytmy crawlujące nie dadzą rady zindeksować Twojej witryny ani zrozumieć zamieszczonego na niej contentu, strona nie zostanie wypozycjonowana w wynikach wyszukiwania.

Czym jest JavaScript?

Gdy tworzysz stronę internetową, będzie się ona prawdopodobnie składała z trzech głównych komponentów:

  1. HTML – kręgosłup każdej strony, to w kodzie HTML znajdują się wszelkie informacje o strukturze strony (nagłówki, akapity, listy itp.), w skrócie wszystkie statyczne elementy strony.
  2. CSS – na tę część składa się design, wykorzystana skórka, ogólnie wszystkie elementy dotyczące graficznej prezentacji strony.
  3. JavaScript – Interaktywne elementy dynamicznej części strony.

JavaScript umieszcza się albo w dokumentacji HTML pod tagiem <script>, albo się linkuje do jej elementów. Istnieje mnóstwo różnych bibliotek i środowisk, najbardziej znane to jQuery, AngularJS, ReactJS.

Dlaczego JavaScript jest wyzwaniem dla SEO?

Istnieją trzy główne kwestie, na które trzeba spojrzeć przy tworzeniu elementów JavaScript:

  1. Możliwość crawlowania strony przez boty wyszukiwarek
  2. Zdolność botów do uzyskania informacji na temat umieszczonego przez Ciebie contentu
  3. Opóźnienie działania strony, czyli ścieżka krytyczna renderowania zawartości.

Możliwość crawlowania

Czy boty mogą przeczesać URLe i zrozumieć strukturę Twojej strony? Należy zwrócić uwagę na dwie kwestie. Po pierwsze, należy zastosować odpowiednią strukturę linkowania wewnętrznego w taki sposób, żeby JavaScript nie stosował zamiennika dla tagów HTML. Po drugie trzeba uważać, żeby przypadkiem nie zablokować wyszukiwarkom dostępu do elementów JavaScript.

Jeśli dojdzie do takiej blokady, algorytmy szukające nie otrzymają pełnych informacji na temat zawartości Twojej strony. Oznacza to, że wyszukiwarka nie będzie widzieć Twojej strony w taki sam sposób co użytkownik końcowy. Może to znacznie obniżyć pozycję witryny w wynikach wyszukiwania. Warto przebadać stronę pod tym względem i sprawdzić, jak widzą ją wyszukiwarki.

Z kolei linkowanie wewnętrzne musi zostać zaimplementowane z normalnym tekstem zakotwiczenia w kodzie HTML, nie należy w tym przypadku korzystać ze skryptów JavaScript. Jest to bardzo istotne dla algorytmów szukających, które w ten sposób rozumieją w pełni strukturę Twojej strony i odpowiednio ją indeksują.

Dostępność i szybkość

Algorytmy szukające crawlują stronę „bez opamiętania”, Google na przykład potrafi przetworzyć pewne elementy JavaScript. Mimo to często zdarza się, że mają problem z uzyskaniem dostępu do wielu elementów na stronie, co ponownie sprawia, że nie zostaną one zindeksowane.

Istnieje kilka przypadków, gdy wyszukiwarka może mieć problem z uzyskaniem dostępu do treści na Twojej stronie.

Jeśli użytkownik musi dokonać jakiejś złożonej interakcji by zobaczyć rozszerzoną zawartość, wyszukiwarka prawdopodobnie to zignoruje. Algorytmy Google są w tym względzie leniwe. Jeśli czegoś nie da się kliknąć czy przewinąć, prawdopodobnie zostanie to pominięte.

Jeśli skrypt JavaScript jest ustawiony w taki sposób, żeby uruchomić się po paru sekundach (prawdopodobnie więcej niż 5), wyszukiwarka może ruszyć już dalej i zignorować pojawiającą się treść.

W tym przypadku ciężko określić dokładny czas potrzebny na zładowanie pełnej wersji strony. John Mueller wspomniał kiedyś, że nie ma dokładnej wartości, ale dobrze jeśli cała strona ładuje się w ciągu 5 sekund. Screaming Frog przeprowadził kiedyś testy dotyczące tej kwestii i otrzymane przez nich wyniki również wynoszą około 5 sekund.

5 sekund (+normalny czas ładowania) to również wartość wykorzystywana przez narzędzia Google typu PageSpeed, Mobile Friendliness Tool czy Fetch as Google.