Como corrigir Uncaught Error: Class not found
O que é o erro Class not found?
No PHP orientado a objetos, uma classe precisa estar carregada antes de ser usada com new. O WordPress e seus plugins carregam classes por inclusão direta de arquivos ou por um autoloader, muitas vezes o do Composer. Quando o arquivo que define a classe não é incluído, foi apagado ou o autoload não foi registrado, o PHP chega no new, não acha a definição e aborta com “Uncaught Error: Class … not found”. O erro cita a classe e o arquivo onde ela foi chamada, e o site para por ser fatal.
Como identificar
- Mensagem “Fatal error: Uncaught Error: Class ‘NomeDaClasse’ not found in /caminho/arquivo.php:N”.
- O erro aponta a linha exata onde o código tentou usar a classe com new ou de forma estática.
- Surge logo após atualizar, mover ou reinstalar um plugin, ou após um upload incompleto via FTP.
- O wp-admin ou o site travam na chamada da classe, sem carregar o restante da página.
Antes de começar: Faça backup antes de mexer em arquivos de plugin via FTP. Ao reinstalar, apague a pasta antiga por completo antes de subir a nova: misturar arquivos de versões diferentes é uma causa frequente de classes faltando e do próprio Class not found.
Como prevenir
- Ao atualizar plugins, apague a pasta antiga por completo antes de subir a nova versão via FTP
- Mantenha a pasta vendor do Composer intacta em plugins que dependem do autoload dele
- Carregue cada classe com require_once ou um autoloader antes de qualquer new no código
Causa
- Plugin atualizado pela metade, em que o arquivo que define a classe não foi enviado por completo.
- Pasta vendor do Composer ausente, deixando o autoloader sem registrar as classes do plugin.
- Arquivo da classe apagado ou renomeado, quebrando o include que o carregava.
- Ordem de carregamento errada: a classe é usada antes do arquivo que a define ser incluído.
- Namespace ou caminho incorreto no autoloader, fazendo o PHP procurar a classe no lugar errado.
Como resolver
- Leia a classe e o arquivo do erro: a mensagem diz o nome da classe que faltou e o arquivo e a linha onde ela foi chamada. Isso aponta qual plugin ou tema é o responsável.
- Reinstale o plugin ou tema culpado: se o erro veio após uma atualização, o upload provavelmente ficou incompleto. Via FTP, apague a pasta do plugin em wp-content/plugins e suba a versão completa de novo, com todos os arquivos.
- Restaure a pasta vendor do Composer: se o plugin usa Composer e a pasta vendor sumiu, o autoload some junto. Restaure a vendor do pacote original ou rode composer install se tiver acesso ao terminal.
- Confirme que a classe é incluída antes do uso: no código próprio, garanta que o arquivo da classe é carregado antes do new. Use require_once apontando para o caminho correto do arquivo da classe.
- Desative o plugin se nada resolver: para devolver o site ao ar, renomeie a pasta do plugin via FTP. Isso o desativa e remove a chamada à classe ausente, até você reinstalar a versão íntegra.
PHP
// ERRO: instanciar uma classe sem o arquivo dela carregado
$obj = new Minha_Classe(); // <- Class 'Minha_Classe' not found
// CORRETO: incluir o arquivo da classe antes de usar
require_once plugin_dir_path( __FILE__ ) . 'includes/class-minha-classe.php';
$obj = new Minha_Classe();
// Alternativa: registrar um autoloader simples para o plugin
spl_autoload_register( function ( $classe ) {
$arquivo = plugin_dir_path( __FILE__ ) . 'includes/' . strtolower( str_replace( '_', '-', $classe ) ) . '.php';
if ( file_exists( $arquivo ) ) {
require_once $arquivo;
}
} );
Perguntas frequentes
O que significa Uncaught Error Class not found no WordPress?
Significa que o PHP tentou usar uma classe que não foi carregada na execução. O arquivo que define a classe não foi incluído, foi apagado ou o autoloader não a registrou. Como é erro fatal, o site para na linha que chamou a classe.
Por que o erro apareceu depois de atualizar um plugin?
Atualizações por FTP ou interrompidas no meio podem deixar arquivos faltando, inclusive o que define a classe. O plugin chama a classe, mas o arquivo não está lá. Reinstalar o plugin completo, apagando a pasta antiga antes, costuma resolver.
O que é a pasta vendor e por que ela importa aqui?
A pasta vendor é gerada pelo Composer e contém o autoloader que registra as classes do plugin. Se ela some, o autoload some junto e o PHP não encontra as classes. Restaurar a vendor original ou rodar composer install recupera o carregamento.
Posso corrigir Class not found sem editar código?
Em muitos casos sim. Se o culpado é um plugin com arquivos faltando, basta reinstalá-lo completo via FTP. Se precisar apenas devolver o site ao ar, renomear a pasta do plugin o desativa e remove a chamada à classe ausente.
O que é um autoloader no PHP?
É um mecanismo que carrega o arquivo de uma classe automaticamente quando ela é usada, em vez de você incluir cada arquivo na mão. O spl_autoload_register registra essa função. Plugins modernos usam o autoloader do Composer para isso.
O erro travou meu painel. Como recupero o acesso?
Acesse o site via FTP e renomeie a pasta do plugin que aparece no caminho do erro, dentro de wp-content/plugins. Isso o desativa e libera o wp-admin. Depois reinstale a versão íntegra do plugin para usá-lo de novo.














