У меня есть сайт WordPress, где некоторые / большинство страниц могут просматривать все (не вошли в систему).Некоторые страницы после входа в систему могут просматривать только они.
Как я могу перенаправить пользователя на ранее посещенную страницу после входа в систему?
Я пробовал так много разных битов кода, но ни одинработал в этой ситуации.
Мой текущий код ниже.Но это просто отправляет пользователя обратно на страницу моей учетной записи.
function wc_custom_user_redirect( $redirect, $user ) {
// Get the first of all the roles assigned to the user
$role = $user->roles[0];
$dashboard = admin_url();
$redirectUrl = wp_get_referer();
if( $role == 'administrator' ) {
//Redirect administrators to the dashboard
$redirect = $dashboard;
} else if( $role == 'customer' ) {
//Redirect customers and subscribers to the "My Account" page
$redirect = $redirectUrl;
} else {
//Redirect any other role to the previous visited page or, if not available, to the home
$redirect = wp_get_referer() ? wp_get_referer() : home_url();
}
return $redirect;
}
add_filter( 'woocommerce_login_redirect', 'wc_custom_user_redirect', 10, 2 );