Redirecționare către pagina curentă după autentificarea în WordPress

10 dec. 2013, 15:00:53
Vizualizări: 34K
Voturi: 3

Vreau să redirecționez utilizatorii către pagina pe care se află după ce s-au autentificat pe site-ul meu WordPress. Am folosit următorul cod, dar nu funcționează pentru mine deoarece se află într-o pagină creată din panoul de administrare.

<?php echo wp_login_url(get_permalink()); ?>
2
Comentarii

Te rog să urmărești întrebările pe care le-ai adresat, este o parte importantă a procesului pe WPSE - vezi Ce ar trebui să fac când cineva răspunde la întrebarea mea? și De ce este importantă votarea? pentru o înțelegere mai profundă.

Nicolai Grossherr Nicolai Grossherr
8 apr. 2014 16:33:23
Toate răspunsurile la întrebare 5
0

Puteți utiliza filtrul login_redirect pentru a face acest lucru. Unul dintre parametri este $request, care

este URL-ul de pe care vine utilizatorul

function wpse125952_redirect_to_request( $redirect_to, $request, $user ){
    // în loc să folosim $redirect_to, redirecționăm înapoi către $request
    return $request;
}
add_filter('login_redirect', 'wpse125952_redirect_to_request', 10, 3);

Filtrul poate fi folosit suplimentar pentru a distinge destinațiile de redirecționare în funcție de rolurile utilizatorilor. Consultați documentația pentru o înțelegere mai profundă a acestui aspect.

10 dec. 2013 15:27:50
0

Încearcă wp_redirect() http://codex.wordpress.org/Function_Reference/wp_redirect Poate the_permalink() te va ajuta în funcție de locul de unde te autentifici.

Sau poate căutai asta?

<a href="<?php echo wp_login_url( get_permalink() ); ?>" title="Autentificare">Autentificare</a>
10 dec. 2013 15:14:00
0

Ce înseamnă pagina curentă a utilizatorului?

Oricum, ai încercat să folosești funcția încorporată wp_login_form()?

Ai putea să o folosești în felul următor:

$args = array(
    'echo' => true,
    // Aceasta ar putea fi Pagina Curentă a Utilizatorului?
    'redirect' => site_url( $_SERVER['REQUEST_URI'] ),
    'form_id' => 'user-login-form',
    'label_username' => __( 'Nume de utilizator' ),
    'label_password' => __( 'Parolă' ),
    'label_remember' => __( 'Ține-mă minte' ),
    'label_log_in' => __( 'Autentificare' ),
    '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 );
11 dec. 2013 06:41:57
1

Adaugă mai jos în fișierul tău functions.php

function admin_default_page() {
  $site=get_site_url();
  $site1=$site."/* slug-ul paginii */";
  return $site1;
}
add_filter('login_redirect', 'admin_default_page');
18 mai 2020 11:44:42
Comentarii

Includează întotdeauna o mică explicație cu răspunsul tău postat - astfel utilizatorii pot înțelege care este soluția, de ce este o soluție bună, ce fac diferitele funcționalități, etc.

Tony Djukic Tony Djukic
18 mai 2020 17:23:25
0
-1

Problemă rezolvată. Am instalat un plugin Wordpress pentru a executa cod PHP pe pagini. Apoi

<?php echo wp_login_url(get_permalink()); ?>

funcționează bine pe paginile Wordpress. http://wordpress.org/plugins/insert-php/

11 dec. 2013 06:24:45