WordPress: Restringir o acesso ao wp-admin

Mais uma implementação de segurança fácil de habilitar no WordPress.

Caso queira evitar que usuários de determinado perfil não tenha acesso ao Painel de Controle, ou ainda, permitir acesso ao Painel de Controle somente a partir de um IP, ideal quando se quer amarrar que as publicações sempre ocorram dentro de seu ambiente de Intranet.

Existe diversas maneiras de fazer isso, seja com código PHP ou por meio de plugins, vejamos:

1. Restringir o acceso ao wp-admin com plugins:

Embora existam muitos plugins para esta finalidade, o que oferece mais possibilidade customização é o WP-Secure, que permite limitar o acesso ao Painel de Controle tanto por IP ou por determinado usuário. Muito bom.

2. Restringir o acceso ao wp-admin por IP:

Para este método, precisaremos editar/criar o arquivo .htaccess. 

a. Encontre o arquivo .htaccess na raiz de seu site, utilizando um cliente de FTP, caso não exista este arquivo, você pode criar o mesmo, e inserir o seguinte conteúdo:

[php]
Order Deny, Allow
Deny from all
Allow from xx.xx.xx.xx
Allow from xx.xx.xx.xx

[/php]

Onde xx.xx.xx.xx é o IP que pode acessar. Caso não saiba teu IP, pode utilizar este link.

Ainda não terminamos.

b. Agora vá até a pasta wp-admin de sua instalação WordPress e crie um outro .htaccess, e em seu interior, coloque essas linhas:

[php]
Order Deny,Allow
Deny from all
Allow from xx.xx.xx.xx
Allow from xx.xx.xx.xx
[/php]

Novamente, o xx.xx.xx.xx representa o IP autorizado a acessar o Painel de Controle.

3. Restringir o acesso ao wp-admin por código PHP.

Esta é outra forma simples de conseguir os mesmos resultados, sem utilizar .htaccess ou plugins.

Edite o arquivo functions.php de seu tema, caso não tenha este arquivo, basta criar e colocar dentro da pasta de seu tema.

[php]
< ?php function restringir_login(){ global $current_user; get_currentuserinfo(); if ($current_user->user_level < 4) { //se não é admin, não entra. wp_redirect( get_bloginfo(‘url’) ); exit; } } add_action(‘admin_init’, ‘restringir_login’, 1); ?>
[/php]

Com este exemplo, todo usuário que não seja Administrador não poderá acessar o Painel de Controle, fácil assim.

Fontes e maiores informações:

3 thoughts to “WordPress: Restringir o acesso ao wp-admin”

  1. Oi, eu só tenho uma pergunta. Com esse código, beleza, funcionou perfeitamente. Mas surge um problema, talvez possa me ajudar. Depois de inserir o código , a minha busca ajax do site parou de funcionar.

Leave a Reply

Your email address will not be published. Required fields are marked *