WordPress 6.6: melhorias na performance das options
Uma coisa “invisível” do WordPress e que potencialmente causa um bom problema de performance é a tabela de opções.
Ela armazena desde a URL do site até todas as configurações de plugins, dados em cache (transients), fila do cron e tudo mais que milhares de plugins definirem.
O WordPress tem uma grande benção e um grande problema: você coloca ele num servidor horrível, com WordPress de 5 anos atrás e ele ainda funciona e é compatível. Isso é muito bom porque facilita o desenvolvimento mas vai tornando as coisas potencialmente perigosas se não tomar cuidado.
Por isso gostei tanto dessa mudança!
O que muda?
Como disse, pode ter de tudo na tabela options. E por padrão todos os campos são carregados. Ou seja: você abre qualquer página, qualquer requisição ajax e a tabela inteira é sempre carregada.
Isso acontece porque o WordPress deixa por padrão sempre carregar essas options, ficando a cargo de cada autor de plugin dizer explicitamente para que isso não seja feito.
Isso obviamente é desnecessário.
Geralmente então segue-se o padrão, ignorando os possíveis problemas.
Mas agora o WordPress mudou: o padrão é carregar automaticamente apenas se forem options “leves”.
Se forem textos muito longos, json etc, o padrão é ignorar, a menos que explicitamente se diga o contrário.
Como testar seu site agora
Segundo a documentação oficial, você já pode testar essa novidade e ver o quanto de dados seu site carrega (de maneira desnecessária cada vez que é aberto).
Primeiro, instale o plugin Performance Lab. Ele vai melhorar o widget padrão de diagnóstico do WordPress.
Ao clicar no diagnóstico você pode ver a lista das principais opções carregadas por padrão:
Esse site até que não está um absurdo. Mas às vezes você vai adicionando plugins, adicionando plugins e vai ficando horrível. O mais incrível desse relatório é descobrir que nesse site específico, a maioria das linhas nem deveria existir: são de plugins já removidos.
Então além de melhorar a performance desativando o autoload, elas podem ser completamente excluídas. Mas cuidado para não apagar opções úteis (em último caso é só reconfigurar algum plugin, nada especial).
Conclusão
Essa com certeza é uma boa novidade do WordPress e vai beneficiar todas as lojas WooCommerce.
Com ela, menos dados serão carregados em cada abertura de página, potencialmente aumentando a performance, especialmente em sites com muitos plugins ou que já fizeram muitos testes instalando plugins.