在wordpress网站后台登出(即注销)后默认会跳转到wp-login.php登录界面,因为一个wordpress定制主题的需求,要在登出后台时跳转到指定的网站页面,查找了一下相关代码,发现可以通过logout_url这个filter轻松实现。
代码示例:
1 2 3 4 | add_filter( 'logout_url', 'my_logout_page', 10, 2 ); function my_logout_page( $logout_url, $redirect ) { return home_url( '/my-logout-page/?redirect_to=' . $redirect ); } |
参数说明:
$logout_url
– 注销的URL,默认值:无
$redirect
– 成功登出后要跳转到的URL,默认值:无
登出后台跳转到指定页面代码:
1 2 3 4 5 6 | function my_logout_page($logout_url, $redirect){ global $wp; $redirect = is_admin() ? home_url() : home_url($wp->request); return $logout_url . '&redirect_to=' . $redirect; } add_filter('logout_url', 'my_logout_page', 10, 2); |
以上代码是判断当前页面是不是管理页,是就跳转到首页,不是就跳转到登出前的页面。
跳转到指定URL:
1 2 3 4 5 6 | function my_logout_page($logout_url, $redirect){ global $wp; $redirect = 'http://www.boke8.net'; return $logout_url . '&redirect_to=' . $redirect; } add_filter('logout_url', 'my_logout_page', 10, 2); |
把变量$redirect后面引号里的URL改为想要跳转到的URL即可。
WP官方文档:https://codex.wordpress.org/Plugin_API/Filter_Reference/logout_url