Permitir login de administrador em / admin

4

Estou interessado em:

  1. como podemos alterar o URL de login padrão /wp-admin para /login
  2. como podemos adicionar outro URL para o login para que os /wp-admin e /login funcionem

Eu tentei usar um filtro personalizado e .htaccess como no exemplo a seguir, mas sem sucesso.

functions.php

add_filter('admin_url', 'my_new_admin_url');

function my_new_admin_url()
{
    return '/login/';
}

.htaccess

Redirect permanent /wp-admin/ /login/
    
por thedev 23.05.2012 / 18:22

2 respostas

4

outra opção - redirecionar /admin/ para wp-login.php com um gancho de ação 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' );

EDITAR

Bem, o acima aparentemente funciona apenas com certas estruturas permalink. Aqui está outro método ligado a 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' );
    
por Milo 23.05.2012 / 19:50
1

Eu uso apenas isso no topo do meu arquivo .htaccess:
RewriteRule ^login/?$ /wp-login.php [NC,L]

ou o seguinte, caso o WordPress resida em uma pasta e a regra se refira à raiz:
RewriteRule ^login/?$ /wp/wp-login.php [NC,L]

Eu vi [QSA, L] usado em vez de [NC, L], mas não sei a diferença ...

Referência: enlace

    
por brasofilo 23.05.2012 / 19:37