Auto-commit: 2026-05-31 21:59
This commit is contained in:
434
skills/wordpress-seo-publishing/SKILL.md
Normal file
434
skills/wordpress-seo-publishing/SKILL.md
Normal file
@@ -0,0 +1,434 @@
|
||||
---
|
||||
name: wordpress-seo-publishing
|
||||
description: WordPress SEO & KI Content Publishing Agent. Creates, evaluates and publishes high-quality blog articles for WordPress. Acts as full content & SEO agent: topic research, keyword analysis, cannibalization prevention, content cluster strategy, writing, SEO optimization, KI-search optimization (GEO), and WordPress publishing via REST API. Triggers on mentions of "Blogpost", "Artikel erstellen", "Content", "SEO", "manonamission", "WordPress Artikel".
|
||||
---
|
||||
|
||||
# WordPress SEO & KI Content Publishing Skill
|
||||
|
||||
## Zweck
|
||||
|
||||
Dieser Skill erstellt, bewertet und veröffentlicht hochwertige Blogartikel für WordPress.
|
||||
|
||||
Er fungiert als vollständiger Content- und SEO-Agent, der:
|
||||
|
||||
- eigenständig Themen auswählt
|
||||
- SEO-Daten analysiert
|
||||
- Keyword-Kannibalisierung vermeidet
|
||||
- Content-Cluster aufbaut
|
||||
- Inhalte schreibt
|
||||
- für klassische Suchmaschinen und KI-Suchsysteme optimiert
|
||||
- Inhalte veröffentlicht und dokumentiert
|
||||
|
||||
---
|
||||
|
||||
# 1. Themenfindung (automatisch & datenbasiert)
|
||||
|
||||
Der Skill wählt Themen selbstständig aus.
|
||||
|
||||
## Datenquellen
|
||||
|
||||
- **Matomo Analytics** (Primär – tatsächliches Nutzerverhalten)
|
||||
- URL: `https://matomo.kies-media.de`
|
||||
- Credentials: `$MATOMO_USER`, `$MATOMO_PASS` in `.profile`
|
||||
- Site: manonamission.de
|
||||
- API: `https://matomo.kies-media.de/index.php?module=API`
|
||||
- **Matomo zuerst auswerten**, bevor externe Tools genutzt werden
|
||||
- Auszuwertende Metriken:
|
||||
- Seiten mit höchstem Traffic → welche Themen funktionieren
|
||||
- Einstiegsseiten → worüber kommen Nutzer
|
||||
- Suchbegriffe (Site Search + organische Keywords)
|
||||
- Landing-Pages mit hoher Bounce-Rate → Optimierungspotenzial
|
||||
- Referrer-Quellen → woher kommt der Traffic
|
||||
- Geräte-/Länderdaten → Zielgruppe verstehen
|
||||
- Zeitverlauf → Trends erkennen (welche Themen steigen/fallen)
|
||||
- **Konkurrenzseiten** (analysieren was funktioniert)
|
||||
- Top-Wettbewerber im Männer-Lifestyle-Bereich identifizieren
|
||||
- Erfolgreiche Artikel-Themen extrahieren
|
||||
- Content-Gaps finden (Themen die die Konkurrenz abdeckt, manonamission.de aber nicht)
|
||||
- Social-Shares / Engagement der Konkurrenz auswerten
|
||||
- **Google Trends** (Trend- und Saisonalitätserkennung)
|
||||
- Trendverlauf für relevante Keywords
|
||||
- Saisonalitäten erkennen (z.B. Grillsaison, Fitness im Januar)
|
||||
- Regionales Interesse (Deutschland Fokus)
|
||||
- Verwandte Suchanfragen und aufstrebende Themen
|
||||
- **Eigene KI-Ideen** (kreative Themenfindung)
|
||||
- Basierend auf Matomo-Daten + Konkurrenzanalyse + Trend-Erkenntnissen
|
||||
- Lücken im bestehenden Content identifizieren
|
||||
- Innovative Winkel / neue Perspektiven auf bewährte Themen
|
||||
- Cross-Thema-Ideen (Schnittmengen zwischen Clustern)
|
||||
- Aktuelle gesellschaftliche Entwicklungen auf die Zielgruppe beziehen
|
||||
- **Google Keyword Planner** (offizielle Google Ads-Daten)
|
||||
- Zugänglich über Google Ads Account
|
||||
- Liefert: Suchvolumen, CPC, Wettbewerb, Keyword-Ideen
|
||||
- Historische Suchvolumendaten
|
||||
- Keyword-Vorschläge basierend auf Seed-Keywords
|
||||
- Standort- und Sprachfilter (Deutschland, Deutsch)
|
||||
- SERP-Analyse (Top 10 Ergebnisse)
|
||||
- aktuelle Branchentrends
|
||||
- News / Entwicklungen im Themenfeld
|
||||
|
||||
## Bewertungskriterien
|
||||
|
||||
- **Matomo-Daten** (tatsächliche Performance bestehender Inhalte)
|
||||
- Suchvolumen
|
||||
- Keyword Difficulty
|
||||
- CPC
|
||||
- Trendverlauf
|
||||
- Suchintention
|
||||
- erwarteter Traffic
|
||||
- Wettbewerbssituation
|
||||
|
||||
## Matomo API-Nutzung
|
||||
|
||||
### Authentifizierung (token_auth)
|
||||
```bash
|
||||
# Token aus Matomo holen (nach Login)
|
||||
source ~/.profile
|
||||
# Methode 1: API-Sessions (empfohlen)
|
||||
# Login via API
|
||||
TOKEN=$(curl -sk "$MATOMO_URL/index.php?module=API&method=UsersManager.getTokenAuth&userLogin=$MATOMO_USER&md5Password=$(echo -n "$MATOMO_PASS" | md5sum | cut -d' ' -f1)&format=JSON" | python3 -c "import sys,json; print(json.load(sys.stdin).get('value',''))")
|
||||
|
||||
# Methode 2: Cookie-Login + manuelle Token-Erstellung
|
||||
# In Matomo UI: Einstellungen → API → token_auth generieren
|
||||
```
|
||||
|
||||
### Nützliche API-Calls
|
||||
```bash
|
||||
# Top-Seiten (letzte 30 Tage)
|
||||
curl -sk "$MATOMO_URL/index.php?module=API&method=Actions.getPageUrls&period=month&date=yesterday&format=JSON&token_auth=$TOKEN"
|
||||
|
||||
# Suchbegriffe
|
||||
curl -sk "$MATOMO_URL/index.php?module=API&method=Actions.getSiteSearchKeywords&period=month&date=yesterday&format=JSON&token_auth=$TOKEN"
|
||||
|
||||
# Einstiegsseiten
|
||||
curl -sk "$MATOMO_URL/index.php?module=API&method=Actions.getEntryPageUrls&period=month&date=yesterday&format=JSON&token_auth=$TOKEN"
|
||||
|
||||
# Referrer
|
||||
curl -sk "$MATOMO_URL/index.php?module=API&method=Referrers.getReferrerType&period=month&date=yesterday&format=JSON&token_auth=$TOKEN"
|
||||
```
|
||||
|
||||
## Auswahlregel
|
||||
|
||||
Nur Themen werden gewählt, wenn:
|
||||
|
||||
- ausreichendes Suchvolumen vorhanden ist
|
||||
- realistische Ranking-Chance besteht
|
||||
- zur bestehenden Website-Strategie passen
|
||||
- kein Duplicate-Intent entsteht
|
||||
- kein bestehender Content bereits dominiert
|
||||
|
||||
---
|
||||
|
||||
# 2. Vermeidung von Keyword-Kannibalisierung
|
||||
|
||||
Vor jedem Artikel:
|
||||
|
||||
- Analyse aller bestehenden Inhalte
|
||||
- Prüfung auf gleiche oder ähnliche Suchintention
|
||||
- Prüfung von Keywords, Slugs, Kategorien und Tags
|
||||
|
||||
## Regeln
|
||||
|
||||
- Kein neuer Artikel darf bestehende Rankings kannibalisieren
|
||||
- Bei Überschneidung:
|
||||
- bestehenden Artikel erweitern oder
|
||||
- Longtail-Keyword wählen oder
|
||||
- Themenintent sauber trennen
|
||||
|
||||
---
|
||||
|
||||
# 3. Content-Cluster Strategie (mittelfristig)
|
||||
|
||||
## Ziel
|
||||
|
||||
Aufbau strukturierter Themen-Cluster zur Steigerung der Topical Authority.
|
||||
|
||||
## Aufbau
|
||||
|
||||
Ein Cluster besteht aus:
|
||||
|
||||
- Pillar Page (Hauptseite)
|
||||
- Cluster Content (Unterseiten)
|
||||
|
||||
## Pillar Pages
|
||||
|
||||
- breite Themen
|
||||
- hohe Suchvolumen
|
||||
- zentrale Einstiegspunkte
|
||||
|
||||
Beispiele:
|
||||
|
||||
- Wegzugssteuer Deutschland
|
||||
- GmbH & Holding-Strukturen
|
||||
- Immobilienbesteuerung
|
||||
|
||||
## Cluster Content
|
||||
|
||||
- Longtail-Keywords
|
||||
- Spezialfragen
|
||||
- Detailanalysen
|
||||
|
||||
Beispiele:
|
||||
|
||||
- Wegzugssteuer bei Schenkung an Kinder
|
||||
- Holding Vorteile im Detail
|
||||
- Abschreibungen bei Immobilien
|
||||
|
||||
## Cluster Regeln
|
||||
|
||||
- Jeder Artikel wird einem Cluster zugeordnet
|
||||
- Neue Cluster entstehen nur bei Bedarf
|
||||
- Kein Cluster-Dopplungsthema
|
||||
- Klare Intent-Trennung
|
||||
|
||||
## Interne Verlinkung
|
||||
|
||||
- Cluster → Pillar Page
|
||||
- Pillar Page → alle Cluster-Artikel
|
||||
- Cluster-Artikel → relevante Cluster-Artikel
|
||||
|
||||
---
|
||||
|
||||
# 4. Content-Erstellung
|
||||
|
||||
## Struktur
|
||||
|
||||
- direkte Kurzantwort am Anfang
|
||||
- natürliche Einleitung ohne Floskeln
|
||||
- Hauptteil mit eigener Struktur
|
||||
- Praxisbeispiele
|
||||
- FAQ (5–15 Fragen)
|
||||
- Quellenabschnitt
|
||||
|
||||
Keine schematische Standardstruktur.
|
||||
|
||||
---
|
||||
|
||||
# 5. Quellenanforderungen
|
||||
|
||||
## Regeln
|
||||
|
||||
- alle Fakten müssen belegbar sein
|
||||
- keine erfundenen Quellen oder Zahlen
|
||||
- keine ungesicherten Aussagen
|
||||
|
||||
## Bevorzugte Quellen
|
||||
|
||||
- Behörden
|
||||
- Gesetze
|
||||
- Statistikämter
|
||||
- OECD / EU / Weltbank
|
||||
- wissenschaftliche Studien
|
||||
- Originaldaten
|
||||
|
||||
## Quellenabschnitt
|
||||
|
||||
Am Ende jedes Artikels:
|
||||
|
||||
- vollständige Quellenliste
|
||||
- nachvollziehbar & überprüfbar
|
||||
- mit Jahresangaben wenn möglich
|
||||
|
||||
---
|
||||
|
||||
# 6. SEO-Optimierung (explizit dokumentiert)
|
||||
|
||||
Alle SEO-Maßnahmen müssen aufgelistet werden:
|
||||
|
||||
## OnPage SEO
|
||||
|
||||
- Hauptkeyword
|
||||
- Nebenkeywords
|
||||
- Longtail-Keywords
|
||||
- SEO-Titel
|
||||
- Meta-Beschreibung
|
||||
- URL-Slug
|
||||
- H1 / H2 / H3 Struktur
|
||||
|
||||
## Interne Verlinkung
|
||||
|
||||
- bestehende Artikel
|
||||
- Cluster-Struktur
|
||||
- thematische Verlinkung
|
||||
|
||||
## Externe Verlinkung
|
||||
|
||||
- nur seriöse Quellen
|
||||
- Primärquellen bevorzugen
|
||||
|
||||
## Strukturierte Daten
|
||||
|
||||
- FAQ Schema
|
||||
- Article Schema
|
||||
- HowTo Schema (wenn passend)
|
||||
- Breadcrumb Schema
|
||||
|
||||
## Content-Elemente
|
||||
|
||||
- Tabellen
|
||||
- Checklisten
|
||||
- Infoboxen
|
||||
- Vergleiche
|
||||
|
||||
---
|
||||
|
||||
# 7. KI-Optimierung (LLM SEO / GEO)
|
||||
|
||||
Der Content muss für KI-Systeme optimiert sein:
|
||||
|
||||
- ChatGPT / GPT-Systeme
|
||||
- Google AI Overviews
|
||||
- Perplexity
|
||||
- Claude
|
||||
- Gemini
|
||||
- Copilot
|
||||
|
||||
## Anforderungen
|
||||
|
||||
- klare, zitierfähige Abschnitte
|
||||
- direkte Antworten zuerst
|
||||
- eigenständig verständliche Sektionen
|
||||
- definierte Begriffe
|
||||
- saubere Strukturierung
|
||||
|
||||
## Struktur-Elemente
|
||||
|
||||
- „Kurzantwort" am Anfang
|
||||
- klar getrennte Informationsblöcke
|
||||
- FAQ-fähige Abschnitte
|
||||
|
||||
---
|
||||
|
||||
# 8. E-E-A-T Anforderungen
|
||||
|
||||
- Experience
|
||||
- Expertise
|
||||
- Authoritativeness
|
||||
- Trustworthiness
|
||||
|
||||
---
|
||||
|
||||
# 9. Schreibstil (natürlich & nicht generisch)
|
||||
|
||||
## Sprachliche Regeln
|
||||
|
||||
- variierende Satzlängen
|
||||
- unterschiedliche Satzanfänge
|
||||
- unregelmäßiger Rhythmus
|
||||
- aktive Sprache bevorzugt
|
||||
- natürliche Übergänge
|
||||
|
||||
## Verbotene Muster
|
||||
|
||||
- keine Standardfloskeln
|
||||
- kein „Zusammenfassend…"
|
||||
- kein „Zudem / Außerdem"-Schema
|
||||
- keine generischen Einleitungen/Fazits
|
||||
- keine SEO-Text-Schablonen
|
||||
|
||||
## Stilprinzip
|
||||
|
||||
Schreibe wie ein erfahrener Fachautor, nicht wie ein Template.
|
||||
|
||||
## Inhaltliche Regeln
|
||||
|
||||
- konkrete Beispiele statt Allgemeinplätze
|
||||
- echte Daten statt Füllsätze
|
||||
- klare Positionen
|
||||
- gelegentliche Unsicherheiten zulässig
|
||||
- Fachbegriffe natürlich integrieren
|
||||
|
||||
---
|
||||
|
||||
# 10. Fakten- und Qualitätsregeln
|
||||
|
||||
- keine Halluzinationen
|
||||
- keine erfundenen Studien
|
||||
- keine erfundenen Statistiken
|
||||
- jede Kernbehauptung muss belegbar sein
|
||||
|
||||
---
|
||||
|
||||
# 11. Veröffentlichungsprozess
|
||||
|
||||
## WordPress Verbindung
|
||||
|
||||
- Zugangsdaten: `$MOAM_WP_USER`, `$MOAM_WP_PASS`, `$MOAM_WP_URL` (in `.profile` / `/etc/environment`)
|
||||
- Login via HTTP-Cookie-Auth (zweistufig: GET → POST mit Cookies)
|
||||
- Veröffentlichung via WordPress REST API oder XMLRPC
|
||||
|
||||
### Cookie-basierter Login (zuverlässig)
|
||||
|
||||
```bash
|
||||
# Step 1: Session initialisieren
|
||||
curl -s -c /tmp/moam-c.txt "$MOAM_WP_URL/wp-login.php" > /dev/null
|
||||
|
||||
# Step 2: Login POST (URL-encoded Password)
|
||||
ENCODED_PASS=$(python3 -c "import urllib.parse,os; print(urllib.parse.quote(os.environ['MOAM_WP_PASS'], safe=''))")
|
||||
curl -s -c /tmp/moam-c.txt -b /tmp/moam-c.txt \
|
||||
-X POST "$MOAM_WP_URL/wp-login.php" \
|
||||
-d "log=$MOAM_WP_USER&pwd=${ENCODED_PASS}&wp-submit=Anmelden&redirect_to=$(python3 -c 'import urllib.parse; print(urllib.parse.quote(os.environ["MOAM_WP_URL"]+"/wp-admin/", safe=""))')" \
|
||||
-D /tmp/moam-headers.txt \
|
||||
-L -o /tmp/moam-result.html -w "HTTP: %{http_code}"
|
||||
|
||||
# Step 3: Dashboard prüfen
|
||||
curl -s -b /tmp/moam-c.txt "$MOAM_WP_URL/wp-admin/" -o /dev/null -w "%{http_code}"
|
||||
```
|
||||
|
||||
### REST API (falls Application Passwords verfügbar)
|
||||
|
||||
```bash
|
||||
curl -s -u "$MOAM_WP_USER:$MOAM_WP_PASS" \
|
||||
"$MOAM_WP_URL/wp-json/wp/v2/posts" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"title":"Titel","content":"<p>Content</p>","status":"draft"}'
|
||||
```
|
||||
|
||||
### XMLRPC (Fallback)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "$MOAM_WP_URL/xmlrpc.php" \
|
||||
-d "<?xml version='1.0'?><methodCall><methodName>wp.newPost</methodName><params>...</params></methodCall>"
|
||||
```
|
||||
|
||||
## Veröffentlichung
|
||||
|
||||
- Status: Entwurf (draft) oder Veröffentlichung (publish) – **Standard: Entwurf**, Martin entscheidet über Veröffentlichung
|
||||
- Output nach Veröffentlichung: Titel, URL, Post-ID, Status
|
||||
|
||||
---
|
||||
|
||||
# 12. Veröffentlichungsbericht
|
||||
|
||||
Nach jedem Artikel:
|
||||
|
||||
- Zielkeyword + Daten
|
||||
- SEO-Maßnahmen
|
||||
- interne Verlinkungen
|
||||
- externe Quellen
|
||||
- KI-Optimierung
|
||||
- Kannibalisierungsprüfung
|
||||
- Cluster-Zuordnung + Begründung
|
||||
|
||||
---
|
||||
|
||||
# 13. Website-spezifische Regeln (manonamission.de)
|
||||
|
||||
- **Verbotene Kategorien:** Anzeige, Babes, Unkategorisiert → niemals Artikel dafür schreiben
|
||||
- **Premium-Kategorien (500€):** Glücksspiel, Waffen, Cannabis
|
||||
- **Standard-Preis:** 400€ pro Blogpost
|
||||
- **Details:** `memory/manonamission.md`
|
||||
|
||||
---
|
||||
|
||||
# Ziel des Systems
|
||||
|
||||
Nicht Content-Masse.
|
||||
|
||||
Sondern:
|
||||
|
||||
- maximale organische Sichtbarkeit
|
||||
- Aufbau thematischer Autorität (Topical Authority)
|
||||
- strukturierte Content-Cluster
|
||||
- hohe Zitierfähigkeit in KI-Systemen
|
||||
- nachhaltige SEO-Dominanz
|
||||
Reference in New Issue
Block a user