Diese Woche habe ich ganz viel herum gebastelt, mir ist nämlich aufgefallen dass nach dem Umzug der Seite viele Bilder in den Blog-Einträgen fehlten. Man kann und konnte kein Muster erkennen, anscheindend hat sich das Skript, das WordPress für den Export und Import verwendet, an ein paar Stellen verhaspelt. Mit dem Plugin Broken Link Checker findet man aber recht leicht heraus welche Bilder fehlen – und das waren gut 500 Stück!
Das Plugin ist echt gut, hat aber ein Manko und zwar kann man das Ergebnis nicht exportieren, sondern bekommt es nur in der Webseite dargestellt. Also war die erste Aufgabe irgendwie einen Export in die Seite rein zu bauen. Das war gar nicht so schwer, auf GitHub habe ich gesucht wo das Ergebnis zusammengebaut wird und dort einen Array-Dump rein geschoben. Das Ergebnis habe ich dann solange mit regulären Ausdrücken bearbeitet, bis ich eine Liste mit den URLs der fehlenden Bildern hatte.
Als nächstes musste man überprüfen ob die Bilder im letzten Backup waren. Dazu musste die Liste von oben mit den Dateien aus dem Backup abgeglichen werden. Die Dateiliste aus dem Backup gibt es mit tar tfz
. Den Abgleich der Listen habe ich mit Python in VS-Code gemacht. Das ist ein super Gespann! Problem bei Google eingeben, Code Snippet einbauen, laufen lassen, so lange bis das Skript tut was es soll.
Die Analyse hat ergeben dass alle Bilder bis auf 24 im Backup waren. Ein guter Schnitt. Die noch fehlenden Bilder waren alle auf der alten Domain photo.hoadl.net und die gibt es schon seit gut 10 Jahren nicht mehr, verschmerzbar. So, jetzt musste ein Verzeichnisbaum erstellt werden, in dem die Bilder, die im Backup alle im Verzeichnis „images“ lagen, in die neue Verzeichnisstruktur einsortiert wurden. In der neuen Installation liegen nämlich alle Bilder in Unterverzeichnissen (Jahr/Monat/Tag/Bild).
Der Ablauf war grob so: Bild im Backup gefunden –> Unterverzeichnis überprüfen –> ggf. erstellen, notfalls rekursiv –> Bild kopieren. Das hat so gut geklappt, ich bin immer noch emotional berührt! Der neue Verzeichnisbaum wurde dann zusammen gepackt und auf dem Server wieder entpackt. Fertig. Mit Python und VS-Code kann man so super arbeiten, das ist schade dass es das nicht schon vor 10 Jahren gegeben hat!