Was ist JavaScript?
Die Computerprogrammiersprache JavaScript sollte nicht mit einer anderen Sprache, Java, verwechselt werden. JavaScript ist eine der am schnellsten wachsenden Sprachen der Welt.
JavaScript (JS) wurde ursprünglich entwickelt, um HTML-Webseiten die Interaktion mit Java-Webanwendungen zu ermöglichen.
JS wird seitdem hauptsächlich verwendet, um Animationen und Effekte hinzuzufügen, um Seiten dynamischer zu machen. Dies unterscheidet sich grundlegend von bestehenden HTML- und CSS-Sprachen, bei denen Sie die Grundstruktur festlegen und dann entwerfen, wie die Seite aussehen soll.
Dieser umfassende JavaScript-SEO-Leitfaden zielt darauf ab, Entwickler und SEO-Experten mit dem Wissen auszustatten, um JavaScript effektiv zu nutzen.
Vor- und Nachteile von JavaScript
Vorteile von JavaScript
- Unterstützt in allen modernen Browsern.
- Es ermöglicht die Erstellung benutzerfreundlicher, hochgradig interaktiver Websites.
- JavaScript-Code ist relativ einfach zu debuggen und zu testen, da er Zeile für Zeile interpretiert wird.
- Es kann sowohl von Front-End- als auch von Back-End-Entwicklern verwendet werden.
Nachteile von JavaScript
- Google ist möglicherweise nicht in der Lage, in JavaScript gerenderte Zielseiten zu generieren und zu indizieren.
- Die Anforderung, dass JavaScript auf einer Seite gerendert werden muss, kann sich negativ auf zwei Schlüsselbereiche auswirken:
- Website-Geschwindigkeit
- Suchmaschinen-Crawling und Indizierung
Abhängig von der von Ihnen verwendeten Rendering-Methode können Sie jedoch möglicherweise die Seitenladegeschwindigkeit verlangsamen und sicherstellen, dass der Inhalt für Suchmaschinen zum Crawlen und Indizieren zugänglich ist.
JavaScript sorgt für schnelles Laden von Seiten, bietet eine reichhaltige Benutzeroberfläche und ist einfach zu implementieren. Allerdings ändert sich die Fließfähigkeit des Browsers mit der Benutzerinteraktion, was es für Suchmaschinen schwierig macht, die Seite zu verstehen und dem Inhalt einen Wert zuzuordnen.
Suchmaschinen haben ihre eigenen Einschränkungen bei der Verarbeitung von Webseiten, die JavaScript-Inhalte enthalten. Google führt einen anfänglichen Crawl der Seite durch und indiziert, was es findet. Sobald die Ressourcen verfügbar sind, greifen die Bots darauf zurück, das JS auf diesen Seiten zu rendern. Das bedeutet, dass Inhalte und Links, die auf JavaScript angewiesen sind, Gefahr laufen, von Suchmaschinen nicht gesehen zu werden, was möglicherweise der SEO der Website schadet.
JavaScript erstellen
Das Rendering konzentriert sich auf das Abrufen verwandter Daten zum Füllen einer Seite und visueller Layoutvorlagen und -komponenten und deren anschließendes Kombinieren, um HTML zu erstellen, das ein Webbrowser anzeigen kann. Hier müssen wir zwei Grundkonzepte einführen; serverseitiges Rendering und clientseitiges Rendering. Für jeden SEO, der JavaScript-Websites verwaltet, ist es entscheidend, den Unterschied zwischen den beiden zu erkennen.
Der eingebaute Ansatz beinhaltet serverseitige Verarbeitung, einen Crawler, der den HTML-Code abruft, der die Seite vollständig beschreibt, oder einen Suchmaschinen-Bot (Crawler). Ihr Crawler oder Suchmaschinen-Bot muss also die angehängten Assets (CSS, Bilder usw.) herunterladen, um zu zeigen, wie die Seite gestaltet wurde. Da dies der traditionelle Ansatz ist, haben Suchmaschinen im Allgemeinen kein Problem mit serverseitig gerenderten Inhalten. Websites, die traditionell auf diese Weise betrieben wurden, sind in PHP, ASP oder Ruby programmiert und haben möglicherweise gängige Content-Management-Systeme wie Kentico, WordPress oder Magento verwendet.
Der modernere clientseitige Rendering-Ansatz ist jedoch ganz anders. Es wurde festgestellt, dass viele Suchmaschinen-Bots auf diese Weise Probleme haben, weil als Ergebnis des primären Ladens eine leere HTML-Seite mit wenig Inhalt an den Bot zurückgespiegelt wird. Der enthaltene JavaScript-Code sendet dann eine Anfrage an den Server und verwendet die Daten, die er zurückerhält, um die Seite zu rendern und zu rendern.
JavaScript mit dem DOM erstellen
Das JavaScript-Rendering funktioniert, wenn das Document Object Model (DOM) der Seite ausreichend geladen ist. Um es weiter zu erklären, das DOM ist die Grundlage der dynamisch erstellten Seite. Standard-HTML-Seiten sind statisch, wenn sie nicht geändert werden, während dynamische Seiten Seiten sind, die sich ändern und spontan erstellt werden können.
Wie bereits erwähnt, sind JavaScript und Ressourcen unerlässlich, um eine Seite zu erstellen, auf der JavaScript später ausgeführt werden kann. JavaScript nimmt dann Änderungen am DOM vor und stellt den HTML-Code der jeweiligen Webseite bereit. Der ausgewählte Suchmaschinen-Bot wartet in der Regel etwa drei Sekunden, bevor er einen Schnappschuss des generierten HTML-Codes macht.
Funktionsweise der JavaScript-Generierung mit Googlebot
Der Googlebot verarbeitet JavaScript in drei Hauptphasen:
- Krabbeln
- Wiedergabe
- Indizierung
Wie im Google-Diagramm gezeigt, platziert der Googlebot Seiten zum Crawlen und Rendern in eine Warteschlange. Der Googlebot empfängt eine URL aus der Crawling-Warteschlange und liest die robots.txt-Datei, um festzustellen, ob die URL zulässig ist.
Der Googlebot parst dann die HTML-Antwort in die andere URL und fügt sie der Crawl-Warteschlange hinzu. Wenn es die Ressourcen des Googlebots zulassen, rendert ein Chromium die Seite und führt das JavaScript aus. Das generierte HTML wird dann verwendet, um die Seite zu indizieren.
Da Google zwei separate Indexierungswellen durchführt, ist es möglich, dass einige Details während des Indexierungsprozesses übersehen wurden. Wenn Sie beispielsweise wichtige Titel-Tags und Meta-Beschreibungen nicht serverseitig erstellen, könnte Google dies auf dem zweiten Weg übersehen und negative Auswirkungen auf Ihre organische Sichtbarkeit in den SERPs haben.
Was ist der Unterschied zwischen Crawling und Indizierung?
Crawling und Indizierung sind zwei verschiedene Dinge, die in der SEO-Branche verwechselt werden können. Crawling ist mit einem Suchmaschinen-Bot wie Googlebot verbunden, der den gesamten Inhalt oder Code auf einer Webseite entdeckt und analysiert. Andererseits bedeutet die Indizierung, dass die Seite mit größerer Wahrscheinlichkeit auf den Suchmaschinen-Ergebnisseiten (SERPs) erscheint.
Trotz der Verbesserung von Bots beim Crawlen und Indexieren macht JavaScript diesen Prozess viel weniger effizient und teurer. Die integrierten Inhalte und Links von JavaScript erfordern einen enormen Aufwand für Browser, um ganze Webseiten darzustellen. Diese Suchmaschinen werden von JavaScript generierte Seiten crawlen und indizieren, aber dies wird wahrscheinlich länger dauern als eine statische Seite, da zwischen dem Crawler und dem Indexer hin- und hergependelt wird. Im Gegensatz dazu, dem Googlebot zu erlauben, die Seite durch Herunterladen und Extrahieren von Links aus HTML- und CSS-Dateien zu indizieren, ist JavaScript ein zusätzlicher Schritt. Der JavaScript-Rendering-Prozess als Ganzes ist viel komplexer.