Wer sich mit Webdesign und Webentwicklung befasst wird irgendwann an den Punkt kommen, an dem man eine lokale Entwicklungsumgebung benötigt. Anpassungen direkt am produktiven System vorzunehmen ist wie eine Operation am offenen Herzen. Man sollte es wenn immer möglich unterlassen und das Risiko von einem Crash umgehen. Um dies zu erreichen setzt man eine Entwicklungs- oder Testumgebung ein.
Die weitverbreitesten Umgebungen sind wohl XAMPP und MAMP. Beide Tools sind für Windows und MacOS verfügbar. Der Vorteil von MAMP ist die Integration der beiden Webserver von Apache und Nginx. XAMPP stellt nur den erstgenannten zur Verfügung. Eine weitere Variante wäre der Einsatz von Docker, was aber eher für Fortgeschrittene ist.
In diesem Blogpost möchte ich jedoch auf ein anderes Tool eingehen, welches auch von Anfängern mit wenig Wissen eingesetzt werden kann. Dank Tante Google hab ich beim Stöbern Local WP entdeckt. Die Entwicklungsumgebung von Flywheel ist perfekt auf das Arbeiten mit WordPress abgestimmt. Mit wenigen Klicks generiert man eine vollwertige Testumgebung mit WordPress. Dabei lassen sich unterschiedliche Eigenschaften wie zum Beispiel der verwendete Webserver oder die eingesetzte PHP und MySQL Version konfigurieren und nachträglich teilweise sogar auch wieder ändern. Tönt eigentlich zu schön um wahr zu sein. Ich zeig dir mal wie einfach die Konfiguration einer WordPress Installation mit Local WP vonstatten geht.
Neue Site mit Local für WordPress erstellen
Die Installation der Software ist einfach, weshalb ich nicht darauf eingehe. Der erste Schritt ist somit den gewünschten Seitennamen zu definieren. Unter erweiterte Optionen kann man die vorgeschlagene Sitedomain ändern sowie den Verzeichnispfad anpassen. Wer bereits Sites erstellt hat, kann die Site anhand eines Blueprints aufsetzen. Dies ist ein Image einer zuvor installierten Seite. Mit einem Blueprint werden Themes und Plugins gespeichert und können in späteren Installationen wiederverwendet werden. Wie ein Blueprint erstellt wird, sehen wir später. Die Einstellungen in diesem Schritt sind gemacht und man klickt auf Weiter.
Konfigurieren der Umgebung
Im nächsten Abschnitt wird die Entwicklungsumgebung konfiguriert. Wer es einfach haben möchte wählt „Prefered“ und bekommt somit eine Standardumgebung. Möchte man Anpassungen vornehmen, klickt man auf „Custom“. Hier lässt sich die PHP Version, der Webserver sowie die Datenbank bestimmen. Nicht alle Elemente sind in der Grundinstallation bereits vorhanden. Wählt man zum Beispiel PHP 5.6, so wird die Software beim späteren Einrichten der Site jedoch gleich runtergeladen. Hat man sich entschieden und alle Einstellungen sind getätigt, klickt man wieder auf Weiter.
WordPresskonfiguration
Im letzten Abschnitt definiert man den Username und das Passwort für die spätere WordPress-Installation. Auch für das Testen von Emailfunktionen hat Local WP eine Lösung bereit. Für diese Funktionalität definiert man eine Emailadresse. Diese wird danach in der Entwicklungsumgebung konfiguriert und ist von ausserhalb der Umgebung nicht nutzbar. Zum Abschluss gibt man noch an ob die Installation eine WordPress Multisite ist. Mit „Add Site“ wird die Seite erstellt. Nach Abschluss der Installation erfolgt die Weiterleitung zur Siteübersicht. Es kann je nach System ein bis zwei Minuten dauern, bis die neue WordPress-Seite erstellt ist.
WordPress Sites verwalten
Sobald die Konfiguration abgeschlossen ist sieht man die Übersicht aller vorhandenen Instanzen. Im rechten Bereich des Fensters werden jeweils die Details zur ausgewählten Site angezeigt. Hier kann bei Bedarf der Webserver und die PHP Version anpassen werden. Nicht ändern lassen sich die MySQL-Version sowie die Option für eine Multisite.
Im nächsten Tab sind die Datenbankeinstellungen untergebracht. Von hier aus kann man die Datenbank mit Adminer, einem Webtool ähnlich wie PHPmyAdmin anschauen und editieren. Anstelle von Adminer wäre auch noch Sequel Pro für die Administration der Datenbanken vorgesehen. Bei mir erkannte Local WP jedoch die Installation von Sequel Pro nicht und zeigte somit immer den Button für den Download der Software an. Nach kurzer Recherche im Internet konnte ich dann feststellen, dass der Fehler auch bei anderen Benutzern auftritt und bisher leider noch keine Lösung bekannt ist.
Wie bereits zuvor bemerkt, bietet Local WP neben all den anderen Features eine Testfunktionaltät für den Email-Workflow. Auf dem Tab „Utilities“ befindet sich ein Link um Mailhog zu öffnen. In diesem Tool werden die Mails abgefangen, welche man an die bei der Konfiguration der Site definierten Emailadresse sendet. So lässt sich einerseits überprüfen, ob Mails von WordPress versendet werden und andererseits ob diese richtig dargestellt und inhaltlich korrekt sind.
Mit einem rechten Mausklick auf die Site werden weitere Auswahlmöglichkeiten geöffnet. So lässt sich die Site unter anderem stoppen und starten, clonen, löschen oder als Blueprint speichern. Wer eine Terminalsession braucht kann diese ebenfalls direkt über das Kontextmenu öffnen.
WordPress installiert und nun?
Die WordPress-Site ist nun also installiert und der Server gestartet. Über die beiden Buttons „Admin“ und „View Site“ öffnen sich der Adminbereich und die Frontpage. Beides verhält sich so, als hätte man online eine WordPress-Installation durchgeführt. Auch die Installation und Konfiguration von Themes und Plugins ist als hätte man bei seinem Hoster eine WordPress-Installation durchgeführt. Man hat also mit sehr wenig Aufwand eine Entwicklungsumgebung für WordPress erhalten, welche in weiten Bereich gleich ist wie eine Produktivumgebung.
Umzug der Daten auf das produktive System
Für die Migration auf ein Livesystem habe ich ein Plugin wie All-in-One Migration oder den Duplicator verwendet. Mit diesen Tools lässt sich innerhalb weniger Minuten ein Abbild der Website erstellen. Die Files lädt man danach auf den Server und mit einem Installationscript entpackt und installiert man sie. Dieses Vorgehen ist zuverlässig und endet in den seltesten Fällen mit Problemen.
Fazit von Local WP
Ich habe die Entwicklungsumgebung nun einige Wochen genutzt. Die Installation einer Testplattform ist im Nu abgeschlossen. Dies hat bei mir dazu geführt, dass ich auch mal für kurze Tests von Plugins eine neue Instanz erstellt und danach wieder gelöscht habe.
Die Oberfläche und Bedienung von WP Local ist sehr übersichtlich und intuitiv gestaltet. Auch in Sachen Geschwindigkeit gibt es nichts zu meckern. Ich hatte teilweise bis zu 6 Instanzen gleichzeitig am Laufen und konnte keine Performanceprobleme erkennen.
Alles in allem ist WP Local ein absolut empfehlenswertes Tool für alle die mit WordPress arbeiten und nicht immer auf dem Produktivsystem arbeiten wollen.