Переадресация в вордпресс

Решено

Расскажите о переадресации вордпресс. Будет даже лучше если привести примеры как реализовать переадресацию после например регистрации или добавления комментария.

Как и какие фильтры использовать что бы настроить редирект после определенных действий.

Добавить Комментарий
Ответ

Перенаправление пользователей после успешной регистрации

 add_filter( 'registration_redirect', 'redir_new_users' );
function redir_new_users() {
 // change the slug below with your own page's slug
 return home_url( '/white-paper/' );
 }
 

Перенаправление пользователей после входа и выхода из системы

// вход
 add_filter( 'login_redirect', 'send_subscribers_home', 10, 3 );
function send_subscribers_home( $location, $request, $user ) {
 global $user;
 if ( isset( $user->roles ) && is_array( $user->roles ) ) {
 if ( in_array( 'subscriber', $user->roles ) ) {
 return home_url();
 } else {
 return $redirect_to;
 }
 }
 return;
 }
 
// выход
 add_filter( 'logout_redirect', 'goodbye_subscribers', 10, 3 );
function goodbye_subscribers( $location, $request, $user ) {
 global $user;
 if ( isset( $user->roles ) && is_array( $user->roles ) ) {
 if ( in_array( 'subscriber', $user->roles ) ) {
 // change the slug below with your own page's slug
 return home_url( '/goodbye/' );
 } else {
 return $redirect_to;
 }
 }
 return;
 }
 

Перенаправление пользователей после сброса пароля

 add_filter( 'lostpassword_redirect', 'lostpassword_message' );
function lostpassword_message( $location ) {
 // change the slug below with your own page's slug
 return '/lost-password-notice/';
 }
 

Перенаправление пользователей после оставления комментариев

 add_filter( 'comment_post_redirect', 'redirect_to_newsletter' );
function redirect_to_newsletter( $location ) {
 // change the slug below with your own page's slug
 return '/subscribe-to-our-newsletter/';
 }
 

Перенаправление со страницы с id 77

 add_action( 'template_redirect', function() {
 if( is_page(77) ){
 wp_redirect( 'http://example.org/path/to/subscribe', 301 );
 exit;
 }
 } );
 

Полезные функции:

https://developer.wordpress.org/reference/functions/wp_redirect/

https://codex.wordpress.org/Function_Reference/wp_safe_redirect

Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.