wake-up-neo.net

So überschreiben Sie wp-login.php

Ich möchte die standardmäßige WordPress-Anmeldeseite überschreiben: wp-login.php.

Der Grund ist, dass ich einen benutzerdefinierten Code am Anfang der Datei schreiben möchte, der einige Bedingungen im Backend überprüft und Dinge ausführt, wie den Benutzer auf eine andere Seite umzuleiten.

Ich möchte dies tun, weil ich meine eigene Authentifizierungslogik in einer benutzerdefinierten Datei ausführen möchte, ohne das standardmäßige WordPress-Anmeldeformular anzuzeigen. Meine Logik beinhaltet das Parsen einiger Cookie- und Sitzungsdaten (insbesondere kein Anmeldeformular, möglicherweise ein benutzerdefiniertes Formular).

Eigentlich wollte ich meine Logik in die header.php-Datei eines untergeordneten Themas schreiben, aber leider enthält die wp-login.php-Datei nicht die Header-Datei des Themas.

Ich möchte den wp-login.php nicht direkt bearbeiten, da ich befürchte, dass alle meine Änderungen bei zukünftigen WordPress-Updates verloren gehen.

Gibt es eine Möglichkeit, die WordPress-Anmeldeseite nach einem WordPress-Update ohne Verluste zu überschreiben?

Oder ist es möglich, alle Anforderungen an wp-login.php zu einer benutzerdefinierten PHP -Datei weiterzuleiten, damit ich meine gesamte Logik in diese Datei schreiben kann?

3
shasi kanth

Ändern Sie nicht den Kern, sondern verwenden Sie stattdessen das System "Actions and Hooks"

add_action( 'login_init', 'yourloginoverrides' );

function yourloginoverrides() {
    // do some check and call wp_redirect if its true or whatever you wanted to do
}
6
Tom J Nowell