Ja es ist möglich. Hierfür müssen Sie drei Filter erstellen.
Admin-Zeug in einer Klasse
class WPSE29338_Admin {
public static function setup() {
add_filter('login_url', array(__CLASS__, 'modifyLoginURL'), 10, 2);
add_filter('lostpassword_url', array(__CLASS__, 'modifyLostPasswordURL'), 10, 2);
add_filter('register', array(__CLASS__, 'modifyRegisterURL'));
}
public static function modifyLoginURL($loginUrl, $redirect = '') {
$loginUrl = site_url('login'); // Link to login URL
if(!empty($redirect)) {
$loginUrl = add_query_arg('redirect_to', urlencode($redirect), $loginUrl);
}
return $loginUrl;
}
public static function modifyLostPasswordURL($lostpwUrl, $redirect = '') {
$lostpwUrl = wp_login_url() . '#lostpassword'; // Link to lostpassword URL
if(!empty($redirect)) {
$lostpwUrl = add_query_arg('redirect_to', urlencode($redirect), $lostpwUrl);
}
return $lostpwUrl;
}
public static function modifyRegisterURL($registerUrl) {
if(!is_user_logged_in()) {
if (get_option('users_can_register')) {
$registerUrl = '<a href="' . wp_login_url() . '#register" class="btn">' . __('Register') . '</a>'; // Link to register URL
} else {
$registerUrl = '';
}
}
return $registerUrl;
}
}
Zuerst müssen wir die Ausgabe der Funktion zum Filtern , wp_login_url()
die verwendet wird , indem wp_login_form()
in dem Formen - action
Attribute.
Schauen Sie sich die Methode an modifyLoginUrl()
. Hier speichern wir die URL der Seite login
in der Variablen $loginUrl
. Diese Seite muss in WordPress vorhanden sein, erstellen Sie sie also zuerst.
Als nächstes brauchen wir einen Filter für die Funktion wp_lostpassword_url()
und wp_register()
. Es ist im Grunde das gleiche. Die URL der Site wird in der Variablen $lostpwUrl
und gespeichert $registerUrl
.
Zu guter Letzt müssen Sie die Klasse am richtigen Aktionshaken aufrufen. Für Themen sollte dies sein after_setup_theme
und für Plugins können Sie verwenden plugins_loaded
.
Themes / functions.php
add_action('after_setup_theme', 'wpse29338_admin_init');
function wpse29338_admin_init() {
WPSE29338_Admin::setup();
}
Plugins
add_action('plugins_loaded', 'wpse29338_admin_init');
function wpse29338_admin_init() {
WPSE29338_Admin::setup();
}
$loginUrl = site_url('login'); // Link to login URL
. Ändern Sie einfach "Anmelden" so, dass es mit dem Slug der Anmeldeseite übereinstimmt, die Sie verwenden möchten. Wenn Rofflox keinen Syntaxfehler gemacht hat, den ich nicht sehe, sieht es so aus, als würde es wunderbar funktionieren.