Markus Michalski FAQ

XML Sitemap Generator: Console Commands

Konsolenbefehl mmd:sitemap:generate des XML Sitemap Generators für OXID eShop 7: Optionen, Ablauf, Verhalten bei mehreren Sprachen und Typen sowie Beispiele.

English Version

Zurück zur Übersicht

XML Sitemap Generator: Console Commands

Das Modul registriert genau einen Befehl für oe-console:

vendor/bin/oe-console mmd:sitemap:generate

Ohne Optionen erzeugt der Befehl die Sitemaps für Produkte, Kategorien, CMS-Seiten und Hersteller (soweit in den Einstellungen aktiv), danach die statische Sitemap (falls aktiviert) und zuletzt den Sitemap-Index sitemap.xml.

Optionen

Option Beschreibung
-c, --clear Löscht vor der Generierung alle Dateien sitemap*.xml im Ausgabeverzeichnis
-t, --type Nur bestimmte Typen erzeugen: products, categories, cms, manufacturers. Mehrfach angebbar
-l, --lang Nur die angegebene Sprach-ID erzeugen. Ohne Angabe laufen alle in der Shop-Konfiguration eingetragenen Sprachen
-s, --shop Shop-ID für die Datenbankabfragen der Inhalte, siehe Hinweis unten

Ablauf und Ausgabe

  1. Der Befehl zeigt Shop-ID, Ausgabeverzeichnis, Sprachen und Typen an
  2. Mit --clear werden vorhandene Sitemap-Dateien gelöscht und die Anzahl gemeldet
  3. Pro Sprache und Typ wird eine Datei geschrieben, die Anzahl der URLs steht in der Ausgabe. Abgeschaltete Typen meldet der Befehl als übersprungen, Typen ohne URLs als "No URLs"
  4. Die statische Sitemap entsteht, wenn blEnableStaticUrls aktiv ist und aktive Einträge existieren
  5. Zum Schluss schreibt der Befehl sitemap.xml und meldet die Summe aus URLs und Dateien. Der Index wird nur geschrieben, wenn in diesem Lauf mindestens eine Datei mit mindestens einer URL entstanden ist, andernfalls bleibt eine vorhandene sitemap.xml unverändert

Schlägt das Schreiben einer Datei fehl, bricht der Befehl mit Exit-Code 1 ab. Bei Erfolg lautet der Exit-Code 0.

Verhalten, das Du kennen solltest

Bei mehreren Sprachen schreibt jeder Durchlauf in dieselbe Datei, zum Beispiel sitemap-products.xml. Die zuletzt verarbeitete Sprache überschreibt die vorherigen. Möchtest Du eine bestimmte Sprache in der Sitemap, erzeuge gezielt mit -l <Sprach-ID>.

Der Sitemap-Index sitemap.xml führt nur die Dateien auf, die im aktuellen Lauf erzeugt wurden. Ein Lauf mit -t products ersetzt den Index daher durch einen Index, der nur sitemap-products.xml enthält.

Beispiele

# Nur die Produkt-Sitemap erzeugen
vendor/bin/oe-console mmd:sitemap:generate -t products

# Nur Sprach-ID 0 erzeugen
vendor/bin/oe-console mmd:sitemap:generate -l 0

# Alte Dateien löschen und neu erzeugen
vendor/bin/oe-console mmd:sitemap:generate --clear

# Mehrere Typen
vendor/bin/oe-console mmd:sitemap:generate -t products -t categories

Den Befehl aus dem Admin-Button heraus starten ist gleichwertig zu mmd:sitemap:generate -c -s <Shop-ID>, siehe Konfiguration.