Allow admin login at /admin

时间:2012-05-23 作者:thedev

我对以下方面感兴趣:

如何更改默认登录url/wp-admin/login/wp-admin 和/login 将工作我尝试使用自定义筛选器和。htaccess如以下示例所示,但没有成功。

功能。php

add_filter(\'admin_url\', \'my_new_admin_url\');

function my_new_admin_url()
{
    return \'/login/\';
}
。htaccess

Redirect permanent /wp-admin/ /login/

2 个回复
最合适的回答,由SO网友:Milo 整理而成

另一个选项-重定向/admin/wp-login.php 使用parse_query 行动挂钩:

function wpa53048_parse_query( $query ){
    if( $query->query_vars[\'pagename\'] == \'admin\' ):
        wp_redirect( wp_login_url() );
        exit;
    endif;
}
add_action( \'parse_query\', \'wpa53048_parse_query\' );

EDIT

显然,上述方法只适用于某些permalink结构。这里有另一个方法parse_request:

function wpa53048_parse_request( $query ){
    if( $query->request == \'admin\' ):
        wp_redirect( wp_login_url() );
        exit;
    endif;
}
add_action( \'parse_request\', \'wpa53048_parse_request\' );

SO网友:brasofilo

我只在我的顶部使用这个。htaccess文件:
RewriteRule ^login/?$ /wp-login.php [NC,L]

或者,case WordPress位于文件夹中,规则引用根目录:
RewriteRule ^login/?$ /wp/wp-login.php [NC,L]

我见过用[QSA,L]代替[NC,L],但不知道有什么区别。。。

参考号:http://planetozh.com/blog/2011/01/pretty-login-url-a-simple-rewrite-api-plugin-example/

结束