Key-Content ins statische HTML — Windsurf
Wenn du die Seite per View-Source öffnest und deinen Content nicht in plain text findest, können AI-Crawler es auch nicht. Google rendert JS irgendwann; AI-Crawler oft gar nicht.
In Windsurf fixen
Codeium agentische AI-IDE mit Cascade
Windsurf Cascade kann das ganze Projekt durchlaufen und Multi-File-Edits in einem Rutsch anwenden. Prompt unten in deinen Windsurf-Chat einfügen und der Fix rollt in einem Rutsch über das ganze Projekt aus.
Anderes Tool? Wähle deinen Stack:
Der Prompt für Windsurf
Diesen Text exakt so in deinen Windsurf-Chat kopieren und einfügen.
Using Windsurf Cascade, apply these edits across the project in one pass: Increase static content density 1. Identify the page sections that currently render as empty divs filled by JavaScript. 2. Move the actual text content into the static HTML — headlines, body copy, lists. 3. Trim wrapper divs that exist only for layout — fewer divs, more semantic tags (article, section, p).
Warum das wichtig ist
Korollar zum SSR-Prompt. Selbst mit korrekt gesetztem SSR kannst du client-gerenderten Content haben wenn du falsche Komponenten `"use client"` markierst oder Daten in useEffect lädst die fürs First-Paint gebraucht werden.
View-Source (nicht Inspect) ist die Wahrheit. Wenn deine Headlines im View-Source sind — gut. Nur in Inspect sichtbar (das JS ausführt) — AI-Crawler sehen sie nicht. Google schon, irgendwann, aber Delay und Reliability-Penalty sind real.
Fix bedeutet meist 5-10 Komponenten von Client auf Server-rendered umbauen. Regel: Haupt-Page-Content server-rendered; interaktive Widgets (Suche, Chat, Filter) `"use client"`.
So nutzt du diesen Prompt in Windsurf
- 1. Dein Windsurf-Projekt öffnen.
- 2. Prompt oben mit Copy-Button kopieren.
- 3. In Windsurf-Chat einfügen und senden.
- 4. Diff reviewen, Änderungen akzeptieren, neu deployen.
- 5. Fix mit der Checkliste unten verifizieren.
Typische Fehler vermeiden
- error_outlineContent in useEffect laden und Loading-Skeleton als First-Paint rendern — das Skeleton ist was im HTML steht, nicht der Content.
- error_outlineLayout-Datei als `"use client"` in Next.js — cascadet auf jede Seite.
- error_outline`next/dynamic` mit `ssr: false` für Content der public sein soll.
- error_outlineContent hinter State-Toggle verstecken (z.B. JS-initialisierter Tab) — versteckter Content im HTML ist OK; nicht gerenderter Content nicht.
Wie du prüfst ob der Fix geklappt hat
- check_circleView-Source (Strg+U) — Haupt-Headline, erster Absatz, CTAs müssen im HTML stehen.
- check_circleJS deaktivieren — reloaden — Haupt-Content muss rendern und lesbar bleiben.
- check_circle`curl -s URL | grep "dein keyword"` — liefert Matches für wichtigen Content.
- check_circleMit https://www.browserless.io/ oder Headless-Fetcher ohne JS testen — Content erscheint.
Häufige Fragen
Soll ich alles server-seitig rendern?expand_more
Was ist mit auth'd App-Pages?expand_more
Hilft ein Loading-Spinner?expand_more
Alle 34 Prompts passend zu deiner Windsurf-Site?
Pantra scannt deine Site in 10 Sekunden, erkennt den Stack und generiert genau die Prompts die passen — nur die du brauchst.
Site scannenÄhnliche Windsurf-Prompts
Server-Side Rendering einbauen — Windsurf
Stack-spezifischer Prompt damit Key-Content im HTML-Response landet, nicht nur per JS gerendert wird.
AI-Suche / GEOllms.txt-Datei anlegen — Windsurf
Stack-spezifischer Prompt um llms.txt zu publizieren — ein kuratierter Guide der LLMs sagt worum es auf deiner Site geht.
AI-Suche / GEOGPTBot, ClaudeBot und PerplexityBot erlauben — Windsurf
Prompt um AI-Crawler zu whitelisten damit ChatGPT, Claude und Perplexity deine Seiten zitieren können. In jedem AI-Stack.
AI-Suche / GEOJSON-LD Structured Data setzen — Windsurf
Prompt um Organization, Article und FAQ JSON-LD im <head> zu setzen — sagt Google und AI-Crawlern genau was die Seite repräsentiert.