WordPress-Toolkit¶
Das WordPress-Toolkit bietet eine zentrale Verwaltung für alle WordPress-Installationen auf dem Server. Es ermöglicht Installation, Updates, Sicherheits-Scans, automatische Anmeldung und vieles mehr.
Übersicht¶
Das WordPress-Toolkit zeigt alle erkannten WordPress-Installationen als Karten mit Thumbnail-Vorschau:
| Information | Beschreibung |
|---|---|
| Domain | Website-Domain |
| Pfad | Installationspfad relativ zum Document Root |
| WordPress-Version | Installierte WP-Version |
| PHP-Version | Genutzte PHP-Version |
| SSL | SSL-Status |
| Auto-Update | Status des automatischen Updates |
| Plugins | Anzahl (mit Update-Hinweis) |
| Themes | Anzahl (mit Update-Hinweis) |
WordPress erkennen (Scan)¶
Der Button „Scan" durchsucht alle Websites nach WordPress-Installationen und trägt sie automatisch ins Toolkit ein — Version, Adresse, Titel und Admin-Benutzer werden per wp-cli ausgelesen.
- Nach einer Migration: Ein Scan füllt die Details bereits importierter WordPress-Sites, ohne erneut zu migrieren.
- Unterverzeichnisse: Es wird nicht nur die Installation im Wurzelverzeichnis gefunden, sondern auch WordPress in Unterverzeichnissen (z. B.
/shop,/blog) — jede Installation wird mit ihrem echten Pfad registriert. - Nicht mehr vorhandene Installationen werden als entfernt markiert.
WordPress installieren¶
- Klicken Sie auf WordPress installieren
- Füllen Sie das Formular aus:
| Feld | Pflicht | Beschreibung |
|---|---|---|
| Website | Ja | Ziel-Website auswählen |
| Pfad | Nein | Unterverzeichnis (leer = Root) |
| Titel | Ja | Website-Titel |
| Admin-Benutzer | Ja | WordPress-Admin-Login |
| Admin-Passwort | Ja | WordPress-Admin-Passwort |
| Admin-E-Mail | Ja | WordPress-Admin-E-Mail |
| Sprache | Ja | Installationssprache (z. B. de_DE) |
| Datenbank | Automatisch | Wird automatisch erstellt |
- Klicken Sie auf Installieren
Hinweis
Jede WordPress-Installation wird als vollwertige Webseite gezählt.
Das System führt automatisch aus:
- Download der aktuellen WordPress-Version
- Erstellung einer MariaDB-Datenbank
- Konfiguration der
wp-config.php - WordPress-Installation via WP-CLI
- Sicherheitsanpassungen (Dateiberechtigungen, Security-Keys)
Auto-Login (SSO)¶
- Klicken Sie auf den Login-Button bei einer WordPress-Installation
- Sie werden automatisch als WordPress-Admin eingeloggt
- Es wird ein temporärer Authentifizierungs-Token über ein WordPress-Plugin generiert
Funktionsweise
Das Auto-Login nutzt ein automatisch installiertes Must-Use-Plugin (mu-plugin) und Transients für die sichere Token-Übergabe. Kein Passwort wird über die URL übertragen.
Updates¶
WordPress-Core aktualisieren¶
- Wenn ein Update verfügbar ist, wird ein Update-Badge angezeigt
- Klicken Sie auf WordPress aktualisieren
- Die Aktualisierung wird via WP-CLI durchgeführt
Plugins aktualisieren¶
- Klicken Sie auf eine WordPress-Installation
- Wechseln Sie zum Tab Plugins
- Plugins mit verfügbaren Updates sind markiert
- Klicken Sie auf Aktualisieren einzeln oder Alle aktualisieren
Themes aktualisieren¶
- Wechseln Sie zum Tab Themes
- Themes mit verfügbaren Updates sind markiert
- Klicken Sie auf Aktualisieren
Auto-Updates konfigurieren¶
Pro Installation lassen sich drei unabhängige Auto-Update-Schalter aktivieren:
| Schalter | Was aktualisiert wird |
|---|---|
| Core | WordPress-Kern |
| Plugins | Alle installierten Plugins |
| Themes | Alle installierten Themes |
- Klicken Sie bei einer Installation auf die Auto-Update-Einstellung
- Aktivieren Sie die gewünschten Schalter (Core / Plugins / Themes)
- Speichern
Wann die Updates laufen: Ein Panel-Worker wendet die aktivierten Updates alle 6 Stunden an — zusätzlich einige Minuten nach jedem Panel-Neustart. Es gibt keine feste Uhrzeit. Ausgeführt wird per wp-cli (idempotent: ist nichts zu tun, passiert nichts). Staging-Klone werden übersprungen.
Voraussetzung
Auto-Updates laufen nur, solange das WordPress-Toolkit als Extension installiert und aktiviert ist.
Empfehlung
Aktivieren Sie mindestens Core, um Sicherheitslücken im WordPress-Kern zeitnah zu schließen. Für sofortige Updates nutzen Sie den Alle aktualisieren-Button — der Worker übernimmt danach nur noch den Rest.
Plugin-Verwaltung¶
Plugins anzeigen¶
Die Plugin-Liste zeigt pro WordPress-Installation:
| Spalte | Beschreibung |
|---|---|
| Name | Plugin-Name |
| Status | Aktiv, Inaktiv oder Must-Use |
| Version | Installierte Version |
| Update | Verfügbares Update |
| Risiko-Info | Bekannte Sicherheitslücken und Bewertung |
Plugin installieren¶
- Klicken Sie auf Plugin installieren
- Suchen Sie nach dem gewünschten Plugin
- Klicken Sie auf Installieren und Aktivieren
Plugin aktivieren / deaktivieren¶
- Nutzen Sie den Schalter in der Status-Spalte
Plugin löschen¶
- Deaktivieren Sie das Plugin
- Klicken Sie auf Löschen
- Bestätigen Sie die Löschung
Theme-Verwaltung¶
Ähnlich zur Plugin-Verwaltung können Themes:
- Installiert werden (aus dem WordPress-Repository)
- Aktiviert werden
- Aktualisiert werden
- Gelöscht werden
Sicherheits-Scan¶
Das Toolkit gleicht jede WordPress-Installation gegen bekannte Schwachstellen ab:
- WordPress-Core-Version gegen bekannte CVEs
- Plugins gegen die Schwachstellen-Datenbank
- Themes gegen bekannte Schwachstellen
Betroffene Plugins/Themes bekommen in der Detailansicht ein farbiges Badge nach Schweregrad (kritisch → niedrig); Core-Schwachstellen erscheinen als Hinweis oben. Angezeigt werden CVSS-Score, behoben in Version und Referenz-Links.
Schwachstellen-Datenquelle (wpvulnerability.net)¶
Die Schwachstellendaten stammen aus der freien wpvulnerability.net-API. Jede Komponente (Core/Plugin/Theme) wird bei Bedarf abgefragt und das Ergebnis lokal auf dem Server zwischengespeichert (24 h) — Folgeaufrufe sind sofort, und der Abgleich mit den installierten Versionen passiert lokal. Es ist kein API-Schlüssel nötig. Der Aktualisieren-Button in der Toolkit-Übersicht leert den Cache, sodass beim nächsten Aufruf frisch geladen wird.
Optional: WPScan
Ist zusätzlich ein WPScan-API-Schlüssel hinterlegt, werden dessen Treffer ergänzend einbezogen. wpvulnerability.net ist die schlüssellose Standardquelle.
Kritische Schwachstellen
Aktualisieren Sie Plugins und Themes mit bekannten Schwachstellen sofort. Deaktivieren Sie betroffene Plugins, wenn kein Update verfügbar ist.
Schwachstellendaten von wpvulnerability.net.
Datenbank-Verwaltung¶
Über das WordPress-Toolkit haben Sie direkten Zugriff auf:
- phpMyAdmin-SSO für die WordPress-Datenbank
- Datenbank-Prefix und Tabellenliste
- Datenbank-Größe
WP-CLI¶
WP-CLI-Befehle können über das Panel ausgeführt werden:
- Wählen Sie eine WordPress-Installation
- Navigieren Sie zum Tab WP-CLI
- Geben Sie einen WP-CLI-Befehl ein
- Die Ausgabe wird in Echtzeit angezeigt
Häufige Befehle¶
| Befehl | Beschreibung |
|---|---|
wp plugin list |
Alle Plugins auflisten |
wp theme list |
Alle Themes auflisten |
wp user list |
Alle Benutzer auflisten |
wp cache flush |
Cache leeren |
wp search-replace 'old' 'new' |
Suchen und Ersetzen in der DB |
wp db export |
Datenbank-Dump erstellen |
wp cron event list |
Geplante Aufgaben anzeigen |
Caching¶
WordPress-Caching-Optionen:
| Option | Beschreibung |
|---|---|
| OPcache | PHP-OPcache für schnellere PHP-Ausführung |
| Redis | Object-Cache über Redis (falls verfügbar) |
| Page-Cache (FastCGI) | Server-seitiger Page-Cache direkt in Nginx — siehe unten |
Page-Cache (FastCGI-Micro-Cache)¶
Der Page-Cache lässt Nginx fertige PHP-Antworten für kurze Zeit zwischenspeichern und liefert Wiederholungsaufrufe komplett ohne PHP aus. Das bringt bei anonymem Traffic massiv niedrigere Antwortzeiten (TTFB) — schneller als klassische Cache-Plugins, weil PHP gar nicht erst gestartet wird.
Aktivieren: Im WordPress-Toolkit den Schalter Page-Cache (FastCGI) bei der Installation einschalten. Der Cache gilt für die Website inkl. ihrer Subdomains.
Automatisch umgangen wird der Cache (damit nie eine private Seite falsch ausgeliefert wird):
- Eingeloggte Nutzer (Cookies
wordpress_logged_in,comment_author,wp-postpass) - WooCommerce — Warenkorb, Kasse, Konto (
woocommerce_*-Cookies) - POST-Requests,
wp-admin,wp-login.php,xmlrpc.php,wp-cron.php,wp-json - Anfragen mit Joomla-/Session-Cookie
TTL: 30 Sekunden. Änderungen im Frontend sind also spätestens nach 30 s sichtbar (für eingeloggte Redakteure sofort, da sie den Cache umgehen).
Prüfen: Der Response-Header X-Enconf-Cache zeigt HIT, MISS oder BYPASS.
Mehrsprachige Sites: Setzt die Seite ein Sprach-Cookie (z. B. nc_lang, Polylang, WPML), wird der Cache-Schlüssel pro Sprache getrennt — eine deutsche Seite wird also nie an einen englischen Besucher ausgeliefert.
Zusammenspiel mit den anderen Cache-Optionen
- OPcache (PHP-Bytecode) und Redis (Object-Cache) liegen auf anderen Ebenen und ergänzen den Page-Cache — ruhig zusätzlich aktivieren.
- Ein Page-Cache-Plugin (WP Super Cache, W3TC, LiteSpeed Cache) cacht dagegen dieselbe Ebene (ganze Seite) → nur eins von beiden nutzen. Der FastCGI-Cache ist schneller (liefert ganz ohne PHP), daher die bessere Wahl.
WordPress klonen¶
- Klicken Sie auf Klonen bei einer Installation
- Wählen Sie die Ziel-Website
- Das System kopiert alle Dateien und die Datenbank
- URLs werden automatisch per
wp search-replaceaktualisiert
WordPress migrieren — nur mit wp-admin-Zugang¶
Übernehmen Sie eine komplette WordPress-Instanz von einem beliebigen fremden Hoster — ohne FTP, ohne SSH, ohne direkten Datenbank-Zugang. Es genügt der ganz normale wp-admin-Login der Quell-Website.
So funktioniert's:
- Im Panel: WordPress → Importieren öffnen und das Ziel wählen — entweder eine neue Website anlegen lassen oder eine bestehende leere Website überschreiben. Das Panel zeigt einen Pairing-Code.
- Auf der Quell-Website: Das enconf Migrator-Plugin herunterladen (Button im Panel), unter Plugins → Installieren → Hochladen einspielen und aktivieren. Dann unter Werkzeuge → enconf Migrator den Pairing-Code einfügen und koppeln.
- Automatisch: Sobald gekoppelt, meldet sich die Quelle beim Panel. Das Panel zieht Dateien und Datenbank, legt eine dedizierte MariaDB-Datenbank an, importiert alles und schreibt die URLs per
wp search-replaceauf die Zieldomain um. Danach erscheint die Instanz direkt im WordPress-Toolkit.
Sicherheit
Die Kopplung nutzt ein 256-Bit-Einmalgeheimnis (im Pairing-Code, constant-time verglichen). Es werden keine Zugangsdaten der Quell-Website gespeichert, und das Companion-Plugin exportiert nur, solange es gekoppelt ist.
Voraussetzungen
- Quelle: WordPress mit wp-admin-Zugang und installiertem enconf-Migrator-Plugin.
- Die Quell-Website muss vom Panel aus per HTTPS erreichbar sein (das Panel zieht das Paket — die Quelle braucht keinen ausgehenden Zugriff auf das Panel).
Keine Größenbeschränkung
Der Import wird von Anfang bis Ende gestreamt — das Paket wird nie im Speicher gehalten, sondern direkt auf die Festplatte geschrieben (Quelle → Panel → Zielserver). Es gibt kein festes Größenlimit: die einzige Grenze ist der freie Speicherplatz auf Quell- und Zielserver. Auch große WordPress-Installationen mit 10+ GB (z. B. medienlastige Seiten mit großem wp-content/uploads) lassen sich so migrieren.