Zarvon System

Programmatic SEO System aufbauen

Ein Fundament, in dem Erstellung, Qualitätsprüfung und Indexierung über Code geregelt sind — nicht über Disziplin.

Das Problem

Wo es im Alltag hakt

pSEO scheitert selten an der Idee, meist am Chaos: kein sauberes Datenmodell, dünne Seiten, eine Sitemap, die auch Entwürfe listet, keine Stelle, an der Qualität geprüft wird. Das Ergebnis ist Index-Bloat statt Wachstum.

Die Lösung

Was ein Zarvon-System hier leistet

Zarvon baut das Fundament: ein klares Datenmodell mit Pflichtfeldern, ein wiederverwendbares Template, ein Qualitäts-Gate und eine Sitemap, die an den Status gekoppelt ist. Das echte Code-Detail, auf dem auch diese Seite läuft: generateStaticParams() iteriert nur über publishedPseo() — also PSEO_PAGES.filter(p => p.status === 'published') — und dynamicParams=false sorgt dafür, dass jeder unbekannte oder auf draft stehende Slug ein 404 wirft. Du lieferst Datenquelle und Felddefinitionen; Output ist ein laufendes System, das aus jedem freigegebenen Datensatz eine indexierbare Seite macht und Entwürfe systematisch draußen hält.

Ein System, kein Einzelfall. Ich baue den Ablauf einmal sauber — dann läuft er bei jedem Stück Content gleich.
Beispiel-Workflow

So läuft das System

01
Datenmodell und Pflichtfelder definieren, damit jeder Datensatz die Mindest-Datendichte für eine eigenständige Seite hat
02
Wiederverwendbares Template und Komponenten bauen und gegen einen echten Datensatz prüfen, bevor in die Breite generiert wird
03
Das Routing an den Status koppeln: generateStaticParams() rendert nur freigegebene Seiten, dynamicParams=false macht draft-Slugs zu 404
04
Qualitäts-Gate definieren mit konkreten Kriterien — leere Pflichtfelder, gegen Nachbarseiten austauschbarer Text, fehlende eigene These — und die Konsequenz festlegen: durchgefallene Seiten bleiben draft
05
FAQ-/Item-Schema einbinden und interne Verlinkung zwischen verwandten Seiten automatisieren
06
Sitemap aus den freigegebenen Seiten generieren und den Search-Console-Loop aufsetzen, um Indexierung und Duplikate zu überwachen
Deine Rolle

Was du lieferst — und was das System übernimmt

Du definierst gemeinsam mit uns die Pflichtfelder und die Gate-Schwellen (welche Datendichte reicht, welche Felder müssen unique sein). Im laufenden Betrieb prüfst du die Liste der Seiten, die das Gate auf draft hält, und entscheidest pro Seite über Freigabe oder Überarbeitung. Das Setzen von status:'published' ist der bewusste Akt, der eine Seite in Routing und Sitemap bringt — diese Entscheidung bleibt bei dir.

Use Cases

Typische Anwendungsfälle

  • Ein Team will Nischenseiten in der Breite ausrollen und braucht eine Stelle, die garantiert verhindert, dass halbfertige Seiten in den Index rutschen — das Status-gekoppelte Routing liefert genau das
  • Ein SaaS baut sein Long-Tail-Programm und will Use-Case-, Integrations- und Vergleichsseiten aus einem Modell statt aus drei separaten Projekten
  • Eine Agentur will dasselbe System über mehrere Kunden wiederverwenden und braucht ein Fundament, das pro Kunde nur konfiguriert, nicht neu gebaut wird
Toolstack

Welches Tool welche Rolle übernimmt

Next.js / Astroträgt das System: generateStaticParams() rendert ausschließlich freigegebene Seiten, dynamicParams=false macht jeden draft- oder unbekannten Slug zum 404 — die Garantie gegen Index-Bloat steckt im Code, nicht in Disziplin.
JSON oder Airtableist die Single Source of Truth: ein Datensatz pro Seite mit Pflichtfeldern, die das Gate prüfbar machen.
Schema.orgwird im Template hinterlegt, sodass jede generierte Seite strukturierte Daten ausliefert, ohne dass jemand sie pro Seite einbaut.
Google Search Consoleschließt den Loop: zeigt Indexierungsstatus und Duplikatsmeldungen, damit Datenmodell und Gate-Schwellen datenbasiert nachgeschärft werden.
Warum ein System

Warum nicht einfach mehr Content manuell produzieren?

Manuell gepflegte Seiten skalieren nicht und veralten ungleichmäßig — und niemand prüft zuverlässig, ob ein Entwurf versehentlich live geht. Ein System macht Erstellung, Qualität und Indexierung reproduzierbar: Das Gate ist die eine Qualitätsstufe, das Status-gekoppelte Routing die eine Garantie, dass nur Freigegebenes erreichbar ist.

FAQ

Häufige Fragen

Wie verhindert ihr Index-Bloat technisch?

Über das Routing selbst. generateStaticParams() iteriert nur über publishedPseo() — Seiten mit status:'published'. dynamicParams=false bedeutet: jeder Slug, der nicht in dieser Liste steht, ergibt ein 404. Eine draft-Seite hat damit schlicht keine erreichbare URL und kann weder indexiert noch in die Sitemap aufgenommen werden. Diese Seite hier läuft auf genau diesem Mechanismus.

Welche Datenquelle nutzt das System?

JSON für versionierte, im Code lebende Daten, Airtable für Teams, die ohne Entwickler pflegen wollen, oder ein Headless-CMS bei bestehendem Redaktions-Setup. Entscheidend ist nicht die Quelle, sondern dass sie Pflichtfelder erzwingt, damit das Gate auf echter Datendichte prüfen kann.

Wie startet man am sinnvollsten?

Mit einem Cluster und einem Template. Erst an einem realen Seitentyp Datenmodell, Gate-Kriterien und Routing sauber aufsetzen, die Indexierung in der Search Console beobachten — und dann auf weitere Cluster skalieren. So ist das Fundament erprobt, bevor es in die Breite geht.

Lass dein Content-System bauen

Starte mit einem kostenlosen System-Audit — wir zeigen dir das größte Automationspotenzial in deinem Content-Prozess.