如果你的 WordPress 网站有前端登录注册功能,但不想让其他人访问 wp-login.php 登录页面,并且当访问 WordPress 默认登录页面时重定向到指定的页面,比如前端登录注册页面等,可以通过下面的代码实现。
将代码添加到当前主题函数模板 functions.php 中。
代码一、访问wp-login.php重定向到指定页面。
// 重定向wp-login.php add_action('init', 'custom_login'); function custom_login() { global $pagenow; if( 'wp-login.php' == $pagenow && $_GET['action']!="logout") { wp_redirect('https://www.bbseat.com.cn'); exit(); } }
代码二、重定向到指定页面,且不影响重置密码时访问。
// 重定向wp-login.php add_action('init', 'redirect_wp_login'); function redirect_wp_login() { // WP全局变量 global $pagenow; // 如果设置了$_GET['action'],则加载到$action变量中 $action = (isset($_GET['action'])) ? $_GET['action'] : ''; // 判断是否在登录页面,并且不是重置密码 if( $pagenow == 'wp-login.php' && ( ! $action || ( $action && ! in_array($action, array('logout', 'lostpassword', 'rp', 'resetpass'))))) { $page = 'https://www.bbseat.com.cn'; // 重定向的网址 wp_redirect($page); // 重定向 exit(); // 停止执行 } }
第一段代码当重置密码时也会跳转,如果你的前端登录注册没有重置密码功能,可以用下面这个代码,即可以阻止访问 wp-login.php,同时又不影响重置密码时访问。