Markus Michalski FAQ

XML Sitemap Generator: Admin-API

Admin-API-Endpunkte des XML Sitemap Generators: Sitemap für einen Sales Channel generieren und URL-Statistik abrufen, mit Authentifizierung, Antwortformat und Fehlerfällen.

English Version

Zurück zur Übersicht

XML Sitemap Generator: Admin-API

Live Demo: Teste dieses und weitere Plugins live — ohne Installation, ohne Risiko: demo.markus-michalski.net

Die Karte Manuelle Generierung in der Plugin-Konfiguration spricht zwei Routen der Shopware-Admin-API an. Du kannst sie auch aus eigenen Skripten oder Integrationen aufrufen. Beide Routen erwarten einen gültigen Admin-API-Token (Authorization: Bearer <Token>).

Methode Route Zweck
POST /api/_action/mmd-sitemap/generate/{salesChannelId} Sitemap des Sales Channels erzeugen
GET /api/_action/mmd-sitemap/stats/{salesChannelId} URL-Anzahl je Typ abrufen

{salesChannelId} ist die ID des Sales Channels als UUID in Hex-Schreibweise. Eine ungültige ID beantwortet die API mit HTTP 400.

Die Routen sind mit den Berechtigungen mmd_sitemap.generate und mmd_sitemap.stats abgesichert. Das Plugin registriert diese Berechtigungen in der Rollenverwaltung nicht. Zuverlässig nutzbar sind die Routen daher für Administratoren und für Integrationen mit Administrator-Rechten.

Sitemap generieren

curl -X POST "https://dein-shop.de/api/_action/mmd-sitemap/generate/019b7dfcab75700fada02799328e8440" \
  -H "Authorization: Bearer <Token>" \
  -H "Accept: application/json"

Die Route erzeugt alle aktivierten Typen und löscht vorher die bestehenden sitemap*.xml-Dateien im Zielverzeichnis des Sales Channels. Einen Request-Body braucht sie nicht.

Antwort:

{
  "success": true,
  "filesWritten": ["sitemap-products.xml", "sitemap-categories.xml", "sitemap.xml"],
  "totalUrlCount": 1234,
  "duration": 1.82,
  "error": ""
}
Feld Bedeutung
success true, wenn mindestens eine Datei geschrieben wurde und kein Fehler vorliegt
filesWritten Dateinamen der geschriebenen Dateien, zuletzt der Index sitemap.xml
totalUrlCount Anzahl der URLs in allen Typ-Dateien
duration Dauer in Sekunden
error Fehlermeldung, sonst leer

Tritt ein Fehler auf, antwortet die Route mit HTTP 500 und der allgemeinen Meldung Sitemap generation failed. Check logs for details.; Details stehen im Shopware-Log.

Statistik abrufen

curl "https://dein-shop.de/api/_action/mmd-sitemap/stats/019b7dfcab75700fada02799328e8440" \
  -H "Authorization: Bearer <Token>"

Antwort:

{
  "counts": {"products": 1000, "categories": 40, "cms": 8},
  "total": 1048
}

counts enthält je aktiviertem Typ einen Schlüssel (products, categories, cms, manufacturers). Es sind Näherungswerte, siehe Generierung und Console Command. Bei einem Fehler antwortet die Route mit HTTP 500 und leeren counts.