O Advanced Custom Fields (ACF) é uma ferramenta poderosa no WordPress, permitindo a criação de campos personalizados que facilitam a personalização e gerenciamento de informações. Contudo, alguns usuários relatam que os dados dos campos personalizados não são salvos, especialmente em determinados servidores.
Este artigo aborda as causas mais comuns e como solucionar o problema, incluindo um ponto frequentemente esquecido: a configuração max_input_vars
.
Por que os dados do ACF não são salvos?
Quando você preenche os campos personalizados e clica em “Salvar”, mas ao atualizar a página os dados continuam vazios, o problema geralmente se origina de um ou mais dos seguintes fatores:
1. Limite de max_input_vars
no PHP
O PHP tem um limite padrão de 1000 variáveis de entrada para formulários, definido pela configuração max_input_vars
. Quando o número de campos personalizados no formulário ultrapassa esse limite, o servidor simplesmente ignora os dados excedentes, o que impede o salvamento de todos os campos.
Como Resolver:
- Acesse o arquivo de configuração do PHP, normalmente chamado de
php.ini
. - Procure a linha contendo
max_input_vars
. - Aumente o valor para algo como
5000
ou mais:
max_input_vars = 5000
- Reinicie o servidor para aplicar as mudanças.
Se você não tiver acesso ao php.ini
, pode adicionar a configuração no .htaccess
(caso o servidor use Apache):
php_value max_input_vars 5000
Ou diretamente no wp-config.php
:
ini_set('max_input_vars', 5000)
2. Conflitos de Plugins ou Temas
Plugins ou temas mal configurados podem interferir no ACF, impedindo que os dados sejam salvos corretamente.
Como Resolver:
- Desative todos os plugins temporariamente e mude para um tema padrão, como o Twenty Twenty-Three.
- Teste o salvamento dos campos ACF.
- Reative os plugins e o tema um a um para identificar o conflito.
3. Configuração de Servidor
Alguns servidores possuem configurações restritivas, como baixo limite de memória ou permissões inadequadas, que podem afetar o ACF.
Como Resolver:
- Certifique-se de que a memória alocada para o PHP seja suficiente. No
php.ini
, ajuste o valor:memory_limit = 256M
- Verifique as permissões de arquivo no servidor para garantir que o WordPress possa escrever nos arquivos necessários.
4. Versões Desatualizadas
Usar versões antigas do WordPress, do ACF ou de outros plugins pode levar a problemas de compatibilidade.
Como Resolver:
- Atualize o WordPress, o ACF e todos os plugins para suas versões mais recentes.
5. Logs de Erros do Servidor
Se nenhuma das soluções acima funcionar, os logs de erro do servidor podem fornecer pistas sobre o problema.
Como Resolver:
- Consulte os logs de erro no painel de controle de hospedagem ou via SSH.
- Procure por mensagens relacionadas ao PHP ou WordPress.
Prevenção Futura
- Sempre teste suas configurações em um ambiente de desenvolvimento antes de aplicá-las no site de produção.
- Realize backups regulares para evitar a perda de dados em caso de problemas.
Conclusão
Problemas de salvamento de campos no ACF são comuns, mas geralmente fáceis de resolver quando se entende os fatores envolvidos. Ajustar o max_input_vars
costuma ser uma solução crucial, especialmente para sites com muitos campos personalizados. Certifique-se de revisar suas configurações e monitorar logs de erros para garantir que seu site funcione sem interrupções.