Como recuperar o acesso ao administrador do WordPress sem um nome de usuário ou senha
Publicados: 2018-10-02É um pesadelo não conseguir fazer login no seu site WordPress. Você tem certeza que tem a senha certa, você até tentou redefinir a senha, mas nada funciona. Você está bloqueado do seu site. Felizmente, existem métodos rápidos de recuperar o acesso modificando alguns registros do banco de dados ou alguns arquivos via FTP. Contanto que você tenha algum acesso aos recursos do servidor subjacente, você estará de volta ao WP admin em pouco tempo.
Este guia irá ajudá-lo nas seguintes situações:
- opção de redefinição de senha não funciona
- redefinir a senha funciona, mas você não está recebendo o e-mail (por qualquer motivo)
- você sabe o nome de usuário e a senha, mas simplesmente não funciona
- você estragou os privilégios da conta
- usuários ou tabela de banco de dados usermeta está corrompida ou modificada/excluída acidentalmente
- um plugin/tema estragou algo relacionado ao login
Para que os métodos deste guia funcionem, você precisa de apenas uma das seguintes coisas:
- Acesso FTP ao servidor, ou
- acesso cPanel ao servidor, ou
- acesso ao banco de dados MySQL
Ajuda! Não consigo entrar!
Há um número ilimitado de razões pelas quais você não pode fazer login. Nome de usuário ou senha errados é a explicação mais simples, mas eu não recomendo confiar nessa premissa. Especialmente se você sabe que mexeu com o WordPress e o login não funciona como resultado disso. O primeiro passo para corrigir o problema – desative o tema e todos os plugins. Para isso, não precisamos de acesso de administrador, e a ação não “destruirá” nada. É completamente reversível.
Isso pode ser feito de duas maneiras, usando FTP, MySQL ou usando o Script de recuperação de emergência que vem com o plug-in WP Reset. E como a última é a solução mais fácil, abordaremos isso primeiro.
O WP Reset é uma ferramenta incrível destinada a facilitar suas tarefas de redefinição, depuração e teste. Ele vem com vários recursos, incluindo várias opções de redefinição e, claro, o Script de Recuperação de Emergência.
Usando o Script de Recuperação de Emergência, você poderá desativar seus plugins (um por um ou em massa) e tema sem acessar o painel de administração do WordPress.
Não apenas isso, mas você também deverá criar uma nova conta de administrador, atualizar o WordPress e a URL do site, redefinir os privilégios e funções do usuário e verificar novamente ou reinstalar os arquivos principais de fora do administrador do WordPress. Genuinamente impressionante!
Agora, para os outros métodos.
Se você tiver acesso FTP, renomeie as pastas /wp-content/plugins/ e /wp-content/themes/. Qualquer novo nome servirá; basta adicionar um “x” na frente do nome.
Se você tiver acesso ao MySQL, abra a tabela de opções (a tabela terá um prefixo, ou seja, wp_options) e encontre linhas que tenham a coluna option_name definida como active_plugins e current_theme. Exclua as duas linhas ou altere seus valores option_name para que você possa reverter as coisas facilmente mais tarde. O WP retornará ao tema padrão (Twenty Seventeen para versões anteriores à v5) se estiver disponível no local padrão.
Volte para wp-login.php
, atualize a página e tente fazer login. Ainda não está funcionando? Leia.
Reserve um minuto para descobrir a abordagem mais simples
Se você não mexeu com o WordPress ou sua conta e está bastante confiante de que o problema está apenas com o nome de usuário ou senha errados, siga o caminho do MySQL. Alterar a senha no banco de dados é tudo o que é necessário para recuperar o acesso.
Se você não tem uma conta ou tem motivos para acreditar que estragou tudo, a abordagem FTP funciona melhor, pois precisaremos criar uma nova conta. Um resultado positivo é alcançável com apenas acesso FTP ou MySQL, então não se assuste se você tiver apenas um disponível.
Se você tiver acesso ao WP-CLI para o seu site, não há necessidade de mexer em arquivos ou bancos de dados. O comando wp user
fornecerá ferramentas mais do que suficientes para corrigir uma conta ou criar uma nova.
Faça login sem um nome de usuário ou senha – O caminho do MySQL
Para que uma conta WP funcione, algumas coisas precisam estar devidamente alinhadas. O WP procura o nome de usuário e a senha com hash na tabela de usuários e, se encontrar uma linha, continuará procurando por linhas adicionais na tabela usermeta. Ele precisa deles para descobrir os privilégios da sua conta. Se alguma das coisas mencionadas acima falhar, você não poderá fazer login ou poderá, mas não com os privilégios corretos. Devido aos filtros e ações do WordPress, qualquer número de plugins e temas pode alterar esse processo e tornar a depuração muito mais difícil. É por isso que eu já aconselhei desabilitar todos eles.
Também mencionarei a possibilidade de executar uma classe de banco de dados WP personalizada por meio de um drop-in. Um bug nisso também pode ser o culpado. Para ter certeza de que você não está executando nenhum drop-in, renomeie a pasta /wp-content/mu-plugins/. Se você não conseguir encontrar essa pasta – ótimo! Isso significa que você não tem nenhum drop-ins ativo.
phpMyAdmin é uma ferramenta decente para alterar ou adicionar algumas linhas no banco de dados do WP. A maioria das pessoas o acessa através do cPanel, pois ele vem pré-instalado e você não precisa inserir as credenciais novamente. Como lembrete, o cPanel está disponível em https://yoursite.com:2083. Se isso não estiver disponível para você, mas você tiver o nome de usuário do banco de dados, a senha e a capacidade de se conectar a ele de um host remoto, sugiro instalar o aplicativo gratuito HeidiSQL e conectar-se usando esses detalhes. O nome de usuário e a senha salvos em wp-config.php
certamente funcionarão se o seu WP funcionar, mas raramente podem ser usados para conectar ao MySQL a partir de um host remoto devido a restrições de segurança. Como as coisas são configuradas depende do servidor, e é impossível dar conselhos gerais.
Não consegue fazer login no seu site #WordPress? Nome de usuário e senha simplesmente não funcionam? Aqui estão alguns métodos simples de recuperar o acesso sem um nome de usuário e senha.
CLIQUE PARA TWEETModificando algumas linhas do banco de dados
Encontre sua conta na tabela de usuários. Novamente – a tabela sempre tem um prefixo. Por padrão é wp_users, mas pode ser qualquer coisa; ou seja: site765_users. Supondo que apenas a senha esteja errada, edite a coluna user_pass e insira uma nova senha com hash (use apenas MD5). Hash para senha “123456” é e10adc3949ba59abbe56e057f20f883e
, mas eu recomendo usar uma senha mais decente e gerar um hash para ela. Salve a linha e tente fazer login. Sem sorte? Vamos verificar os privilégios.
Anote o id da sua conta – visível na tabela de usuários, na coluna id. Em seguida, encontre todas as linhas na tabela usermeta que tenham esse valor de id para a coluna user_id (chave). Você pode esperar encontrar mais de 10 linhas, mas as que precisamos são aquelas com valores wpc_capabilities e wpc_user_level nas colunas meta_key. Defina o primeiro como a:1:{s:13:"administrator";b:1;}
e o segundo como 10
. Salve, tente fazer login. Ainda sem sorte? Nesse caso, sugiro criar uma nova conta de administrador, que é mais fácil de fazer via FTP.
Caso o FTP não esteja disponível para você, imite os dados da conta que você já possui para criar uma nova. Certifique-se de que ele tenha um nome de usuário e endereço de e-mail exclusivos e que você crie os dois registros na tabela usermeta mencionada acima. Isso é tudo o que é preciso para criar uma conta diretamente no banco de dados.
Faça login sem nome de usuário ou senha – O caminho do FTP
O primeiro e crucial passo neste método é encontrar o arquivo functions.php
do tema ativo. Se você renomeou a pasta /wp-content/themes/, renomeie-a de volta e deixe apenas o tema Twenty Seventeen nela. Qualquer outro tema também serve, mas certifique-se de que ele não tenha nenhuma funcionalidade de login personalizada que possa causar bugs.
Depois de localizar o arquivo functions.php
teste para ter certeza de que você tem o correto. Confie em mim – perdi horas editando o arquivo errado. Adicione die('It works!');
como a primeira linha PHP do arquivo; salve e atualize o site. Se nada mudar, você tem o arquivo errado. Desfaça a alteração e encontre a correta. Depois de tê-lo, adicione este código ao início do arquivo;
// modify these two lines $user_email = '[email protected]'; $user_password = '123456'; if ( !username_exists( $user_email ) ) { $user_id = wp_create_user( $user_email, $user_password, $user_email ); wp_update_user( array( 'ID' => $user_id, 'nickname' => $user_email ) ); $user = new WP_User( $user_id ); $user->set_role( 'administrator' ); wp_die( 'Success!' ); } else { wp_die( 'Username already exists.' ); }
Modifique as duas primeiras linhas do código, salve o arquivo e recarregue o site. "Sucesso!" deverá aparecer na tela e você poderá então proceder ao login com o novo nome de usuário e senha; aqueles que você definiu nas duas primeiras linhas do código. Não se esqueça de remover o código de functions.php
quando terminar.
Outros métodos para recuperar o acesso ao WordPress
Se você tiver acesso FTP, MySQL ou cPanel, os métodos acima farão com que você faça login. Caso contrário, certifique-se de deixar um comentário abaixo. Gostaria de saber o que está impedindo você de fazer login.
Uma “pequena coisa” comum que causa problemas para algumas pessoas é não abrir wp-login.php
na URL correta. Ou usando “www” quando não está definido como endereço do site ou vice-versa. Ou não usar o protocolo certo – HTTPS em vez de HTTP e vice-versa. Embora a página possa carregar, isso não significa que você está no URL certo, portanto, verifique-o.
Se você veio aqui para aprender como hackear o WordPress de alguém, desculpe, não esse tipo de artigo . Por ter acesso FTP ou MySQL, presumo que você seja um proprietário legítimo e não usará os métodos descritos para fins malignos.