Je veux juste rediriger les utilisateurs vers leur page actuelle après avoir enregistré sur mon site web wordpress. J’ai utilisé ce qui suit, mais cela ne fonctionnera pas pour moi car c’est dans la page créée à partir de l’administrateur.
<?php echo wp_login_url(get_permalink()); ?>
Vous pouvez utiliser le filtre login_redirect
pour le faire. Un des paramètres est $request
, qui
est l'URL de l'utilisateur
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);
De plus, le filtre pourrait facilement être utilisé pour distinguer les destinations de redirection par rôles d'utilisateur. Jetez un coup d'œil à la documentation pour mieux comprendre.
Essayez wp_redirect () http://codex.wordpress.org/Function_Reference/wp_redirect Peut-être que the_permalink () vous aidera, selon l'endroit où vous vous connectez.
Sinon, est-ce ce que vous cherchez?
<a href="<?php echo wp_login_url( get_permalink() ); ?>" title="Login">Login</a>
Qu'entendez-vous par page actuelle de l'utilisateur?
Quoi qu'il en soit, avez-vous essayé d'utiliser la fonction intégrée wp_login_form ()?
Vous voudrez peut-être l'utiliser de cette façon:
$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 );