XML Sitemap
Modulbeschreibung
Eine XML-Sitemap ist eine Liste von allen URLs auf einer Website. Suchmaschinen verwenden Sitemaps als eine Art Wegweiser, um die Gesamtstruktur und den Aufbau einer Webseite besser zu verstehen. Wir empfehlen jedem Shop-Betreiber, eine Sitemap zu erstellen
Systemvoraussetzungen
PHP-Version OXID 4 & 5
PHP 5.6
PHP-Version OXID 6
PHP 7.0 (OXID 6.0.x)
PHP 7.1 (OXID 6.1.x)
PHP 7.2 - 7.4 (OXID 6.2.x - 6.3.x)
PHP 8.0 (OXID 6.3.x - 6.4.x)
PHP-Version OXID 7
PHP 8.0 - 8.1 (OXID 7.0.x - 7.1.x)
PHP 8.2 (OXID 7.1.x)
Webserver-Konfiguration
IonCube Loader (mind. v5.0)
Kompatibel mit den OXID Versionen
OXID CE/PE 4.9.x bis 4.10.x
OXID EE 5.2.x bis 5.3.x
OXID CE/PE/EE 6.0 bis 6.5.x
OXID CE/PE/EE 7.0 bis 7.1.x
Template-Engine
Smarty bis OXID 7.0.x
Twig ab OXID 7.0.x
Installation
Ab OXID 6/7
Falls noch nicht geschehen, laden Sie bitte zunächst das digidesk Basis-Modul herunter und installieren Sie es gemäß der enthaltenen Installationsanleitung.
Sie erhalten dieses unter: https://www.digidesk.de/produkte/basis-modul/
Für dieses Modul erstellen Sie nun einen weiteren Unterordner "sitemap" im Ordner "packages/digidesk", in den die heruntergeladene Zip-Datei entpackt wird.
Führen Sie anschließend folgende Befehle aus dem Hauptverzeichnis des Shopsystems aus:
composer require digidesk/sitemap
Nun kann das Modul im OXID eShop Admin aktiviert werden
Ggf. Tmp-Verzeichnis leeren und Views generieren
Bitte fahren Sie nun mit der Einrichtung des Moduls fort
Bis OXID 4.10.x/5.3.x
Falls noch nicht geschehen, laden Sie bitte zunächst das digidesk Basis-Modul herunter und installieren Sie es gemäß der enthaltenen Installationsanleitung. Sie erhalten dieses unter: https://www.digidesk.de/produkte/basis-modul
Fügen Sie den Inhalt des Ordnerverzeichnisses des Moduls "modules/digidesk/" via FTP/SFTP unter dem gleichnamigen Pfad in Ihren Shop ein
Aktivieren Sie das Modul im OXID eShop Admin
Ggf. Tmp-Verzeichnis leeren und Views neu generieren
Bitte fahren Sie nun mit der Einrichtung des Moduls fort
Update
Ab OXID 6/7
Entpacken Sie die neue Modulversion in den Ordner "packages/digidesk/sitemap".
Deaktivieren Sie das Modul im OXID eShop Admin.
Führen Sie anschließend folgenden Befehl aus dem Hauptverzeichnis des Shopsystems aus:
composer update digidesk/sitemap
Die Frage, ob Dateien des Pakets überschrieben werden sollen, bestätigen Sie bitte mit "Y".
Aktivieren Sie das Modul im OXID eShop Admin.
Ggf. Tmp-Verzeichnis leeren und Views neu generieren.
Bis OXID 4.10.x/5.3.x
Bitte aktualisieren Sie das Basis-Modul gemäß der darin enthaltenen Installationsanleitung.
Deaktivieren Sie dieses Modul im OXID eShop Admin.
Fügen Sie den Inhalt des Ordners "modules/digidesk/" via FTP/SFTP unter dem gleichnamigen Pfad in Ihren Shop ein und überschreiben Sie dabei die vorhandenen Dateien des Moduls.
Aktivieren Sie dieses Modul im OXID eShop Admin.
Ggf. Tmp-Verzeichnis leeren und Views neu generieren.
Funktionsbeschreibung
Mit dem Modul XML Sitemap können Sie alle Artikel und Kategorien in Ihrem OXID eShop exportieren und daraus eine XML Sitemap erstellen. Der Export kann per URL-Aufruf manuell oder per Cronjob angestoßen werden. Wir empfehlen die Einrichtung eines Cronjobs, denn somit bleibt die XML Sitemap immer aktuell und Sie müssen sich nicht mehr darum kümmern.
Dies sind die Moduleinstellungen:
Die Dateinamen, welche in den Moduleinstellungen einstellbar sind, werden um ein Sprachkürzel erweitert, z.B.: google_sitemap_de.xml oder google_sitemap_1_de.xml - je nach Shop Edition. Dies hat den Vorteil, dass wenn man einen mehrsprachigen Shop hat, die Dateien der verschiedenen Sprachen sich nicht überschreiben.
Manueller Export
Der manuelle Export per URL würde zum Beispiel so aussehen:
Zusätzlich zum Parameter key
gibt es auch noch den Parameter lang
um die zu exportierende Sprache anzugeben.
Beim Parameter lang
muss die Sprach-ID, welche für die jeweilige Sprache definiert wurde, angegeben werden. Wird der Parameter lang
nicht angegeben, werden die Sitemaps für alle Sprachen des jeweiligen Shops nacheinander exportiert. (Bei der Modulversion <= 3.3.1: Dabei werden alle für den jeweiligen Shop definierten Sprachen exportiert, unabhängig davon ob sie aktiv sind oder nicht.)
Ein Manueller Export für die Sprache mit der Sprach-ID 1 würde z.B. so aussehen:
Bitte beachten Sie: In den oben stehenden Links muss IHR_CRONKEY durch den Cronjob-Schlüssel ersetzt werden. Ab Modul-Version 3.2.0 wird dieser Schlüssel in den Moduleinstellungen des Basis Moduls definiert. Bis einschließlich Modul-Version 3.1.7 wird dieser Schlüssel in den Grundeinstellungen des Sitemap Moduls definiert.
Der manuelle Export kann alternativ aus dem Stamm des Moduls im Admin-Backend durch einen Klick auf den jeweiligen Link gestartet werden. Der korrekte Cronjob-Schlüssel wird dabei automatisch geladen, der Parameter lang
wird dabei allerdings nicht verwendet:
Die exportierten Dateien werden standardmäßig im export Ordner gespeichert:
Automatischer Export per Cronjob
Für den automatischen Export der Sitemap enthält das XML Sitemap Modul einen Cronjob, um in regelmäßigen Abständen automatisch die Sitemap-Dateien zu aktualisieren.
Ab Modul Version 4.0.0
Ab der Modul-Version 4.0.0 hat sich der Pfad zum Cronjob wie folgt geändert:
vendor/digidesk/sitemap/src/bin/cron.php.
Der vollständige Aufruf lautet:
php vendor/digidesk/sitemap/src/bin/cron.php --key=IHR_CRONKEY
Für die weitere Einstellung befolgen Sie bitte die Anleitung ab der Modul-Version 3.2.0
Ab Modul Version 3.2.0
Um den Cronjob auszuführen muss folgender Befehl aus dem Hauptverzeichnis Ihres Shops ausgeführt werden:
Ersetzen Sie dabei IHR_CRONKEY
durch den Key den Sie in den Modul-Einstellungen des Basis-Moduls definiert haben. Achten Sie dabei darauf, dass die auf der Kommandozeile verwendete PHP-Version der Version entspricht die in Ihrem Shop verwendet wird.
Zusätzlich zum Parameter --key
gibt es auch noch die Parameter --shop
und --lang
um den zu exportierenden Shop und/oder die Sprache anzugeben.
Beim Parameter --shop
muss die Shop-ID (numerisch) angegeben werden. Diese finden Sie im Admin Backend unter Stammdaten -> Grundeinstellungen hinter dem Shop-Namen in Klammern.
Wird der Parameter --shop
nicht angegeben, wird immer für den Hauptshop (ID: 1) exportiert.
Beim Parameter --lang
muss die Sprach-ID, welche für die jeweilige Sprache definiert wurde, angegeben werden. Wird der Parameter --lang
nicht angegeben, werden die Sitemaps für alle Sprachen des jeweiligen Shops nacheinander exportiert. (Bei der Modulversion <= 3.3.1: Dabei werden alle für den jeweiligen Shop definierten Sprachen exportiert, unabhängig davon ob sie aktiv sind oder nicht.)
Beispiel CLI-Aufruf um die Englische Sitemap des Shops mit der ID 2 zu exportieren:
Ersetzen Sie dabei wieder IHR_CRONKEY
durch den Key den Sie in den Modul-Einstellungen des Basis-Moduls definiert haben.
Hinweis:
In den OXID Editionen Community und Professional kann der Parameter --shop
grundsätzlich weggelassen werden, da dort nur ein Shop existiert. Der Parameter ist ausschließlich für die Enterprise Edition gedacht.
Um diesen Cronjob automatisiert auszuführen empfehlen wir bei Linux Systemen "crontab". Für crontab sieht der Eintrag z.B. folgendermaßen aus:
Bitte beachten Sie: Im oben stehenden Crontab Eintrag muss <shop-root-path> durch den absoluten Pfad zum Hauptverzeichnis Ihres Shops ersetzt werden!
Dies startet das Cronjob Script einmal täglich um Mitternacht, wobei das Script alle Kategorien und Artikel, ausschließlich der definierten Ausschlüsse, exportiert und wie der manuelle Export im Pfad <shop-root-path>/source/export/
auf dem Dateisystem des Servers ablegt.
Hinweis:
Um eine parallele Ausführung des Cronjobs zu verhindern, überprüft das Skript zu Anfang auf die Existenz einer Log-Datei namens dd_sitemap_RUN.log in dem Log-Ordner vom Shop. Falls hier schon die Datei existiert, dann wird der Cronjob nicht fortgesetzt und frühzeitig beendet. Ansonsten wird diese Datei angelegt und im Abschluss des Cronjobs wieder entfernt.
Sollte es dazu kommen, dass der Cronjob aus irgendeinem Grund irregulär abgebrochen wird, dann wird diese Datei nicht automatisch gelöscht. Für einen Neustart des Cronjobs muss dann diese Datei manuell gelöscht werden!
In dem Cronjob ist eine Benachrichtigungsfunktion eingebaut, wenn bei dem Start des Cronjobs noch die Datei vorliegt und die Datei vor einer Stunde angelegt worden ist, dass dann der Shopbetreiber eine Info darüber per E-Mail an die im Shop hinterlegte Info-Adresse bekommt.
Bis einschließlich Modul Version 3.1.7
Um den Cronjob auszuführen muss folgende URL aufgerufen werden:
Bitte beachten Sie: Im oben stehenden Link muss IHR_CRONKEY durch den in den Grundeinstellungen definierten Cronjob Schlüssel ersetzt werden, damit der Cronjob ausgeführt wird.
Um diesen Cronjob automatisiert auszuführen empfehlen wir bei Linux Systemen "crontab". Für crontab sieht der Eintrag z.B. folgendermaßen aus:
Dies startet das Cronjob Script einmal täglich um Mitternacht, wobei das Script alle Kategorien und Artikel, ausschließlich der definierten Ausschlüsse, exportiert und wie der manuelle Export im Pfad <shop-root-path>/export/
auf dem Dateisystem des Servers ablegt.
Ein hilfreiches Tool für die einfache Erstellung von crontab Einträgen nach Ihren Wünschen ist "crontab.guru".
Hilfe & Support
Haben Sie Fragen oder benötigen Sie Hilfe bei der Installation? Gerne bieten wir Ihnen auch einen Installationsservice an. Kontaktieren Sie uns einfach!
E-Mail: support@digidesk.de
Telefon: +49 (0) 5246 / 9099110
Kontaktformular: http://www.digidesk.de/kontakt
Last updated