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.
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
- Der Befehl zeigt Shop-ID, Ausgabeverzeichnis, Sprachen und Typen an
- Mit
--clearwerden vorhandene Sitemap-Dateien gelöscht und die Anzahl gemeldet - 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"
- Die statische Sitemap entsteht, wenn
blEnableStaticUrlsaktiv ist und aktive Einträge existieren - Zum Schluss schreibt der Befehl
sitemap.xmlund 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 vorhandenesitemap.xmlunverä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.xmlführt nur die Dateien auf, die im aktuellen Lauf erzeugt wurden. Ein Lauf mit-t productsersetzt den Index daher durch einen Index, der nursitemap-products.xmlenthält.
- Die statische Sitemap hängt nicht an
-t: IstblEnableStaticUrlsaktiv, wird sie bei jedem Lauf erzeugt - Der Wert
staticbei-twird ohne Meldung ignoriert, ebenso unbekannte Typnamen. Ergibt sich dadurch kein Typ, entstehen keine Typ-Sitemaps, und der Befehl endet trotzdem mit Exit-Code 0 - Bei
-lwird eine Sprach-ID, die nicht in der Sprachliste des Shops steht, trotzdem angenommen. Die Abfragen laufen dann mit dieser ID, als Sprachcode zeigt die Ausgabede --clearlöscht alle Dateien, die zusitemap*.xmlpassen, auch solche, die nicht von diesem Modul stammen- Mit
-sändert sich die Shop-ID in den Abfragen für Produkte, Kategorien, CMS-Seiten und Hersteller sowie in der Hreflang-Abfrage, und die Ausgabe zeigt sie an. Shop-URL, Sprachliste und statische URLs liest das Modul immer für Shop-ID 1
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.