Ich möchte nur die Benutzer auf ihre aktuelle Seite umleiten, nachdem ich mich auf meiner WordPress-Website angemeldet habe. Ich habe das Folgende benutzt, aber es funktioniert nicht für mich, da es sich um eine Seite handelt, die von der Admin-Seite erstellt wurde.
<?php echo wp_login_url(get_permalink()); ?>
Sie können dazu den Filter login_redirect
verwenden. Einer der Parameter ist $request
ist die URL, von der der Benutzer kommt
function wpse125952_redirect_to_request( $redirect_to, $request, $user ){
// instead of using $redirect_to we're redirecting back to $request
return $request;
}
add_filter('login_redirect', 'wpse125952_redirect_to_request', 10, 3);
Der Filter kann außerdem leicht zur Unterscheidung von Umleitungszielen nach Benutzerrollen verwendet werden. Schauen Sie sich die Dokumentation an, um einen tieferen Einblick zu erhalten.
Probieren Sie wp_redirect () http://codex.wordpress.org/Function_Reference/wp_redirect Vielleicht hilft Ihnen the_permalink (), je nachdem, von wo Sie sich einloggen.
Alternativ ist es das, wonach Sie suchen?
<a href="<?php echo wp_login_url( get_permalink() ); ?>" title="Login">Login</a>
Was meinen Sie mit der aktuellen Seite des Benutzers?
Haben Sie schon versucht, die integrierte Funktion wp_login_form () zu verwenden?
Sie können es folgendermaßen verwenden:
$args = array(
'echo' => true,
// This could be your User's Current Page?
'redirect' => site_url( $_SERVER['REQUEST_URI'] ),
'form_id' => 'user-login-form',
'label_username' => __( 'Username' ),
'label_password' => __( 'Password' ),
'label_remember' => __( 'Remember Me' ),
'label_log_in' => __( 'Log In' ),
'id_username' => 'user_login',
'id_password' => 'user_pass',
'id_remember' => 'rememberme',
'id_submit' => 'wp-submit',
'remember' => true,
'value_username' => NULL,
'value_remember' => false );
wp_login_form( $args );