WordPress Auto Login Benutzer nach der Registrierung nur von einer bestimmten Seite

Ich habe eine benutzerdefinierte Join-Seite, die / join / und die Seiten-ID = 484 genannt wird, und sie verwendet ein Plugin für die Registrierungsfunktion, indem sie einfach einen Shortcode auf der Seite platziert.

Ich muss den Benutzer nach dem Registrieren automatisch anmelden und sie an eine bestimmte Seite senden. Also habe ich eine function erstellt, die funktioniert, aber sie wird auch ausgetriggers, wenn ich als Admin angemeldet bin und gehe, um einen neuen Benutzer hinzuzufügen oder die function wp_insert_user () zu benutzen.

Hier ist der Code, der funktioniert, aber wie schränkt ich die automatische Anmeldung so ein, dass sie nur funktioniert, wenn sie von der Seite mit der Bezeichnung “Join” kommen.

function auto_login_new_user( $user_id ) { wp_set_current_user($user_id); wp_set_auth_cookie($user_id, false, is_ssl()) ; wp_redirect( 'http://example.com/special.php' ); exit; } add_action( 'user_register', 'auto_login_new_user',10,1 ); 

Jetzt funktioniert dieser Code nicht, wenn ich sage, dass er auf der Seiten-ID 484 ausgeführt werden soll, warum?

 function auto_login_new_user( $user_id ) { if (is_page('484')){ wp_set_current_user($user_id); wp_set_auth_cookie($user_id, false, is_ssl()) ; wp_redirect( 'http://example.com/special.php' ); exit; } } add_action( 'user_register', 'auto_login_new_user',10,1 ); 

Solutions Collecting From Web of "WordPress Auto Login Benutzer nach der Registrierung nur von einer bestimmten Seite"

Uses diese function, um admin zum Armaturenbrett umzuleiten

 function admin_login_redirect( $redirect_to, $request, $user ) { global $user; if( isset( $user->roles ) && is_array( $user->roles ) ) { if( in_array( "administrator", $user->roles ) ) { return $redirect_to; } } } add_filter("login_redirect", "admin_login_redirect", 10, 3); 

Für mehr / kurze Details lesen Sie diesen Artikel .

Seiten ID nicht in Anführungszeichen, Siehe diese Zeile Ihres

 if (is_page('484')){ 

Ändere diese Zeile so

 //Removed quotes from Page ID if (is_page(484)){ 

Als Alternative kann dies mit Page Slug auch so gemacht werden

 //Slug will come in quotes if (is_page('Type_Page_Slug_Here')){