Nesta página: [ocultar]
Carregar um 12 Tema MB para uma instalação padrão de PHP e o WordPress informa que o link que você seguiu expirou. Nada expirou. O zip era maior que o do PHP 8 MB padrão para envio de formulário. PHP jogou toda a solicitação fora antes que o WordPress a visse, e o WordPress imprimiu o único erro que restou. Essa incompatibilidade entre a mensagem e a causa é a razão pela qual os uploads de temas consomem tardes inteiras.
Resposta rápida: Leia a segunda frase do erro, não o primeiro. “O link que você seguiu expirou” é um limite de tamanho disfarçado. “O pacote não pôde ser instalado” é uma manchete com cinco causas diferentes por trás dela, e o mais comum é fazer upload do ThemeForest “Todos os arquivos & documentação” baixe em vez do zip menor do tema dentro dele. Se você não consegue aumentar os limites do seu servidor, copie a pasta do tema para wp-content / themes por SFTP. O uploader é opcional. A pasta não é.

Última revisão: setembro 2026. As strings de erro foram lidas da fonte principal do WordPress em 8 setembro 2026, e verificado em relação ao WordPress 7.1.
De onde vieram essas respostas
Cada mensagem de erro citada aqui foi lida na fonte do WordPress em vez de copiada de outro guia. Os arquivos são wp-admin/atualização.php, wp-admin/includes/class-theme-upgrader.php, classe-wp-upgrader.php e arquivo de classe-upload-upgrader.php, mais wp-includes/capabilities.php para as regras de permissão e wp-includes/default-constants.php para os padrões de memória. Ler a fonte é importante aqui. Várias dessas mensagens são impressas por código executado antes que o WordPress saiba alguma coisa sobre o seu arquivo. O texto descreve a verificação que falhou, não é o problema que você tem.
Os próprios padrões do PHP e o escopo de cada configuração vieram do manual do PHP. É também aí que a regra sobre .usuário.ini arquivos executados apenas em CGI e FastCGI estão documentados. O padrão do tamanho da solicitação nginx veio da referência da diretiva nginx, e os limites de upload por plano da documentação de cache da Cloudflare. Os limites de host vieram das próprias páginas de suporte de cada host, não de rodeios. A versão do plugin e os dados de instalação vieram da API do plugin WordPress.org. O histórico do plano WordPress.com veio de cópias arquivadas da própria página de suporte da Automattic.
Vale a pena afirmar claramente dois limites para tudo isso. Não reproduzimos cada falha em cada host, portanto, os limites máximos abaixo são os números publicados, e não os números que medimos. E um bloco WAF depende de qual conjunto de regras seu host executa. Essa seção mostra como identificar o bloco em vez de prometer um ID de regra específico.
Leia a segunda frase primeiro
WordPress executa seu zip por meio de uma cadeia de verificações. Cada elo da cadeia imprime sua própria mensagem, e as mensagens são mais precisas do que parecem quando você sabe qual cheque as produziu. Aqui está o mapa.
- “O link que você seguiu expirou.” Seu zip é maior que post_max_size. Nada a ver com sessões ou cookies.
- “O arquivo enviado excede a diretiva upload_max_filesize no php.ini.” Exatamente o que diz, e a única mensagem honesta no set.
- “Somente arquivos .zip podem ser carregados.” O nome do arquivo não termina em .zip. WordPress verifica o nome, não o conteúdo.
- “Arquivo incompatível.” O nome termina em .zip, mas o arquivo não é um zip funcional. Geralmente um download truncado.
- “O pacote não pôde ser instalado. O tema está faltando a folha de estilo style.css.” O conteúdo do zip não está organizado da maneira que o WordPress espera.
- “O pacote não pôde ser instalado. A folha de estilo style.css não contém um cabeçalho de tema válido.” Existe um estilo.css, mas nenhuma linha de nome do tema nele.
- “O modelo está faltando. Os temas independentes precisam ter um arquivo de modelo templates/index.html ou index.php.” Um tema filho sem cabeçalho de modelo, ou um tema parcial.
- “A versão do PHP em seu servidor é 8.1, no entanto, o tema carregado requer 8.2.” Seus próprios números serão diferentes. Seu PHP é muito antigo para este tema.
- “A pasta de destino já existe.” Essa pasta de tema já está lá.
- “Não foi possível acessar o sistema de arquivos.” ou um formulário solicitando detalhes do FTP. Uma incompatibilidade de propriedade de arquivo, não é um problema de permissões.
- “Não foi possível criar o diretório.” O WordPress chegou à pasta de temas, mas não conseguiu criar uma nova. Verifique primeiro sua cota de disco.
- 413 Solicitar entidade muito grande no navegador. Algo na frente do PHP rejeitou o upload.
- 403 Proibido sem estilo WordPress. Uma regra de firewall eliminou a solicitação.
- Nenhum botão de upload de tema. Uma regra de capacidade, não é um erro.
Analise essa lista e você pulará a maior parte das suposições. O restante deste guia aborda cada um deles.
“O link que você seguiu expirou” É um limite de tamanho usar uma fantasia
Este parece um problema de sessão, então é aí que as pessoas vão procurar. Eles limpam cookies, sair e entrar novamente, desativar plug-ins de cache, e nada disso ajuda. A cadeia que o produz é curta e vale a pena conhecer.
PHP post_max_size diretiva limita o tamanho de todo o envio de um formulário, e o padrão enviado é 8 MB. Quando um envio ultrapassa esse limite, PHP não o trunca nem gera um erro de upload. O manual do PHP é direto sobre o que acontece: a $_PUBLICAR e $_ARQUIVOS superglobais estão vazios. Seu arquivo desaparece antes que qualquer código PHP seja executado.
O WordPress então faz o que sempre faz na rota de upload do tema. Ele verifica sua permissão, então liga check_admin_referer para validar o token de segurança que o formulário de upload colocou no corpo do POST. Esse token estava no corpo que o PHP acabou de descartar. A verificação falha, e o WordPress imprime o que imprime para cada token com falha: o link que você seguiu expirou. O código de upload algumas linhas abaixo nunca é executado.
Qual dos dois erros de tamanho você obtém depende de onde seu arquivo fica entre os dois limites. Configurações de PHP em estoque, um tema entre 2 MB e 8 Viagens MB upload_max_filesize e recebe a mensagem honesta que o nomeia. Vá acima 8 MB e você passa post_max_size, que produz a mensagem do link expirado. O erro mais claro aparece nos arquivos menores, que é exatamente o contrário do que você deseja.
Então o diagnóstico é simples. Verifique o tamanho do zip do seu tema no disco. Se estiver acima 8 MB e você não alterou suas configurações de PHP, essa é a sua resposta, e nenhuma quantidade de limpeza de cookies irá movê-lo. Aumente os dois limites de tamanho ou pule o uploader completamente.
Uma ruga pega quem já criou upload_max_filesize e recebi o mesmo erro novamente. O WordPress calcula o número que mostra como o mais baixo do upload_max_filesize e post_max_size, mas a falha acima é desencadeada por post_max_size sozinho. Levante apenas um e você poderá acabar com um painel que anuncia um 64 Limite de MB enquanto o PHP ainda armazena qualquer coisa acima 8 MB. Levante ambos, e manter post_max_size o maior dos dois.
“O pacote não pôde ser instalado” Cinco falhas compartilham um título
Aqui está a parte que a maioria dos guias erra. Eles tratam isso como um único erro com uma única correção. Não é. WordPress usa essa frase como um rótulo genérico, então anexa o verdadeiro motivo. A segunda frase é aquela que diz o que fazer. Cinco verificações separadas podem produzi-lo, e eles correm nesta ordem.
1. Nenhum style.css no lugar certo
Depois de desembalar, WordPress analisa o nível superior do seu zip. Se houver exatamente um item lá e for uma pasta, O WordPress trata o conteúdo dessa pasta como tema. Requer então um style.css diretamente dentro dele. Se o nível superior contiver vários itens, WordPress usa a raiz zip como pasta do tema, não encontra nenhum style.css lá, e para.
Esse é o mecanismo por trás da versão ThemeForest deste erro, que a Envato documenta em uma página de ajuda própria. Envato explica o gatilho. ThemeForest oferece dois downloads: “Todos os arquivos & documentação” e “Somente arquivo WordPress instalável”. A instrução do Envato é fazer upload apenas o zip do tema instalável, aquele que leva o nome do tema. O download completo traz documentação, certificados de licença, conteúdo de demonstração e muitas vezes um tema filho junto com o tema. Sua raiz contém muitos itens, e nenhum deles é style.css. Descompacte o grande download, encontre o zip do tema dentro dele, carregue isso.
O mesmo erro atinge pessoas que criam seu próprio zip selecionando os arquivos dentro de uma pasta de tema e compactando-os. Isso coloca style.css na raiz zip com uma dúzia de irmãos. Compactar a própria pasta, não o que há nele.
2. style.css existe, mas não tem cabeçalho de tema
Aqui a mensagem muda para dizer que a folha de estilo não contém um cabeçalho de tema válido. WordPress lê style.css procurando por um Nome do Tema: linha no bloco de comentários na parte superior, e recusa o pacote se estiver ausente. Isso aparece de duas maneiras. Uma ferramenta retirou o comentário do cabeçalho quando alguém salvou o arquivo, ou o zip contém uma folha de estilo de algo que nunca foi um tema.
3. Nenhum arquivo de modelo
A mensagem diz que o modelo está faltando. Um tema independente deve conter index.php (clássico) ou modelos/index.html (quadra). Um tema filho está isento, mas somente se seu style.css carregar um Modelo: linha nomeando seu pai. Temas infantis distribuídos sem essa linha falham aqui, e o mesmo acontece com uploads incompletos onde o arquivo perdeu arquivos.
4. PHP muito antigo
Você obtém a versão atual e a necessária na mesma frase, o que torna este o mais fácil dos cinco para agir. WordPress lê o tema Requer PHP cabeçalho e compara-o com o que seu servidor executa. A solução está do lado do seu host, não no WordPress, e leva cerca de um minuto na maioria dos painéis de controle. Nosso guia para consertando o “WordPress requer uma nova versão do PHP” aviso mostra onde fica esse menu suspenso em cada painel, e o que verificar primeiro.
5. WordPress muito antigo
Same shape, different header. The theme declares Requires at least and your install is below it. Atualizar WordPress, then upload again.
There’s a sixth variant that reads “The package contains no files.” That means the archive unpacked to nothing, which in practice means a corrupt download.
“Only .zip Archives” e “Arquivo incompatível.” Are Different Problems
These two look interchangeable and aren’t. The first is a filename check, and it’s stricter than people expect. WordPress lowercases your filename and tests whether it ends in .zip. That’s the whole test. A .rar or .tar.gz gets rejected here, and so does a file your operating system helpfully renamed to theme.zip.download. Nothing has been examined at this point except the name.
The second message means the name passed and the contents didn’t. Desde a WordPress 6.4.4, lançado 9 abril 2024, core validates the archive before unpacking it. Um arquivo que não é um zip funcional é detectado de forma precoce e limpa. A causa comum é um download interrompido. Baixe novamente o tema, compare o tamanho do arquivo com o que o fornecedor lista, e tente novamente.
Uma palavra sobre renomeação, porque esse conselho circula e não funciona. Alterar uma extensão .rar para .zip faz com que você passe da primeira verificação e vá direto para a segunda. RAR e ZIP são formatos diferentes. Você precisa do zip real, ou uma ferramenta de arquivo para reempacotar o conteúdo.
“A pasta de destino já existe” Geralmente significa que você está atualizando
O WordPress não substituirá uma pasta de tema sem perguntar. E se wp-content/themes/seu tema já está lá, a instalação para com esta mensagem. Nas versões atuais você não recebe apenas o erro, Apesar. WordPress mostra uma tela intitulada “Este tema já está instalado”, comparando as cópias instaladas e carregadas lado a lado. Ele lista o nome do tema, versão, autor, versão necessária do WordPress, versão PHP necessária e tema pai, então se oferece para substituir a cópia atual.
Leve essa comparação a sério antes de clicar. Se a versão carregada for mais baixo do que o instalado, WordPress avisa e diz para você fazer backup primeiro. Essa é a tela que captura as pessoas que pegaram um zip antigo da pasta de downloads em vez da versão atual.
Se você vir o erro simples sem tela de comparação, a pasta existe, mas o WordPress não conseguiu ler o suficiente do seu upload para comparar. Exclua a pasta do tema antigo pelo SFTP primeiro, then upload again. Não exclua o tema que você está executando enquanto ele estiver ativo, Apesar. Mude primeiro para um tema padrão. Nosso guia sobre alterando um tema WordPress com segurança covers what breaks when you do that.
There’s No Upload Theme Button At All
This isn’t an error, so there’s nothing to search for, which is why it wastes so much time. Three rules can hide the button, only one of them negotiable, and a fourth thing hides it that isn’t a rule at all.
Multisite. On a network install, core denies the theme upload capability to anyone who isn’t a Super Admin. Não “hides it by default”, não “your host turned it off”. A regular site administrator on a multisite network cannot upload a theme, and no plugin or role editor changes that cleanly. Themes get installed once at the network level and then enabled per site. If you’re a site admin, your network admin has to do it.
DISALLOW_FILE_MODS. One line in wp-config.php switches off all plugin and theme installing and updating from the admin. It removes the button rather than showing a message. Managed hosts set it routinely, and so do agencies locking down client sites. Search wp-config.php for it. If you own the server, removing the line restores the button. If you’re on managed hosting, that constant is usually there on purpose and your host will want to know why you’re changing it.
Your user role. Only administrators get the capability. If you’re an editor, that’s the answer.
There’s a fourth case that looks identical and isn’t. Core marks the Upload Theme button as JavaScript-only, and the upload form behind it is hidden in CSS until JavaScript reveals it. So when your admin JavaScript breaks, both vanish together and nothing on the screen mentions permissions. The tell is a notice reading “A tela do instalador de tema requer JavaScript”, que o WordPress mostra apenas quando o JavaScript não está em execução. Veja isso e suas permissões estão corretas. Rastreie o conflito do plugin ou o script bloqueado, ou apenas instale o tema manualmente e lidar com o JavaScript mais tarde.
WordPress.com é um caso próprio, e a regra mudou recentemente o suficiente para que a maioria dos guias ainda entenda errado. WordPress.com abriu uploads de temas personalizados para seus planos Pessoal e Premium entre 15 Novembro e 12 dezembro 2025. Cópias arquivadas de sua página de suporte colocam a mudança. Em 15 Novembro a página ainda dizia “Planos de negócios e comércio, e o plano Pro legado”. Por 12 Dezembro listou todos os quatro planos pagos. Se alguém lhe disse que o plano Business é o mínimo para um zip temático, esse conselho está obsoleto há cerca de um ano. Agir sobre isso é caro. Pessoal custa US$ 4/mês contra negócios a US$ 25/mês, então o conselho errado cobra de você USD 252 extra por ano. Sites gratuitos ainda não conseguem fazer upload de temas. Também há uma dificuldade 50 MB cara no tema zip aí, separado de qualquer coisa que o PHP faça.
WordPress Asks for FTP Credentials Instead of Installing
Você clica em instalar e o WordPress pede um nome de host, usuário e senha. Este é o sintoma com maior probabilidade de atrair conselhos genuinamente perigosos, então aqui está o que realmente está acontecendo.
Antes de tocar em qualquer coisa, WordPress grava um arquivo temporário em conteúdo wp. Em seguida, compara dois proprietários: o proprietário desse novo arquivo, e o proprietário dos arquivos PHP do WordPress já em disco. Se eles combinarem, O WordPress conclui que pode gravar arquivos com segurança e segue em frente. Se eles não corresponderem, ou a gravação falha completamente, O WordPress pede detalhes de FTP ou SSH. It wants to act as a user it trusts.
Leia isso de novo, because the consequence matters. The default trigger is an ownership mismatch, não é um problema de permissões. Making the folder world-writable does not make the owners match. It only makes your theme directory writable by every other account on the server. On shared hosting that’s a real exposure, and on any server it’s a bad trade. Never chmod 777 a WordPress directory to get past this prompt.
Three fixes work, in this order of preference.
- Ask your host to fix ownership so the web server user owns the files. It’s a two-minute job for them and the right answer on a properly configured server.
- Adicionar definir(‘FS_METHOD’, ‘direct’); to wp-config.php. That tells WordPress to write directly and skip the ownership test. It only helps if the directory is actually writable.
- Enter the FTP credentials. Inelegant, but the prompt does work.
If none of those appeal, instale o tema manualmente and the question disappears.
Raising the Limits Yourself, and What You Can’t Raise
PHP ships with upload_max_filesize at 2M, post_max_size at 8M e memory_limit at 128M. Most hosts raise these, but plenty of budget shared plans don’t raise them much. Four settings matter for theme uploads, and where you can change them depends on how PHP runs on your server.
The method that works on most modern hosting is a .usuário.ini file in your WordPress root, next to wp-config.php. PHP reads it when it runs under CGI or FastCGI, and that includes PHP-FPM (Gerenciador de Processos FastCGI, the way most control panels run PHP now). If your host uses PHP-FPM, this is your file. Four lines:
- upload_max_filesize = 64M
- post_max_size = 64M
- memory_limit = 256M
- max_execution_time = 300
That last line matters on slow connections. Um upload grande que leva mais tempo do que o PHP permite é interrompido no meio da transferência, e você recebe uma página em branco em vez de uma mensagem. Agora a parte que faz as pessoas desistirem do arquivo e irem editar outra coisa. PHP armazena em cache esses arquivos, e o cache padrão é 300 segundos. Salve o arquivo, espere cinco minutos, em seguida, recarregue a tela de upload do tema. O WordPress mostra o máximo atual na página de upload da biblioteca de mídia se você quiser confirmar se o novo número entrou em vigor.
A alternativa é .htaccess com php_value upload_max_filesize 64M e amigos. Isso funciona quando o PHP é executado como um módulo Apache, e funciona no LiteSpeed, que é o que muitos hosts cPanel executam. Não funciona no Apache com PHP-FPM, e o fracasso é desagradável. Apache não reconhece valor_php sem mod_php, o módulo mais antigo que rodava PHP dentro do próprio Apache. An unrecognized directive in .htaccess makes Apache return a 500, so you’ve taken down every page on the site, not just the upload. If you try this route, keep the original .htaccess open in another tab so you can put it back.
Some settings you cannot change from your account at all, whatever any tutorial says. PHP classifies file_uploads e upload_tmp_dir as system-level, so they’re settable only in the main php.ini. If uploads are switched off server-wide, or the temp directory is broken and you’re seeing “Missing a temporary folder”, that is a support ticket. upload_max_filesize e post_max_size are per-directory settings, which is exactly why the .user.ini and .htaccess methods reach them.
Memory has a similar catch. Adicionando definir("WP_MEMORY_LIMIT", '256 milhões'); to wp-config.php is standard advice, and it does nothing if your host locked the memory limit at server level. WordPress aumenta a memória chamando a própria função do PHP, e PHP recusa. WordPress verifica se o valor pode ser alterado antes de tentar. Se não for, sua definição é ignorada silenciosamente.
Os limites máximos publicados diferem mais do que as pessoas esperam, e saber o número do seu anfitrião indica se você deve se preocupar. Conjuntos de motores WP 50 MB por padrão e 1 MB em multisite. Isso aumentará isso para 256 MB a pedido, e quer SFTP ou SSH além disso. Kinsta lança sites em 128 MB. Conjuntos SiteGround 256 MB e não move em planos compartilhados. A Hostinger expõe o valor diretamente no hPanel na configuração do PHP. Se o teto do seu plano for muito baixo para os temas com os quais você trabalha e o suporte não mudará, isso é um problema de hospedagem, não é WordPress. Nosso comparação de hospedagem compartilhada lista o que os planos mais baratos realmente permitem.
When the Upload Never Reaches PHP
Cada correção acima pressupõe que seu arquivo chegue ao PHP. Às vezes não, e então as configurações do PHP são irrelevantes, não importa o quão alto você as defina. Duas camadas ficam na frente, e cada um tem uma impressão digital distinta.
413 Solicitar entidade muito grande. No nginx isso vem de cliente_max_body_size, e o padrão documentado do nginx é 1 MB. Isso é menor que o padrão do próprio PHP, e menor que a maioria dos zips de temas premium. A configuração reside na configuração do servidor, então, na hospedagem gerenciada nginx, é uma solicitação de suporte. No seu próprio servidor, levante-o no bloco do servidor e recarregue. Cloudflare retorna o mesmo código de status de seu próprio teto. Esse teto é 100 MB grátis e Pro, 200 MB em negócios, e até 5 GB no Enterprise. O limite da Cloudflare afeta apenas arquivos muito grandes. Vendo um 413 com um 20 Tema MB por trás do Cloudflare? Nginx é o culpado mais provável. Você pode testar isso pausando brevemente o Cloudflare e tentando novamente.
403 Proibido sem estilo WordPress. Esse é um firewall de aplicativo da web. ModSecurity e Imunify360 inspecionam o corpo da solicitação, e um zip cheio de arquivos PHP desencadeia regras escritas para capturar malware carregado. É um conhecido falso positivo nas ações do administrador do WordPress, e CloudLinux publica um artigo de suporte sobre regras WAF que bloqueiam atualizações de sites e acesso de administrador. Você não pode consertar isso dentro do WordPress. Peça ao seu host para verificar o log do WAF para obter o carimbo de data e hora do seu upload e colocar na lista de permissões a regra que foi acionada. Se o seu anfitrião lhe fornecer um painel do Imunify, a solicitação bloqueada aparece em Incidentes com um controle para desabilitar essa regra.
Aqui está uma maneira rápida de diferenciá-los de um problema de PHP. Um bloco WAF ou proxy fornece uma página de erro de servidor simples, sem barra de administração e sem estilo. Um limite de PHP fornece uma página de erro no estilo WordPress. Se a página ainda se parecer com WordPress, o pedido foi atendido.
Installing Without the Uploader
O uploader do painel é uma conveniência, não é um requisito. WordPress encontra temas digitalizando um diretório, então colocar a pasta lá de qualquer maneira funciona de forma idêntica. Quando você passou vinte minutos nos limites, mude para um desses e siga em frente. (Não há prêmio por fazer o uploader funcionar.)
Por SFTP ou gerenciador de arquivos. Descompacte o tema no seu computador. Você deve acabar com uma única pasta contendo style.css em seu nível superior. Carregue essa pasta em wp-content / themes. Recarregar aparência > Temas e está lá, pronto para ativar. Isso ignora todos os limites do PHP, todas as regras WAF e as credenciais de FTP são solicitadas em um único movimento, porque nada está sendo postado através do servidor web. A maioria dos gerenciadores de arquivos do painel de controle também permite fazer upload do zip e extraí-lo no local, que é mais rápido em uma conexão lenta.
Com WP-CLI. Se você tiver SSH, instalação do tema wp ../my-theme.zip instala a partir de um arquivo local, e adicionando –ativar muda para ele imediatamente. Há também –vigor para substituir uma cópia existente, que é o equivalente em linha de comando do “já instalado” tela. Se um tema estiver bloqueado por um cabeçalho de versão que você tem certeza, –ignorar requisitos instala de qualquer maneira. Cuidado com esse último. O autor definiu esse cabeçalho porque espera que o tema seja interrompido em PHP mais antigo.
Um cuidado para ambas as rotas. O upload manual coloca um tema no site sem nenhuma validação do núcleo. Um tema sem style.css simplesmente não aparecerá na lista de temas, sem nenhum erro para explicar por que. Se a pasta estiver lá e o WordPress não a mostrar, abra style.css e verifique o cabeçalho do nome do tema.
Which Fix to Try First
Encomendar é mais importante do que as soluções individuais, porque dois minutos de verificação economizam uma hora de edição de arquivos de configuração. Trabalhe com eles em ordem.
- Verifique o tamanho do arquivo zip. Debaixo 8 MB e falhando? Pular em frente, não é um limite. Sobre 8 MB com um “link expirado” erro? Essa é a sua resposta.
- Verifique o conteúdo do zip. Abra. Uma pasta no topo, style.css dentro dele, significa que o pacote está bem. Algo mais, especialmente uma pasta de documentação, significa que você fez o download errado.
- Leia a segunda frase. o mapa acima leva você direto para a causa.
- Experimente um tema pequeno. Instale vinte e vinte e cinco, o padrão atual, direto do diretório do tema. Se isso funcionar, seu uploader e suas permissões estão corretos, e o problema é o seu arquivo ou seu tamanho. Se falhar também, o problema é em todo o servidor.
- Veja a página de erro. O estilo do WordPress significa que o PHP foi executado. Um nu 403 ou 413 significa que não.
- Só então, editar arquivos de configuração. Comece com .user.ini, espere os cinco minutos completos, e confirme o novo limite antes de alterar qualquer outra coisa.
Se você estiver solucionando problemas sob pressão de tempo em um site ativo, inverta essa ordem e apenas SFTP a pasta no lugar. Faça o site funcionar, então descubra por que o uploader falhou quando ninguém estava esperando.
Uma palavra sobre a ferramenta para a qual a maioria dos guias envia para você neste momento. Verificação de saúde & A solução de problemas ainda é recomendada em todos os lugares para isolar conflitos de plugins, e ainda tem 200,000 instalações ativas. Mas seu último lançamento no WordPress.org foi a versão 1.7.1 em 25 Julho 2024, testado apenas até WordPress 6.6.7. Executando um plugin de diagnóstico de dois anos no WordPress 7.1 depurar um upload é uma maneira estranha de reduzir suas variáveis. Renomeie a pasta de plug-ins para SFTP: é mais rápido, é reversível, e não adiciona código à instalação que você está tentando diagnosticar.
perguntas frequentes
Por que o WordPress diz “o link que você seguiu expirou” quando eu carrego um tema?
Porque o zip do seu tema é maior que o do PHP post_max_size configuração, cujo padrão é 8 MB. PHP descarta todo o envio quando ultrapassa esse limite, incluindo o token de segurança que o WordPress verifica primeiro. WordPress vê um token ausente e imprime sua mensagem padrão de link expirado. Elevação post_max_size e upload_max_filesize junto, ou instale o tema por SFTP.
How big can a WordPress theme zip file be?
O próprio WordPress não impõe limites. Seu teto é o mais baixo do seu anfitrião upload_max_filesize e post_max_size, e qualquer coisa que o nginx ou o Cloudflare imponham na frente deles. Os padrões publicados variam amplamente: Conjuntos de motores WP 50 MB, Kinsta 128 MB, SiteGround 256 MB, e estoque PHP apenas 2 MB. O tema do WordPress.com fecha em 50 MB independente do plano.
Why is there no Upload Theme button in my WordPress dashboard?
Three likely reasons. You’re on a multisite network and aren’t a Super Admin, in which case core blocks it and only your network admin can install themes. Or wp-config.php contains DISALLOW_FILE_MODS, which most managed hosts set deliberately. Or your account isn’t an administrator. None of these produce an error message, which is why the button just isn’t there.
Do I need the Business plan to upload a custom theme on WordPress.com?
Não mais. WordPress.com restricted custom theme uploads to Business, Commerce and the legacy Pro plan until late 2025. Its support page listed Personal and Premium too by 12 dezembro 2025. Sites gratuitos ainda não conseguem fazer upload de temas. If a guide tells you to buy the Business plan purely to install a theme zip, check the current plan page before you pay.
Can I install a WordPress theme without the dashboard uploader?
sim, and it’s often faster. Unzip the theme, then copy the folder into wp-content / themes over SFTP or with your host’s file manager. WordPress detects it on the next page load. Com acesso SSH, instalação do tema wp ../my-theme.zip –ativar faz o mesmo em um comando. Ambas as rotas ignoram os limites de upload do PHP, regras de firewall e o prompt de credenciais de FTP.
Is it safe to set the themes folder to 777 to fix an upload error?
Não, e geralmente nem resolve. Quando o WordPress pede credenciais de FTP, o gatilho é uma incompatibilidade de propriedade. O proprietário dos arquivos recém-criados é diferente do proprietário dos seus arquivos WordPress. As permissões não são o problema. Contexto 777 torna o diretório gravável por todas as contas no servidor sem alterar a propriedade. Peça ao seu host para corrigir a propriedade do arquivo, ou adicione definir(‘FS_METHOD’, ‘direct’); to wp-config.php.
Which hosts let me raise the upload limit myself, e que me fazem pedir apoio?
Hosts com painel de configurações PHP permitem alterá-lo diretamente. Hostinger expõe isso no hPanel em configuração PHP, e a maioria dos hosts cPanel colocam-no no MultiPHP INI Editor. Hosts gerenciados geralmente não. WP Engine precisa de uma solicitação de suporte para ir além de seu 50 MB padrão, para um 256 MB máximo. SiteGround não aumentará seu 256 Teto de MB em planos compartilhados. Em qualquer host executando PHP-FPM você também pode tentar um arquivo .user.ini antes de entrar em contato com alguém.
Conclusão
As falhas no upload do tema parecem aleatórias porque as mensagens de erro descrevem a verificação que falhou, e não o erro que você cometeu. Eles não são aleatórios. Um zíper 8 MB recebe uma mensagem sobre links expirados. Um download completo do ThemeForest recebe uma mensagem sobre uma folha de estilo ausente. Um administrador de site multisite não recebe nenhum botão e nenhuma explicação. Combine o sintoma com a causa usando a lista no topo desta página, e a maioria deles resolve em alguns minutos.
Quando eles não, pare de lutar contra o uploader. Copiando uma pasta de tema para wp-content / themes sobre SFTP funciona em todos os hosts, não precisa de alterações de configuração, e leva menos tempo do que um ticket de suporte. Mantenha o uploader durante os dias em que ele cooperar.
Instalar o tema raramente é a última etapa, então aqui estão os guias para o que geralmente vem a seguir. Corrigindo falhas de login do WordPress é aquele para ler se um novo tema bloqueou você no wp-admin. E “brevemente indisponível para manutenção programada” explica o arquivo que uma instalação com falha às vezes deixa para trás. E se você estiver substituindo um tema existente em vez de adicionar um, leia nosso guia para alterar um tema WordPress com segurança, vinculado acima. Abrange o que quebra na ativação e como reverter.
