Rank Math SEO-Felder per REST API bearbeiten – so geht’s

Rank Math SEO-Felder wie Titel, Meta-Beschreibung und Focus-Keyword sind standardmäßig in der WordPress REST API versteckt. Mit einem kleinen PHP-Snippet lassen sie sich schnell freischalten – so kannst du SEO-Daten automatisch per API setzen.

Du möchtest die SEO-Felder von Rank Math (Titel, Meta-Beschreibung, Focus-Keyword) automatisch per API setzen – zum Beispiel mit einem Tool, Skript oder MCP Server? Standardmäßig sind diese Felder in der WordPress REST API versteckt. Mit einem kleinen PHP-Snippet kannst du das schnell ändern.

Das Problem

Rank Math speichert seine SEO-Daten als sogenannte „protected meta“ – also geschützte Metafelder. WordPress blendet diese Felder automatisch aus der REST API aus. Das bedeutet: Externe Tools können die Werte weder lesen noch schreiben.

Die Lösung: Metafelder registrieren

Mit der WordPress-Funktion register_meta() kannst du einzelne Felder explizit für die REST API freischalten. Das erledigt ein kurzes PHP-Snippet, das du einmalig einrichtest.

Bonus: Headless-CMS-Modus aktivieren (für HTML-Meta-Tags per API)

Rank Math bietet eine zusätzliche Funktion speziell für Headless-Setups: Wenn du diese Option aktivierst, registriert Rank Math einen eigenen REST-API-Endpunkt, der die fertigen HTML-Meta-Tags für eine bestimmte URL zurückgibt – so wie sie auch im <head> deiner Seite erscheinen würden.

So aktivierst du die Option:

  1. Gehe zu Rank Math SEO → Allgemeine Einstellungen
  2. Klicke auf den Tab „Andere“
  3. Aktiviere die Option „Unterstützung für Headless-CMS“
  4. Speichern

Was das freischaltet:

Danach ist folgender Endpunkt verfügbar:

GET https://deine-seite.de/wp-json/rankmath/v1/getHead?url=https://deine-seite.de/mein-beitrag/

Die Antwort enthält alle generierten Meta-Tags als fertiges HTML – inklusive Title-Tag, Meta-Description, Open-Graph-Tags und mehr:

{
  "head": "<title>Mein SEO-Titel</title>\n<meta name=\"description\" content=\"Meine Beschreibung\" />\n<meta property=\"og:title\" content=\"Mein SEO-Titel\" />\n..."
}

Das ist besonders nützlich für Headless WordPress-Setups mit Next.js, Nuxt oder anderen Frontend-Frameworks, die die Meta-Tags selbst ins HTML einbauen müssen.

Schritt 1: WPCode Plugin installieren

Am sichersten geht das mit dem kostenlosen Plugin WPCode – Insert Headers and Footers. Es erlaubt dir, PHP-Code einzufügen, ohne die Theme-Dateien zu bearbeiten.

  1. Gehe zu Plugins → Installieren
  2. Suche nach WPCode
  3. Installieren und aktivieren

Schritt 2: PHP-Snippet hinzufügen

  1. Gehe zu WPCode → + Add Snippet
  2. Wähle „Add Your Custom Code (New Snippet)“
  3. Setze den Typ auf PHP Snippet
  4. Füge folgenden Code ein:
add_action('rest_api_init', function() {
    $rankmath_fields = [
        'rank_math_title',
        'rank_math_description',
        'rank_math_focus_keyword',
        'rank_math_robots',
        'rank_math_canonical_url',
    ];
    foreach ($rankmath_fields as $field) {
        register_meta('post', $field, [
            'show_in_rest'  => true,
            'single'        => true,
            'type'          => 'string',
            'auth_callback' => function() {
                return current_user_can('edit_posts');
            },
        ]);
    }
});
  1. Stelle sicher, dass der Status auf Active steht
  2. Klicke auf Save Snippet

Schritt 3: Testen

Öffne folgende URL in deinem Browser (während du im WordPress-Backend eingeloggt bist):

https://deine-seite.de/wp-json/wp/v2/posts/BEITRAG-ID?_fields=meta

Wenn du im zurückgegebenen JSON-Objekt die Felder rank_math_title, rank_math_description und rank_math_focus_keyword siehst, hat alles geklappt.

Welche Felder werden freigeschaltet?

Feld Beschreibung
rank_math_title SEO-Titel (erscheint im <title>-Tag)
rank_math_description Meta-Beschreibung (Google-Snippet-Text)
rank_math_focus_keyword Focus-Keyword für die SEO-Analyse
rank_math_robots Robots-Direktiven (z.B. noindex)
rank_math_canonical_url Canonical URL

Felder per API setzen

Sobald das Snippet aktiv ist, kannst du die Felder beim Erstellen oder Aktualisieren eines Beitrags direkt mitschicken – zum Beispiel so:

PATCH /wp-json/wp/v2/posts/123
{
  "meta": {
    "rank_math_title": "Mein SEO-Titel",
    "rank_math_description": "Meine Meta-Beschreibung für Google.",
    "rank_math_focus_keyword": "mein keyword"
  }
}

Wichtiger Hinweis

Das Snippet stellt sicher, dass nur eingeloggte Nutzer mit der Berechtigung edit_posts die Felder über die API schreiben können. Unbefugter Zugriff ist damit ausgeschlossen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Vielleicht gefällt dir auch folgendes?

WordPress Cookie Plugin von Real Cookie Banner