Intereting Posts

wp_logout не перенаправляется с помощью wp_logout_url () и wp_redirect ()

Я написал эту функцию для пользователя loggin. Пользователь выгружается, но не перенаправляет на страницу, а отправляется на главную страницу, по умолчанию выйдите из Url. Я попробовал wp_logout_url (), а также wp_redirect ().

function wc_registration_redirect( $redirect_to) { wp_logout(); wp_redirect( '/my-account'); exit; } 

Solutions Collecting From Web of "wp_logout не перенаправляется с помощью wp_logout_url () и wp_redirect ()"

Правильным методом изменения перенаправления выхода является фильтр logout_redirect :

 /** * Filters the log out redirect URL. * * @since 4.2.0 * * @param string $redirect_to The redirect destination URL. * @param string $requested_redirect_to The requested redirect destination URL passed as a parameter. * @param WP_User $user The WP_User object for the user that's logging out. */ add_filter( 'logout_redirect', function( $redirect_to, $requested_redirect_to, $user ) { if ( ! $requested_redirect_to ) { // Don't override the redirect if one was already set in the logout URL $redirect = home_url( user_trailingslashit( 'my-account' ) ); } return $redirect; }, 10, 3 ); 

Вам нужно подключить его к действиям wp_logout и удалить wp_logout(); от функции. Это будет выглядеть ниже,

 add_action('wp_logout', 'wc_registration_redirect'); function wc_registration_redirect( $redirect_to) { wp_redirect( '/my-account'); exit; }