Kategorien
Content Management Systeme Shared Hosting Wunschthema

Eine WordPress Site in ein HTML Archiv verwandeln

WordPress ist nach wie vor sehr verbreitet und wird auch oft für Projekt-Websites verwendet.

Nun hat jedes Projekt ja die Eigenschaft irgendwann beendet zu sein und dann stellt sich die Frage, was mit der Website für dieses Projekt geschehen soll. In vielen Fällen wäre es schön die Website weiter online zu halten, oft ist es aber nicht möglich, weil kein Budget mehr vorhanden ist und es natürlich Zeit und Geld kostet, so eine WordPress Website aktuell zu halten.

Eine mögliche Alternative ist, die WordPress Website in HTML Seiten zu verwandeln, die man dann lokal aufbewahren kann oder auch sehr einfach online hosten kann.

In diesem Blogpost zeige ich, wie so eine Archivierung mit dem Plugin Simply Static funktioniert.

Durch die Umwandlung in HTML-Seiten wird die Website grundsätzlich

  • schneller – weil die Seiten nicht beim Aufruf aus einer Datenbank erzeugt werden müssen
  • sicherer – weil es keine Datenbank mehr gibt, die gehackt werden könnte
  • preisgünstiger oder sogar kostenlos – weil HTML-Seiten wirklich „überall“ gelagert werden können

Es gibt aber auch einen grossen Nachteil. Die Website ist nicht mehr über den Browser bearbeitbar und verliert Interaktionsmöglichkeiten über Kommentare und ähnliches.

Wenn aber eine WordPress keine interaktiven Element hat, dann gehen die oben genannten Vorteile soweit, dass es durchaus möglich ist, die gesamte Website von Anfang an lokal zu entwickeln, bei jeder Änderung in HTML Seiten zu verwandeln und diese statischen Seiten dann auf den gewünschten Server zu übertragen.

In diesem Zusammenhang gibt es auch eine Pro-Version des Plugin, die es ermöglicht, die erzeugten Seiten direkt auf den gewünschten Server per SFTP oder auf Dienste wie GitHub Pages, Cloudflare Pages und viele andere Dienste zu übertragen

Das Plugin ist 30,000 mal weltweit installiert und hat von 136 Bewertungen 120 Fünf Sterne Bewertungen.

Erster Versuch

Nach der Installation (Plugin -> neu – Suche nach Simply Static) und der Aktivierung erscheint ein zusätzlicher Menüpunkt im Dashboard.

Dort gibt es einen Button, der die Erzeugung der statischen Daten startet.

Ich war sehr glücklich, als ich das zum ersten Mal gesehen habe, ist es doch ein sehr benutzerfreundliches Interface mit guten Standardeinstellungen.

Button zur Erzeugung der statischen Daten!

Nach einem Klick auf den Button beginnt das Plugin, jede mögliche Seite aufzurufen und in HTML zu verwandeln. Ich habe das mit dem Novatrend Blog gleich ausprobiert und war doch erstaunt, wieviele Seiten da zusammenkamen. Nach etwa zwei Stunden erzeugte das Plugin im Verzeichnis /public_html/wp-content/plugins/simply-static/static-files/simply-static-1-1660905135 mehr als 13,000 HTML-Seiten …

Verzeichnis der erzeugten statischen Dateien

… und … stürzte dann mit der Fehlermeldung „[2022-08-19 11:55:43] Fehler: (1) Maximum execution time of 30 seconds exceeded in /home/srvblog/public_html/wp-admin/includes/class-pclzip.php on line 2714 ab :(.

In acht Jahren Novatrend Blog kommt doch einiges zusammen und ich hätte es ahnen müssen. Ich war so begeistert von diesem einen Button, dass ich ihn „todesmutig“ klickte. Ich weiss jetzt auch, wie man grössere Sites bearbeitet und schreibe dazu gleich mehr. Aber zunächst ein weiterer Versuch.

Zweiter Versuch mit einer kleineren Website

Der zweite Versuch war mit einer WordPress Installation mit 105 Beiträgen und 5 Seiten, einem individuellen Theme und etwa 15 Plugins. Das Simply Static Plugin lief in sieben Minuten sauber durch und ich konnte ein 58,38 Megabyte großes Zip-Archiv herunterladen.

[2022-08-19 13:02:23] Setting up
[2022-08-19 13:02:24] Fetched 2060 of 2060 pages/files
[2022-08-19 13:10:02] ZIP archive created: Click here to download
[2022-08-19 13:10:02] Wrapping up
[2022-08-19 13:10:02] Done! Finished in 00:07:40

Lokaler Test

Nach dem Download konnte ich das Zip Archiv auspacken, als Document Root in meiner lokalen MAMP Umgebung (MacOS) einstellen und unter der Namen localhost aufrufen.

Novatrend Hosting

Das oben angesprochene Ziel war ja, eine WordPress Website in ein statisches Archiv zu verwandeln und ich hatte nun die statischen Dateien. Je nachdem, ob man den ursprünglichen Domainnamen behält oder nicht, muss man nun unterschiedliche Schritte unternehmen.

Mein Fall: Die Domain bleibt erhalten, das WordPress wird entfernt und die statischen HTML-Dateien sollen dort liegen bleiben damit niemand den Unterschied zur „echten“ WordPress Website bemerkt.

Das Entfernen war sehr einfach möglich, den ich hatte das WordPress damals mit dem Softaculus Apps Installer hier bei Novatrend installiert. Durch einen Klick auf dessen Löschen Symbol konnte ich die komplette WordPress Installation inklusive Datenbank entfernen. Anschliessend musste ich nur noch die heruntergeladenen Dateien in das vorher von WordPress genutzte Verzeichnis übertragen und schon hatte ich eine statische Website.

Die HTML Version entspricht übrigens wirklich 100% der WordPress Website. Hier die Startseite der Beispielsite.

statische Version einer WordPress Website

Dritter Versuch

Nun lies es mir natürlich keine Ruhe mit der Novatrend Blog Website. Das Problem war ja die maximale Ausführung eines PHP Skriptes innerhalb des Plugins. Die einzelnen Seiten wurden erzeugt. Eine Verarbeitung und das Zusammenfassen in einem Zip-Archiv fand jedoch nicht statt.

Also erhöhte ich die Ausführungszeit um auf 180 im cPanel -> PHP INI Editor und startete die Erzeugung erneut.

Dieses Mal lief der Erzeugungsprozess etwas schneller durch und erzeugte auch eine ZIP Datei zum Download.

Hinweis: Nicht vergessen, die max_execution_time nach der Erzeugung der Seiten wieder auf 30 zurück zu setzen.

Einstellungen

Das Plugin hat einen Diagnostik Bereich. Dort werden unterschiedliche Parameter überprüft. Auf der rechten Seite sollten grüne OK´s und Ja’s stehen, dann ist sichergestellt, dass alles wunschgemäss funktioniert.

Teil der Diagnostik des Simply Static Plugins

Wenn der Diagnostik Bereich komplett grün ist, sollte unter „normalen“ Umständen die Erzeugung der HTML-Seiten problemlos funktionieren.

Wer beispielsweise eine grosse Website, wie das Blog hier, in statische Seiten verwandeln will, kann dafür den WordPress-Cron Job benutzen (Simply Static -> Einstellungen -> Fortgeschritten).

Bei umfangreichen Websites soll der WP-CRON angekreuzt werden

Es gibt weitere hilfreiche Einstellungen, die beispielsweise die Linkstrukturen betreffen. Dort gibt es unter anderem auch eine Einstellung, die es ermöglicht, die Website ohne Webserver lokal im Browser darstellen zu können.

Simply Static -> Einstellungen -> Allgemein

Die erzeugten HTML-Dateien können auch mit einem Passwort versehen werden, so dass nur berechtigte Personen die archivierte Website aufrufen können.

Simply Static -> Einstellungen -> HTTP Basic-Authentifizierung

Live-Beispiele

Der Künstler Jürgen Rinck (https://irgendlink.de) archiviert manchmal seine Projekte auf diese Weise.

Liedertafel

Die Liedertafel ist ein schon ein etwas älteres Beispiel, das seit sieben Jahren als vollständige HTML-Version online zu sehen ist (http://die-liedertafel.de).

liedertafel.de – ein ehemaliges WordPress Blog

Flussnoten

Dieses Projekt ist bereits als HTML erzeugt, läuft aber noch lokal, weil beispielsweise die Kommentare in der freien Version von Sinply Static nicht mit erzeugt werden. Vielleicht ist es zur Veröffentlichungszeit dieses Posts bereits online.

https://flussnoten.de

Fazit

Simply Static erzeugt aus jeder WordPress Site ein statisches Archiv. Je nach Anwendungsfall und Umfang des Projekts müssen Einstellungen angepasst werden. Die Grundeinstellungen reichen jedoch für ein „normales“ WordPress Projekt aus.

Links


tl;dr: Das Simply Static Plugin archiviert mit einem Knopfdruck deine WordPress Website.

Von hagengraf

Ich erstelle bequeme und benutzerfreundliche Orte in virtuellen und physischen Umgebungen.

3 Antworten auf „Eine WordPress Site in ein HTML Archiv verwandeln“

Reposts

  • WordPress Bot

Erwähnungen

  • hagengraf

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert