Markus Michalski FAQ

XML-Sitemap

Erweiterte XML-Sitemap für Sylius 2: Produkte, Kategorien und statische Seiten mit Hreflang und Produktbildern, pro Channel per Konsolenbefehl oder Admin-Button erzeugt, mit Sitemap-Index und eigenen URL-Providern.

English Version

Zurück zu Sylius Plugins

XML-Sitemap

Sylius
PHP
License

Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.

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

Überblick

Das Plugin erzeugt für jeden Sylius-Channel eine erweiterte XML-Sitemap: Produkte, Kategorien und frei wählbare statische Seiten, jede Sprache des Channels mit eigener URL und vollständigem Hreflang-Satz (inklusive x-default), dazu die Produktbilder als Image-Sitemap. Die Dateien werden vorab per Konsolenbefehl oder Admin-Button geschrieben und bei einem Aufruf nur noch ausgeliefert.

Ein Crawler-Aufruf läuft nie durch den Katalog: Die Sitemap wird vorab als Datei erzeugt und beim Abruf nur gelesen. Das gilt für Twig-Storefront und Headless-Frontend gleichermaßen.

graph LR
    A["Admin-Button Jetzt generieren"] --> C["Generierung"]
    B["Befehl mmd:sitemap:generate"] --> C
    C --> D["Dateien pro Channel in storage_dir"]
    D --> E["Aufruf sitemap-index.xml"]
    E --> F["Crawler"]

Dokumentation

Seite Inhalt
Installation und Betrieb Installation über Packeton, Bundle und Routen, Setup-Befehl, Update, Cronjob, Deinstallation
Konfiguration Konfigurationsschlüssel, Einstellungen pro Channel im Admin, Praxis-Beispiele
Generierung und Auslieferung Admin-Button, Befehl mmd:sitemap:generate, URLs, Dateiaufteilung, Inhalte der Sitemap
Erweiterbarkeit Eigene URL-Provider, Services austauschen, Kompatibilität
Fehlerbehebung und FAQ Typische Probleme, bekannte Einschränkungen, häufige Fragen
Technische Details Ablauf der Generierung, Plugin-Struktur, Speicherlayout, Datenbanktabelle

Features

Feature Beschreibung
Inhaltstypen Produkte, Kategorien und statische Seiten, jeweils in eigener Datei im Sitemap-Index
Hreflang Jede Sprache des Channels bekommt eine eigene URL mit allen Sprachalternativen und x-default
Image-Sitemap Produktbilder je Produkt-URL; Bilder auf einem CDN behalten ihre eigene URL
Mehrere Channels Eigene Einstellungen und eigene Dateien pro Channel, ausgeliefert auf dem Host des Channels
Große Kataloge Produkte werden in Blöcken gelesen, Dateien ab einer einstellbaren URL-Anzahl und Dateigröße aufgeteilt
Admin-Oberfläche Einstellungen pro Channel, Button „Jetzt generieren“, Anzeige der letzten Generierung
Konsolenbefehl mmd:sitemap:generate für alle oder einen Channel, geeignet für Cronjobs
Sperre gegen Doppelläufe Pro Channel läuft nur eine Generierung gleichzeitig
Eigene URLs Jeder Service mit UrlProviderInterface ergänzt weitere URLs, etwa CMS-Seiten oder Marken

Anforderungen

Anforderung Version Hinweise
Sylius ^2.2 Die CI führt die Testsuite auf Sylius 2.2 und 2.3 aus
PHP ^8.3 Mit der Extension xmlwriter
Symfony ^7.4 Wie von Sylius 2.x vorgegeben
Datenbank MySQL 8 oder MariaDB Die Migration bricht auf jeder anderen Plattform bewusst ab. Getestet wird gegen MySQL 8.4
Composer-Paket mmd/sylius-sitemap-plugin Bundle-Klasse Mmd\SyliusSitemapPlugin\MmdSyliusSitemapPlugin

Lizenz

License

Kommerzielle Lizenz: Eine Lizenz gilt für eine Sylius-Installation (alle Channels sowie deren Entwicklungs- und Staging-Umgebungen). Eine Weitergabe ist nicht erlaubt, Updates sind 12 Monate ab Kauf enthalten.

Support

Bei Fragen zur Lizenz, technischen Fragen oder Fehlern erreichst du mich unter support@markus-michalski.net.