Skip to content

Tudo para WordPress, desenvolvimento web — e não só

🚫 Não consegue entrar no admin do WordPress? 6 formas de recuperar o acesso

🚫 Não consegue entrar no admin do WordPress? 6 formas de recuperar o acesso

Ontem o site funcionava. Hoje vê um ecrã em branco depois de introduzir o seu login e palavra-passe. Ou a página de login simplesmente é recarregada sem o deixar entrar. Uma situação familiar para qualquer pessoa que tenha um site em WordPress.

Existem dezenas de razões para o bloqueio do painel de administração: um conflito de plugins após uma atualização, um ficheiro .htaccess corrompido, um wp-login.php danificado, uma palavra-passe perdida ou um ciclo de cache do navegador. A boa notícia é que, na maioria dos casos, o acesso pode ser restabelecido em 5 a 10 minutos sem um programador.

Abaixo estão seis métodos, do mais simples ao mais técnico. Execute-os por ordem.

💡 Resumo rápido:

  • Limpe a cache e os cookies do seu navegador; num terço dos casos, este é o único problema
  • Altere a palavra-passe de administrador através do phpMyAdmin no seu painel de alojamento
  • Desative os plugins via FTP renomeando a pasta plugins
  • Desative o tema via FTP para que o WordPress ative o tema predefinido
  • Carregue um novo ficheiro wp-login.php a partir do arquivo oficial do WordPress
  • Elimine e recrie o .htaccess através das definições de permalinks

Porque é que a página de login deixa de funcionar

O painel de administração do WordPress não se avaria sozinho. Quase sempre a causa é uma alteração recente. Atualizou um plugin e este deixou de funcionar com a versão do PHP no seu servidor. Mudou para um tema que entra em conflito com um plugin de cache instalado. Migrou o site e não corrigiu os URLs na base de dados. Ou o ficheiro .htaccess ficou corrompido após editar regras de redireccionamento.

Menos frequentemente, o problema está no navegador: cache ou cookies desatualizados impedem o WordPress de validar a sessão do utilizador. E, por vezes, o fornecedor de alojamento ativa um módulo de segurança como o ModSecurity que bloqueia o pedido POST para o wp-login.php.

Os seis passos abaixo cobrem todos estes cenários. Execute-os sequencialmente: cada passo é ligeiramente mais complexo do que o anterior, mas nenhum deles requer a edição de código.

1. Limpe a cache e os cookies do seu navegador

O culpado mais comum é o navegador. Quando faz login no painel de administração do WordPress, este cria um cookie de sessão. Se esse cookie estiver corrompido ou desatualizado, a página de login entra num ciclo: introduz a palavra-passe, a página é recarregada e o formulário de login aparece novamente.

A solução é limpar a cache e os cookies para todo o período e reiniciar o navegador. No Chrome, faça o seguinte:

  • Clique nos três pontos no canto superior direito da janela.
Menu do Chrome com três pontos no canto superior direito
  • Selecione «Histórico» e depois novamente «Histórico».
Opção Histórico no menu suspenso do navegador Chrome
  • Na janela que se abre, clique em «Limpar dados de navegação».
Janela Limpar dados de navegação no navegador Chrome
  • Marque as opções «Cookies» e «Imagens e ficheiros em cache».
  • Para o intervalo de tempo, selecione «Todo o período».
  • Clique em «Limpar dados» e, em seguida, feche e reabra o navegador.

Depois disso, tente entrar no painel de administração. Se não resultou, avance.

2. Altere a palavra-passe de administrador através do phpMyAdmin

Se a palavra-passe foi esquecida e o link «Perdeu a sua palavra-passe?» na página de login não ajuda (o email do administrador está inacessível ou o SMTP não está configurado), existe uma via direta: alterar a palavra-passe através da base de dados.

Para isso, aceda ao seu painel de controlo de alojamento (cPanel, ISPmanager ou similar) e encontre o phpMyAdmin na secção de bases de dados. Aqui está um guia passo a passo para alterar a palavra-passe através do phpMyAdmin. Em resumo:

  • Abra o phpMyAdmin e, no separador «Bases de dados», selecione a base de dados do seu site.
Lista de bases de dados no phpMyAdmin com a base de dados do WordPress em destaque
  • Encontre a tabela wp_users (o prefixo pode ser diferente se o alterou durante a instalação).
  • Clique em «Editar» ao lado da linha com a sua conta de administrador.
A editar o campo user_pass na tabela wp_users através do phpMyAdmin
  • No campo user_pass, introduza uma nova palavra-passe.
  • Na coluna «Função», selecione MD5.
  • Clique em «Executar» para guardar.

Note que o WordPress utiliza o seu próprio sistema de hash de palavras-passe. O MD5 através do phpMyAdmin é uma solução temporária. No seu primeiro login bem-sucedido, o WordPress converterá automaticamente a palavra-passe para um hash moderno. Basta iniciar sessão com a nova palavra-passe e o sistema atualizará tudo sozinho.

3. Desative os plugins via FTP

Por vezes, um conflito de plugins bloqueia não só o painel de administração, mas todo o site. E como o painel de administração está inacessível, não pode desativar os plugins da forma padrão. A solução é aceder ao servidor via FTP e renomear a pasta de plugins.

Ligue-se ao seu alojamento através de qualquer cliente FTP (FileZilla, WinSCP) ou do gestor de ficheiros no seu painel de alojamento. Encontre a pasta raiz do site e navegue até wp-content.

Pasta de plugins no diretório wp-content durante a ligação FTP ao servidor

Renomeie a pasta plugins para plugins_old. O WordPress desativará instantaneamente todos os plugins porque deixará de os encontrar no caminho esperado.

Agora tente entrar no painel de administração. Funcionou? Ótimo, isso significa que um dos plugins era a causa. Recupere-os um a um: renomeie a pasta de volta para plugins, aceda ao painel de administração (os plugins ainda estão desativados por enquanto) e ative-os um de cada vez, verificando o login após cada um numa nova janela privada do navegador. O culpado revelar-se-á rapidamente.

4. Desative o tema via FTP

A mesma lógica dos plugins, mas para o tema. A incompatibilidade do tema com a versão atual do WordPress ou do PHP é uma situação comum após uma atualização automática.

Novamente, ligue-se via FTP à pasta wp-content/themes. Encontre a pasta do seu tema ativo e renomeie-a adicionando o sufixo _off.

Pasta de temas no diretório wp-content com o tema ativo do WordPress

O WordPress detetará que o tema ativo está em falta e mudará automaticamente para o tema predefinido (Twenty Twenty-Five ou similar, dependendo da versão). Depois disso, o painel de administração deverá abrir.

Se o painel de administração começar a funcionar, o problema está no tema. Vá a «Appearance → Themes», atualize o tema problemático para a versão mais recente e só depois o ative novamente. Se o tema não for atualizado pelo programador há muito tempo, talvez seja altura de o substituir.

5. Carregar um ficheiro wp-login.php novo

O ficheiro wp-login.php é o ponto de entrada do painel de administração. Se estiver corrompido, eliminado ou modificado por código malicioso, a página de início de sessão simplesmente não abrirá.

Página oficial de download do WordPress com o ficheiro wp-login.php

A forma correta de o restaurar não é tentar editar o ficheiro manualmente, mas sim obter uma cópia nova do arquivo oficial do WordPress:

  • Transfira a versão mais recente do WordPress em wordpress.org/download.
  • Extraia o arquivo e localize o ficheiro wp-login.php no interior.
  • Ligue-se ao seu alojamento via FTP e carregue o wp-login.php novo para a pasta raiz do site, substituindo o existente.

Antes de substituir, guarde o ficheiro antigo localmente por precaução: basta renomeá-lo no servidor para wp-login.php.bak e depois carregar o novo. Após a substituição, tente iniciar sessão. O ficheiro novo está garantidamente livre de erros e é compatível com a versão do WordPress instalada, desde que tenha transferido o arquivo da mesma versão principal.

6. Recriar o ficheiro.htaccess

Uma única linha incorreta no .htaccess pode deitar abaixo todo o painel de administração. Isto acontece com especial frequência após experiências com redirecionamentos ou a instalação de plugins de segurança que escrevem as suas próprias regras neste ficheiro.

Documentação do WordPress sobre a configuração do ficheiro htaccess e permalinks

A solução é eliminar o .htaccess e deixar o WordPress criá-lo de novo:

  • Ligue-se ao seu alojamento via FTP e localize o .htaccess na raiz do site.
  • Transfira-o localmente (cópia de segurança!) e elimine-o do servidor.
  • Tente iniciar sessão no painel de administração. Se o início de sessão funcionar, o problema estava no .htaccess.
  • No painel de administração, vá a **Settings → **Permalinks e clique simplesmente em «Save Changes» sem modificar a estrutura dos links.

O WordPress irá gerar um .htaccess novo e limpo com as regras básicas para a estrutura de permalinks selecionada. Todas as linhas extra que poderiam estar a bloquear o início de sessão desaparecerão.

⁉️🤔 Perguntas frequentes

Depois de alterar a palavra-passe através do phpMyAdmin, continuo sem conseguir iniciar sessão. Qual é o problema?

Muito provavelmente não selecionou a função MD5 para o campo user_pass antes de guardar. Sem isso, o phpMyAdmin guarda a palavra-passe como texto simples e o WordPress não a consegue verificar. Repita o passo: abra a mesma linha em wp_users, introduza a palavra-passe novamente e certifique-se de que seleciona MD5 no menu suspenso «Function». Verifique também se está a editar a linha correspondente ao seu utilizador. A tabela wp_users pode ter várias entradas; procure a sua pelo campo user_login ou user_email.

O que devo fazer se nenhum dos seis métodos funcionou?

Ative o modo de depuração do WordPress. Adicione estas linhas ao ficheiro wp-config.php:

1define('WP_DEBUG', true);
2define('WP_DEBUG_LOG', true);
3define('WP_DEBUG_DISPLAY', false);

Depois disso, tente aceder ao painel de administração e verifique o ficheiro wp-content/debug.log. Mesmo que a página de início de sessão não abra, o WordPress escreverá a causa do erro no registo. Muito frequentemente, nesta fase, encontrará ou um erro fatal num tema ou plugin, ou um problema de versão do PHP no alojamento.

Posso restaurar o acesso ao painel de administração sem FTP e phpMyAdmin?

Sim, através do WP-CLI, uma ferramenta de linha de comandos para gerir o WordPress. O comando wp user update USERNAME --user_pass=NEWPASS altera a palavra-passe diretamente. Mas o WP-CLI tem de estar instalado no alojamento, o que nem todos os fornecedores têm. Uma alternativa é a inserção de um código de reposição de emergência da palavra-passe no ficheiro functions.php do tema ativo:

1wp_set_password('новый_пароль', 1);

Este código define a palavra-passe para o utilizador com ID=1 (normalmente o administrador). Depois de o inserir, abra qualquer página do site, a palavra-passe será alterada e precisa de remover imediatamente o código do functions.php.

Porque é que o site parece estar partido depois de desativar os plugins?

Isto é normal. Alguns plugins são responsáveis pelo layout e aparência das páginas (construtores como o Elementor, plugins de cache). Depois de renomear a pasta plugins de volta e ativar os plugins um a um, a aparência voltará.

Não confunda uma aparência partida do frontend com o problema de início de sessão no painel de administração. O principal objetivo neste passo é restaurar o acesso ao painel de controlo. Corrigirá o frontend posteriormente.

Preciso de chamar um programador se tiver receio de partir alguma coisa?

Todos os seis passos são reversíveis. Uma pasta renomeada pode voltar ao nome original, um .htaccess eliminado pode ser restaurado a partir de uma cópia e um wp-login.php novo não afeta o conteúdo ou as configurações do site. Siga esta regra: antes de cada ação, faça uma cópia do que está a alterar. Com uma cópia de segurança, a reversão demora segundos.

Qual o método a experimentar primeiro?

Se acabou de se deparar com um bloqueio do painel de administração, comece por limpar a cache e os cookies; numa boa terça parte dos casos, isto é suficiente. Se não ajudar em dois minutos, avance pelos passos sequencialmente, do mais simples ao mais complexo.

Para situações em que a palavra-passe está definitivamente perdida e o email do administrador está inacessível, vá diretamente para o passo 2; o phpMyAdmin dá-lhe acesso direto à base de dados, independentemente do estado do WordPress. E se o painel de administração foi abaixo logo após atualizar um plugin ou tema, os passos 3 e 4 resolverão o problema mais rapidamente.

O mais importante é não entrar em pânico. O WordPress raramente se parte de forma irreversível. Quase sempre é um conflito de versões, um ficheiro corrompido ou um cookie de sessão: algo que pode ser corrigido sem um programador.