Change Dashboard url

时间:2016-11-03 作者:Unnikrishnan R

如何更改WordPress安装仪表板的链接www.mysite.com/wp-adminwww.mysite.com/custom-name, 没有使用任何第三方插件?

我已经知道只要改变wp-admin 文件夹名称无效。

1 个回复
SO网友:Firefog

Without Plugin:

1. Add constant to wp-config.php

define(\'WP_ADMIN_DIR\', \'admin-area\');
define(\'SITECOOKIEPATH\', preg_replace(\'|https?://[^/]+|i\', \'\', get_option(\'siteurl\') . \'/\' ) );
define(\'ADMIN_COOKIE_PATH\', SITECOOKIEPATH . WP_ADMIN_DIR); 

2. Add below filter to functions.php

add_filter(\'site_url\',  \'wpadmin_filter\', 10, 3);  

function wpadmin_filter( $url, $path, $orig_scheme ) {  
    $old  = array( "/(wp-admin)/");  
    $admin_dir = WP_ADMIN_DIR;  
    $new  = array($admin_dir);  
    return preg_replace( $old, $new, $url, 1); 
}

3. Add below line to .htaccess file

RewriteRule ^admin-area/(.*) wp-admin/$1?%{QUERY_STRING} [L]
RewriteRule ^admin-area/?$ /wp-login.php [QSA,L]
RewriteRule ^admin-area/register/?$ /wp-login.php?action=register [QSA,L]
RewriteRule ^admin-area/lostpassword/?$ /wp-login.php?action=lostpassword [QSA,L]

Also you can redirect Using this function

add_action(\'login_form\',\'redirect_wp_admin\');

    function redirect_wp_admin(){
    $redirect_to = $_SERVER[\'REQUEST_URI\'];
        if(count($_REQUEST)> 0 && array_key_exists(\'redirect_to\', $_REQUEST)){
        $redirect_to = $_REQUEST[\'redirect_to\'];
        $check_wp_admin = stristr($redirect_to, \'wp-admin\');
                if($check_wp_admin){
                wp_safe_redirect( \'404.php\' );
                }
        }
    }
这里有一个很好的免费插件Protect Your Admin

NOTE : 在启动激活插件之前备份数据库。在开始激活插件之前备份数据库是非常重要的。

相关推荐

TEMPLATE_REDIRECT挂钩重定向错误的URL

我制作了关于登录、注册和忘记密码的自定义插件。我给我的插件添加操作template_redirect 钩子来验证电子邮件,当用户登录时,然后重定向到主页,并且忘记了密码。但我有错误,我认为template\\u重定向挂钩不知道哪个是用于验证的重定向,哪个是用于忘记密码的重定向。请查看我的代码:这是自定义插件。php <?php if( ! defined(\'PLUGIN_PATH\') ){ define(\'PLUGIN_PATH\