🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir Missing a temporary folder

Time Full Services Time Full Services
Tipo Erro interno do WP
Nome do erro Missing a temporary folder EN: Missing a temporary folder
Severidade Atenção
Descrição Missing a temporary folder aparece quando o PHP não encontra a pasta temporária onde guarda os arquivos durante um upload. Sem esse diretório, ou sem permissão de escrita nele, o WordPress não consegue receber imagens, plugins ou temas e devolve esse erro.

O que é o erro Missing a temporary folder?

Todo upload no WordPress passa primeiro por uma pasta temporária do PHP, definida na diretiva upload_tmp_dir do servidor. O PHP grava o arquivo ali, o WordPress lê e move para wp-content/uploads. Quando essa pasta temporária não existe, aponta para um caminho inválido ou está sem permissão de escrita, o PHP falha logo no início do upload e o WordPress exibe a mensagem Missing a temporary folder. O conteúdo do site continua intacto; só os envios param de funcionar.

Como identificar

  • Mensagem “Missing a temporary folder.” ao enviar imagens para a Biblioteca de Mídia.
  • Em sites em português, a mensagem “Faltando uma pasta temporária.”.
  • Falha também ao instalar plugins ou temas pelo painel, que dependem do mesmo diretório temporário.
  • O erro começou após uma migração de servidor, troca de hospedagem ou atualização do PHP.
Antes de começar: Use 777 apenas para um teste rápido e volte a permissão para 755 assim que confirmar que o upload funciona. Permissão 777 deixa a pasta gravável por qualquer processo do servidor e é um risco de segurança se ficar permanente.

Como prevenir

  • Mantenha uma pasta wp-content/tmp definida em WP_TEMP_DIR para não depender do /tmp do servidor
  • Após migrar de hospedagem, confira o upload_tmp_dir do novo php.ini antes de testar uploads
  • Acompanhe a cota de disco do servidor para a pasta temporária nunca ficar sem espaço

Causa

  • Diretiva upload_tmp_dir do PHP apontando para uma pasta que não existe no servidor.
  • Pasta temporária do sistema (geralmente /tmp) sem permissão de escrita para o usuário do PHP.
  • Migração de hospedagem que trouxe um php.ini com um caminho de tmp do servidor antigo.
  • Cota de disco do servidor esgotada, impedindo a criação de arquivos na pasta temporária.
  • Configuração de open_basedir restringindo o acesso do PHP ao diretório temporário do sistema.

Como resolver

  1. Crie uma pasta temporária no site: via FTP, crie uma pasta chamada tmp dentro de wp-content. Ela vai servir de diretório temporário próprio, sem depender do /tmp do servidor.
  2. Dê permissão de escrita à pasta: ajuste a permissão da pasta wp-content/tmp para 755 (ou 777 só para testar) no cliente FTP, garantindo que o PHP possa gravar arquivos ali.
  3. Aponte o PHP para a nova pasta: no wp-config.php, defina o caminho do tmp antes da linha 'That's all'. Isso força o WordPress a usar a pasta que você criou.
    define('WP_TEMP_DIR', dirname(__FILE__) . '/wp-content/tmp/');
  4. Ajuste o upload_tmp_dir do PHP: se você tem acesso ao php.ini ou .user.ini, defina o upload_tmp_dir para um caminho válido e gravável, e reinicie o serviço se for php.ini.
  5. Teste um upload: envie uma imagem para a Biblioteca de Mídia. Se passar, o problema era a pasta temporária. Se o erro voltar, confira cota de disco e open_basedir com a hospedagem.
PHP
// wp-config.php — define uma pasta temporaria propria para os uploads.
// Coloque ANTES da linha "That's all, stop editing!".
// Crie antes a pasta wp-content/tmp com permissao de escrita (755).
define( 'WP_TEMP_DIR', dirname( __FILE__ ) . '/wp-content/tmp/' );

Perguntas frequentes

Que pasta temporária está faltando nesse erro?
É o diretório que o PHP usa para guardar arquivos durante o upload, definido na diretiva upload_tmp_dir, normalmente o /tmp do servidor. Quando esse caminho não existe ou está sem permissão de escrita, o PHP falha e o WordPress mostra Missing a temporary folder.
Por que o erro apareceu depois de trocar de hospedagem?
Porque a migração costuma trazer um php.ini com o caminho de tmp do servidor antigo, que não existe no novo. O PHP tenta gravar num diretório inválido e falha. Definir o WP_TEMP_DIR para uma pasta dentro do próprio site resolve sem depender do servidor.
Preciso editar o php.ini ou dá para resolver só no WordPress?
Dá para resolver só no WordPress definindo WP_TEMP_DIR no wp-config.php e criando a pasta wp-content/tmp com permissão de escrita. Editar o php.ini é necessário apenas se você quiser ajustar o upload_tmp_dir do servidor de forma global.
Qual permissão devo dar à pasta tmp?
Use 755 para uso normal, que permite ao PHP gravar mantendo a pasta protegida. Se quiser apenas testar se o problema é permissão, 777 funciona, mas volte para 755 logo depois, porque 777 é um risco de segurança permanente.
O erro também trava a instalação de plugins. Por quê?
Porque instalar plugins e temas pelo painel também usa a pasta temporária do PHP para descompactar o arquivo. Se o diretório temporário está ausente, tanto o upload de mídia quanto a instalação falham com o mesmo erro. A mesma correção atende aos dois casos.
Defini o WP_TEMP_DIR e o erro continua. O que mais checar?
Verifique se a pasta wp-content/tmp realmente existe e tem permissão de escrita, se o disco do servidor não está com a cota esgotada e se o open_basedir não está bloqueando o caminho. A hospedagem pode confirmar as duas últimas restrições.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes