404-Weiterleitung
Das Subsite-404-Redirect-Modul ersetzt die Standard-WordPress-404-Seite durch eine saubere Weiterleitung auf ein konfigurierbares Ziel. Statt einer nackten Fehlerseite landen Besucher bei einem Tippfehler in der URL auf der Startseite, einer bestimmten Seite oder einer frei angegebenen URL.
Allgemein
Konfiguration
Das Weiterleitungsziel wird pro Subsite im Dashboard unter Weinhold → 404 Redirect definiert – zur Wahl stehen die Startseite, eine bestimmte WordPress-Seite aus einer Auswahlliste, oder eine frei eingegebene URL. Zusätzlich lässt sich zwischen temporärer (302) und dauerhafter (301) Weiterleitung wählen, und ob eingeloggte Nutzer sowie Administratoren ebenfalls umgeleitet werden sollen (Admins standardmäßig ausgenommen, zum Debuggen).
Ausnahmepfade
Eigene Pfade (einer pro Zeile, z. B. api/webhook) lassen sich von der Weiterleitung ausnehmen. Technische WordPress-Pfade (wp-json, wp-login.php, wp-cron.php, xmlrpc.php, robots.txt, favicon.ico, Feeds) sowie AJAX- und REST-Requests sind fest eingebaut immer ausgenommen.
Pro Site
Da jede Subsite im Netzwerk unterschiedliche Inhalte und Strukturen haben kann, ist die Konfiguration bewusst pro Site getrennt. Eine öffentliche Seite kann z. B. auf die Startseite weiterleiten, während eine interne Site auf die Login-Seite umleitet. Subsites ohne aktivierte Konfiguration behalten die Standard-WordPress-404-Seite.
Dateien
modules/subsite_404_redirect.php – einzige Datei des Moduls: Weiterleitungslogik, Einstellungen, Admin-Seite, Cleanup.
Für Entwickler
Einstellungen (Option weinhold_subsite_404_redirect_settings)
Schlüssel Bedeutung target_mode home, page oder custom_url target_page_id Ziel-Seiten-ID bei target_mode=page target_custom_url Ziel-URL bei target_mode=custom_url status_code 301 oder 302 apply_for_logged_in Auch eingeloggte Nutzer umleiten allow_admin_debug Administratoren von der Weiterleitung ausnehmen append_from404 Hängt from404=1 und den fehlenden Pfad als missing-Parameter an die Ziel-URL an exception_custom_paths Zusätzliche, frei definierte Ausnahmepfade Ablauf
Hängt an template_redirect und greift nur bei echten 404-Antworten außerhalb des Admin-Bereichs. Reihenfolge der Prüfungen: aktiver Wartungsmodus bricht sofort ab, dann Modul aktiv?, dann technische/Ausnahmepfade, dann Admin-Debug-Ausnahme, dann eingeloggte Nutzer, dann eigene Ausnahmepfade. Zeigt die aufgelöste Ziel-URL zufällig auf den aktuellen (404-)Pfad, wird ebenfalls nicht umgeleitet – verhindert eine Weiterleitung auf sich selbst.
REST- und AJAX-Requests sind immer ausgenommen, auch ohne manuelle Konfiguration – ein 404 innerhalb der REST-API soll als echter API-Fehler beim aufrufenden System ankommen, nicht als HTML-Weiterleitung. Beim Modul-Reset werden zusätzlich mehrere Legacy-Optionen früherer Versionen entfernt (enabled/target/status/exceptions/exception_page_ids einzeln) – Überbleibsel, bevor die Einstellungen in ein einziges Array zusammengeführt wurden.Besonderheiten
Wartungsmodus hat Vorrang: Ist das Wartungsmodus-Modul aktiv, greift die 404-Weiterleitung gar nicht erst – die eigene Weiterleitung des Wartungsmodus soll nicht überschrieben werden.
Versionshistorie
Version Datum Änderung 1.0.0 22.09.2026 Einführung der Versionierung.