Bei einer solchen Ausgangslage besteht die erste Hürde darin, eine funktionierende lauffähige Version der alten Site zu migrieren. Schliesslich will man ja die Downtime so kurz wie möglich halten, kann aber aufgrund der veralteten Servertechnik (altes WordPress, altes PHP und auch alte Backup-Software) nicht einfach online eine Staging-Umgebung einrichten. Meiner erste Wahl ist dann immer LocalWP. Ich richte eine leere,
lokale Website ein und migriere die Website (hier gute 3 GB Daten) auf meinen Laptop.
Wenn das gelungen ist (hurra, ist es) kann man nun alle jene Komponentent deaktivieren, die einem Update im Weg stehen. In diesem konkreten Fall war das einfach das Theme und ein Plugin. Sobald diese beiden Teile deaktiviert waren, konnte ich auf PHP 8.4 und WordPress 7.0.1. updaten.
Wichtig: die alten Teile noch nicht löschen! Denn wir benötigen ja die alten Inhalte noch, die in den Propietären Inhaltstypen versteckt sind. Saubere Software würde dann fragen, ob diese Inhlate auch gelöscht werden sollen - aber wenn die Software sauber wäre, würde sie dann so altern?
Wir haben nun als ersten Zwischenschritt ein lokales WordPress ohne Design mit jeder Menge Zeug in der Datenbank, auf das wir nicht mehr richtig zugreifen können. Jetzt geht es darum die 148 Posts mit den 3000 Bildern so zu retten, dass auch die Logik erhalten bleibt - und die Metainformationen, Kategorien etc. Es ist an der Zeit sich zu entscheiden, was am Ende rauskommen soll, damit die Datenrettung auch definiertes Ziel hat. In diesem Fall habe ich mich für ACF Pro und Bricks entschieden.
Ich will keinen Code schreiben (lassen) müssen. Ich will ein Interface, dass es auch Amateuren ermöglicht, Daten einzugeben und zu bearbeiten. Es muss auch schnell gehen, es muss lange halten, es darf (wenig) kosten. Es soll so etwas wie eine gängige Standard-Lösung sein. Also
ACF. Und die Pro-Version deshalb, weil wir das Galerie-Feld benötigen, in welchem wir die vielen Bilder speichern.
Weil es grade State-Of-The-Art ist, weil es sehr gut dynamische Inhalte darstellen kann und weil es ein Handgriff ist, das Galerie-Feld aus ACF in eine wunderbare Darstellung im Frontend zu verwandeln.
Und jetzt kommt die Magie ins Spiel: Mit dem MCP Novamira Pro haben wir ein Tool zur Hand, dass WordPress so gut versteht, dass nicht einmal Claude es zusammenbringt das Ding zu verbocken:
- einen eigenen Inhaltstyp Gallerieposts anlegen
- ein Feld Typ ACF-Gallerie anlegen das diesem Posttyp zugeordnet ist
- Novamira Pro lokal installieren und die KI anweisen, sich ausschliesslich an die Abilities des MCPs zu halten.
- Die AI anweisen, die Datenbank nach den alten CPT zu durchsuchen, diese in den neuen, angeleget ACF-Posttyp zu überführen und alle Bilder, die den Posts zugeordnet waren in dem neuen ACF-Feld zu speichern. Novamira hat explizit ACF-Fähigkeiten. Die AI muss also nicht raten und suchen, sondern kann einfach ausführen.
Das Ganze funktioniert überraschend gut und schnell. Damit ist das größte Hemmnis überwunden, die Daten sind nun mal sicher. Jetzt mal schnell ein Backup der lokalen Site erstellen. Paranoia, aber gut …