隐藏 wp-login.php 作为登录并将其重定向到自定义登录页面
Hide wp-login.php as log-in and redirect it to a custom login page
我想在我的网站上隐藏 wp-login.php 所以我安装了插件重命名 wp-login.php,我将它重命名为登录。现在我想将它重定向到我的自定义登录页面,以便完全隐藏 wordpress 的默认登录表单。有没有办法做到这一点?我已经尝试过重定向插件和下面的代码,但是它只支持 wp-login.php 而不是我的新登录 url:
function redirect_login_page(){
// Store for checking if this page equals wp-login.php
$page_viewed = basename( $_SERVER['REQUEST_URI'] );
// permalink to the custom login page
$login_page = get_permalink( '10' );
if( $page_viewed == "wp-login.php" ) {
wp_redirect( $login_page );
exit();
}
}
有没有办法在不实际改变 wordpress 基础文件的情况下做到这一点?
您可以使用名为All In One WP Security & Firewall.
的插件通过自定义管理员登录页面访问wordpress管理员的结果。
多合一 WordPress 安全插件将使您的网站安全性提升到一个全新的水平。此插件由专家设计和编写,易于使用,understand.It 通过检查漏洞以及实施和执行最新推荐的 WordPress 安全实践和技术来降低安全风险。
您的要求:
此插件可以隐藏管理员登录页面。重命名您的 WordPress 登录页面 URL,这样机器人和黑客就无法访问您的真实 WordPress 登录页面 URL。此功能允许您将默认登录页面 (wp-login.php) 更改为您配置的内容。
更多功能,请参考plugin codex
你可以参考这个插件https://wordpress.org/plugins/custom-login-url/
或
https://www.inkthemes.com/how-to-redirecting-wordpress-default-login-into-a-custom-login-page/
试试这个
add_action('init','custom_login');
function custom_login(){
global $pagenow;
if( 'wp-login.php' == $pagenow ) {
wp_redirect('http://localhost/wordpresstest/blog/');
exit();
}
}
试试这个
// Hook the appropriate WordPress action
add_action('init', 'prevent_wp_login');
function prevent_wp_login() {
// WP tracks the current page - global the variable to access it
global $pagenow;
// Check if a $_GET['action'] is set, and if so, load it into $action variable
$action = (isset($_GET['action'])) ? $_GET['action'] : '';
// Check if we're on the login page, and ensure the action is not 'logout'
if( $pagenow == 'wp-login.php' && ( ! $action || ( $action && ! in_array($action, array('logout', 'lostpassword', 'rp', 'resetpass'))))) {
// Load the home page url
$page = get_bloginfo('url');
// Redirect to the home page
wp_redirect($page);
// Stop execution to prevent the page loading for any reason
exit();
}
}
我想在我的网站上隐藏 wp-login.php 所以我安装了插件重命名 wp-login.php,我将它重命名为登录。现在我想将它重定向到我的自定义登录页面,以便完全隐藏 wordpress 的默认登录表单。有没有办法做到这一点?我已经尝试过重定向插件和下面的代码,但是它只支持 wp-login.php 而不是我的新登录 url:
function redirect_login_page(){
// Store for checking if this page equals wp-login.php
$page_viewed = basename( $_SERVER['REQUEST_URI'] );
// permalink to the custom login page
$login_page = get_permalink( '10' );
if( $page_viewed == "wp-login.php" ) {
wp_redirect( $login_page );
exit();
}
}
有没有办法在不实际改变 wordpress 基础文件的情况下做到这一点?
您可以使用名为All In One WP Security & Firewall.
的插件通过自定义管理员登录页面访问wordpress管理员的结果。多合一 WordPress 安全插件将使您的网站安全性提升到一个全新的水平。此插件由专家设计和编写,易于使用,understand.It 通过检查漏洞以及实施和执行最新推荐的 WordPress 安全实践和技术来降低安全风险。
您的要求:
此插件可以隐藏管理员登录页面。重命名您的 WordPress 登录页面 URL,这样机器人和黑客就无法访问您的真实 WordPress 登录页面 URL。此功能允许您将默认登录页面 (wp-login.php) 更改为您配置的内容。
更多功能,请参考plugin codex
你可以参考这个插件https://wordpress.org/plugins/custom-login-url/
或
https://www.inkthemes.com/how-to-redirecting-wordpress-default-login-into-a-custom-login-page/
试试这个
add_action('init','custom_login');
function custom_login(){
global $pagenow;
if( 'wp-login.php' == $pagenow ) {
wp_redirect('http://localhost/wordpresstest/blog/');
exit();
}
}
试试这个
// Hook the appropriate WordPress action
add_action('init', 'prevent_wp_login');
function prevent_wp_login() {
// WP tracks the current page - global the variable to access it
global $pagenow;
// Check if a $_GET['action'] is set, and if so, load it into $action variable
$action = (isset($_GET['action'])) ? $_GET['action'] : '';
// Check if we're on the login page, and ensure the action is not 'logout'
if( $pagenow == 'wp-login.php' && ( ! $action || ( $action && ! in_array($action, array('logout', 'lostpassword', 'rp', 'resetpass'))))) {
// Load the home page url
$page = get_bloginfo('url');
// Redirect to the home page
wp_redirect($page);
// Stop execution to prevent the page loading for any reason
exit();
}
}