wp_options Tabela – Limpar Opções Autocarregadas

wp_options Tabela – Limpar Opções Autocarregadas

O que é o diretório wp_options?

O diretório wp_options contém todo o tipo de dados para o seu site WordPress, tais como:

-Site – URL, Início – URL, Administrador – Email, Categoria Predefinida, Publicações por Página, Formato de Tempo, etc.
-Definições para plugins, temas, widgets
-Dados temporariamente armazenados em cache

wp options 01d

wp_options Diretório
wp_options Diretório

O diretório contém os seguintes campos, um dos quais dá mais ênfase ao desempenho:

option_id
option_name
option_value
Carregamento automático

wp options 02d

A tabela wp_options é um fator crítico de desempenho no WordPress porque todas as entradas com autoload = ‘sim’ são carregadas na memória em cada visualização de página. Se remanescentes antigos de plugins e estruturas de dados desnecessariamente grandes se acumularem, o seu site ficará visivelmente mais lento.

Básicos: Compreender wp_options e autoload

Tabela wp_options contém definições globais do WordPress, temas e plugins; As colunas option_name, option_value e autoload são particularmente relevantes. O valor de autoload determina se esta opção é carregada em cada chamada (“sim”) ou apenas quando necessário (“não”), razão pela qual grandes volumes de dados de autoload representam um risco imediato de desempenho.

A primeira coisa que podes fazer é verificar o tamanho autoloaded atual no teu site WordPress. No seu phpMyAdmin, clique na sua base de dados à esquerda e depois no separador SQL. Depois escreve o comando seguinte e carrega em “Go”.

SELECT SUM(LENGTH(option_value)) as autoload_size FROM wp_options WHERE autoload='yes';

Pode precisar de otimizar a consulta acima se o seu site WordPress usar um prefixo diferente do wp_.

Também pode usar uma consulta mais longa como a abaixo. Isto mostrará os dados autocarregados, o número de entradas no diretório e as primeiras 10 entradas por tamanho.

SELECT option_name, length(option_value) AS option_value_length FROM wp_options WHERE autoload='yes' ORDER BY option_value_length DESC LIMIT 10;

A autoload_size é dada em bytes. Um KB consiste em 1024 bytes, um MB de 1024 KB. No nosso exemplo, 939.774 bytes correspondem a cerca de 0,91 MB, que é um valor não crítico para esta página. Se o valor for inferior a 1 MB, normalmente não há necessidade de ação. No entanto, se o resultado for significativamente melhor, deve continuar com os próximos passos deste tutorial.

wp options 03d

Um início típico é uma visão geral do tamanho dos dados carregados automaticamente. Por exemplo, no phpMyAdmin ou noutro cliente MySQL, pode usar a seguinte consulta para ver o tamanho e número total e identificar os maiores blocos:

SELECT 'autoload_size_kb' AS label,
ROUND(SUM(LENGTH(option_value))/1024) AS value
FROM wp_options
WHERE autoload = 'yes'
UNION ALL
SELECT 'autoload_count',
COUNT(*)
FROM wp_options
WHERE autoload = 'yes'
UNION ALL
SELECT option_name,
LENGTH(option_value) AS value
FROM wp_options
WHERE autoload = 'yes'
ORDER BY value DESC
LIMIT 10;

Como regra geral, 300-1000 KB de dados de autoload são considerados saudáveis; Vários megabytes normalmente indicam necessidade de limpeza.

Causas típicas de cargas automáticas inchadas

Blocos grandes de autoload são principalmente criados por plugins que escrevem muitos dados de configuração ou logs para wp_options e definem o autoload para “sim”. Muitas vezes, as suas entradas permanecem na base de dados mesmo após a desinstalação, porque o plugin não limpa corretamente durante a remoção ou os trabalhos cron do WP falham.

Arrays serializados com muitas entradas (por exemplo, dados de cache, registos, informações de rastreio) ou transitórios antigos que nunca foram eliminados são particularmente problemáticos. Estas entradas já não são necessárias, mas continuam a carregar sempre que a página é carregada, atrasando as consultas MySQL e a execução do PHP.

Uma boa prática é analisar especificamente os valores críticos de option_name que aparecem no “top 10” das maiores entradas de autoload. Pode clicar em “Editar” no phpMyAdmin e ver o conteúdo – muitas vezes consegue perceber qual o plugin responsável pelo esquema de nomes (por exemplo, prefixos como transitório, plugin_xyz_, rankmath_, wpseo_, etc.).

Análise manual e limpeza via SQL

Se te sentires confortável com SQL, podes procurar especificamente opções grandes de autoload e assinalar entradas suspeitas. Por exemplo, uma lista simples de todas as opções carregadas automaticamente ordenadas por tamanho é assim:

SELECT option_id,
option_name,
LENGTH(option_value) AS size_bytes
FROM wp_options
WHERE autoload = 'yes'
ORDER BY size_bytes DESC
LIMIT 100;

Antes de alterar ou eliminar qualquer coisa, é fundamental criar uma cópia de segurança completa da base de dados e, idealmente, testá-la num ambiente de staging. Para entradas que tens a certeza que só contêm caches, transitórios expirados ou dados antigos de plugins, existem dois passos relativamente seguros:

  1. Define o Autoload para “não” primeiro e vê se algo se estraga:
UPDATE wp_options
SET autoload = 'no'
WHERE option_name = 'DEIN_OPTION_NAME';
  1. Se tudo estiver estável após alguns dias, apague a entrada:
DELETE FROM wp_options
WHERE option_name = 'DEIN_OPTION_NAME';

Para transitórios que deveriam expirar de qualquer forma, pode também remover grupos inteiros de wildcards, tais como:

DELETE FROM wp_options
WHERE option_name LIKE '\_transient\_%'
OR option_name LIKE '\_site\_transient\_%';

Só deves usar esses comandos de massa se souberes que o teu sistema cache/transitório os consegue gerir, pois muitos dados têm de ser reconstruídos depois.

Exemplos WP-CLI de limpeza recorrente

O WP-CLI é adequado para limpeza regular porque pode usá-lo para programar listas, filtros e comandos de eliminação. Um exemplo de uma visão geral das maiores opções de autoload:

Bashwp option list \
  --autoload=on \
  --fields=option_name,autoload,size \
  --format=json \
  --orderby=size \
  --order=desc \
  --field=option_name \
  --page=1 --per-page=20

Para eliminar uma opção, pode usar WP-CLI assim:

Bashwp option delete DEIN_OPTION_NAME

Ou podes definir o autoload para “não” via WP-CLI sem eliminar diretamente:

Bashwp db query "UPDATE wp_options SET autoload='no' WHERE option_name='DEIN_OPTION_NAME';"

Tais comandos podem ser empacotados num script cron ou num pequeno script de manutenção que é executado uma vez por mês, por exemplo, após a criação de um backup.

Utilização de plugins para limpeza automática

Se não quiseres trabalhar diretamente na base de dados, podes usar plugins especiais de otimização. Ferramentas como Advanced Database Cleaner, WP-Optimize ou funções correspondentes em plugins de desempenho analisam a tabela wp_options e fornecem interfaces para remover transitórios antigos, revisões e certas opções.

Estes plugins podem criar rotinas automatizadas, por exemplo, a limpeza regular de transitórios expirados ou a remoção de entradas de plugins órfãs. No entanto, nem sempre reconhecem todas as opções problemáticas; Para sistemas complexos ou críticos para o negócio, recomenda-se uma verificação manual das maiores entradas de autocarga.

Suporte visual: diagramas e capturas de ecrã

Para comunicar melhor a situação, uma simples visualização vale a pena. Um gráfico de barras que mostra as 10 principais opções de autoload por tamanho deixa claro para as partes interessadas porque certos plugins ou opções são problemáticos. Tal diagrama pode ser gerado a partir dos resultados SQL (option_name vs. size_bytes) numa ferramenta de BI ou num painel auto-construído.

Capturas de ecrã do phpMyAdmin ou Adminer, que mostram a vista wp_options com filtros WHERE autoload = 'yes' e tamanhos ordenados, também são úteis. Linhas marcadas (por exemplo, com comentários coloridos em documentação ou apresentações) facilitam a atribuição a plugins e medidas específicas mais tarde.

Boas práticas e rede de segurança

Independentemente do método, existem algumas regras básicas: criar uma cópia de segurança completa antes de qualquer limpeza, idealmente testar num ambiente de preparação e agendar uma janela de manutenção para os sistemas de produção. Além disso, após grandes ações de eliminação, devem ser realizados monitorizações de desempenho, registos de erros e funções importantes (login, loja, formulários de contacto) para identificar rapidamente quaisquer opções em falta.

A longo prazo, vale a pena limpar ao nível dos plugins: desinstalar realmente plugins e temas não utilizados, não apenas desativar temas, e prestar atenção a como lidam wp_options ao escolher novas extensões. Especialmente com construtores de páginas, ferramentas de SEO, plugins de segurança e integrações complexas, vale a pena consultar a documentação para ver se grandes quantidades de dados acabam na área de carregamento automático – e se existem definições que reduzem isso.

Com tal combinação de análise, ações direcionadas de CLI SQL/WP, plugins de suporte e processos de limpeza, a tabela wp_options pode ser mantida enxuta ou trazida de volta a um estado saudável. O resultado são consultas de base de dados mais rápidas, menor consumo de memória e, no geral, um desempenho notoriamente melhor da sua instalação WordPress.

Como identifico sobras de plugins em wp_options dados carregados automaticamente na integração com WPML e WooCommerce?

Os remanescentes de plugins carregados automaticamente em wp_options podem ser facilmente detetados através de uma combinação de SQL/WP-CLI, padrões de nomeação e algum conhecimento de WPML/WooCommerce.

Princípio básico: analisar as opções de autoload

O primeiro passo é sempre encontrar as maiores opções autoloaded, porque é aí que os restos e configurações erradas dos plugins são mais notórios. Numa ferramenta SQL (ou via WP-CLI) pode obter as entradas principais assim, por exemplo:

SELECT option_id,
option_name,
LENGTH(option_value) AS size_bytes
FROM wp_options
WHERE autoload = 'yes'
ORDER BY size_bytes DESC
LIMIT 100;

Muitos remanescentes podem ser reconhecidos pelo prefixo do option_name:

  • O WPML armazena opções com padrões como icl_%, wpml_%, , caches de tradução, índices de cadeia e mais.
  • O WooCommerce e os complementos usam frequentemente woocommerce_%, _transient_wc_% ou prefixos específicos do plugin, como wcs_, yith_%.

Se aparecerem aqui grandes entradas de plugins que já desinstalou há muito, ou obviamente dados de cache/log, estes são candidatos típicos para “sobras de plugins”.

Padrões específicos do WPML e do WooCommerce

Para sites com WPML e WooCommerce, vale a pena analisar mais de perto as opções relacionadas com traduções e funções de loja. O WPML pode gerar muitas opções carregadas automaticamente para mapeamento de linguagem e tradução de cadeias; Por exemplo, dados de impostos nas lojas WooCommerce, envio, sessões ou relatórios.

Filtros de acordo com padrões de nomes são úteis, tais como:

SELECT option_id, option_name, LENGTH(option_value) AS size_bytes
FROM wp_options
WHERE autoload = 'yes'
AND (option_name LIKE 'icl\_%'
OR option_name LIKE 'wpml\_%'
OR option_name LIKE 'woocommerce\_%'
OR option_name LIKE '\_transient\_wc\_%')
ORDER BY size_bytes DESC;

Se encontrar entradas que pertençam a add-ons que já não estão no sistema (por exemplo, gateways de pagamento antigos, ferramentas de tradução antigas), pode classificá-las como remanescentes de plugins. É importante primeiro verificar se o plugin associado já não está ativo, depois fazer uma cópia de segurança, e só depois definir o autoload para “não” ou apagá-lo.

Suporte automatizado através de ferramentas de análise

Para maior conveniência, existem plugins de otimização especiais que analisam as opções carregadas automaticamente e tentam atribuí-las a plugins ou temas específicos. Exemplos são:

  • Verificador de Autoload ou “Otimizador de Opções”: mostra o número, tamanho e nome de todas as opções de autoload, assinala as opções órfãs e fornece pistas sobre a origem.
  • Advanced Database Cleaner: analisa a tabela de wp_options, lista as opções por tamanho, estado de autoload e suspeita de mapeamento de plugins, permitindo eliminação filtrada.

No entanto, esta tarefa não é infalível: as opções são frequentemente atribuídas aos plugins errados ou marcadas como “órfãs”, mesmo que ainda estejam em uso. É por isso que se aplica o seguinte: Use ferramentas para encontrar candidatos, mas tome sempre decisões manualmente – especialmente numa configuração com WPML e WooCommerce.

Procedimento na prática

Um fluxo de trabalho pragmático é o seguinte:

  • Determinar o tamanho total e as entradas de carregamento automático superior, agrupar option_name suspeitos por prefixos de plugin.
  • Verifica quais plugins (especialmente módulos WPML, add-ons do WooCommerce) ainda estão realmente ativos.
  • Marca plugins alternativos óbvios e anota os nomes das opções.
  • Primeiro, defina o carregamento automático destas entradas para “não”, teste a página (frontend, checkout, tradução).
  • Se não houver erros após alguns dias, apague as opções em questão.

Desta forma, resíduos de plugins podem ser retirados de wp_options de forma direcionada sem comprometer a funcionalidade WPML ou WooCommerce.

FAQ – Tabela wp_options – limpeza de dados carregados automaticamente

Uma tabela wp_options organizada é uma das alavancas mais importantes para tornar o WordPress visivelmente mais rápido e estável. Esta FAQ reúne perguntas típicas sobre “dados carregados automaticamente” (autoload).

O que é “dados carregados automaticamente” na tabela wp_options?

Na tabela wp_options, o WordPress armazena as definições globais de núcleo, temas e plugins. Cada opção tem um campo de carregamento automático que determina se o valor é carregado automaticamente em cada visualização de página (“sim”) ou apenas quando necessário (“não”). Todas as opções de autoload são puxadas para a memória com cada pedido e, assim, influenciam diretamente os requisitos de desempenho e memória.

Porque é que demasiadas entradasautomáticas podem atrasar o meu site?

Quanto mais e maiores forem as entradas de autoload, mais dados a base de dados tem de ler e passar para PHP sempre que a página é acedida. Arrays serializados especialmente grandes (por exemplo, logs, caches, dados antigos de plugins) podem fazer com que os pedidos se tornem visivelmente mais lentos, mesmo que a página pareça “leve” à primeira vista.

Como posso saber qual é o tamanho dos meus dados de carregamento automático?

A forma mais fácil de o fazer é através de uma consulta SQL numa ferramenta como phpMyAdmin ou Adminer. Um exemplo que mostra as maiores opções carregadas automaticamente seria:


SELECT option_id, option_name, LENGTH(option_value) AS size_bytes FROM wp_options WHERE autoload = 'yes' ORDER BY size_bytes DESC LIMIT 50

Isto mostrará quais as opções que ocupam mais espaço e que podem ser candidatas à limpeza.

Com que tamanho devo preocupar-me?

Como guia geral, algumas centenas de kilobytes de dados de carregamento automático ainda são considerados normais, dependendo da configuração. Se a soma das opções de autoload estiver na ordem de vários megabytes ou se as entradas individuais forem de várias centenas de kilobytes, vale a pena uma análise e limpeza mais detalhadas.

Que tipos de entradas são frequentemente desnecessárias ou problemáticas?

Muitas vezes, são sobras antigas de plugins, grandes caches, logs, dados de depuração ou transitórios expirados que nunca foram apagados. Podem muitas vezes ser reconhecidos por prefixos no option_name (por exemplo, transitório, site_transient, plugin_spezifische abreviaturas) e pelo facto de o plugin correspondente já não estar ativo.

Será que o WPML, o WooCommerce ou os criadores de páginas também podem inflacionar o wp_options?

Sim, plugins extensos armazenam muitas definições e dados em cache wp_options. Isto é basicamente normal, mas torna-se um problema quando dados antigos não são limpos ou grandes estruturas são armazenadas incorretamente com autoload = ‘sim’. Depois, vale a pena verificar especificamente os padrões de nomenclatura destes plugins.

Como posso limpar dados de carregamento automático de forma segura sem destruir a página?

Regras básicas importantes: Crie sempre primeiro uma cópia de segurança completa da base de dados e, idealmente, teste-a num ambiente de staging. Depois, proceda em três passos:
– Identificar candidatos via SQL (tamanhos máximos e sobras óbvias de plugins).
– Primeiro, basta definir o valor de autoload de “sim” para “não” e testar a página cuidadosamente.
– Só quando nada se partir, apague as opções em questão.

Posso simplesmente apagar todas as entradas grandes de autoload?

Não, é arriscado. Algumas entradas grandes são importantes (por exemplo, definições de plugins essenciais ou caches que são imediatamente reconstruídos). A eliminação “por suspeita” pode paralisar funções. É melhor verificar cada entrada grande (ver o conteúdo, reconhecer o prefixo) e depois tomar uma decisão direcionada.

Existem plugins que me ajudem a limpar?

Sim, existem plugins de otimização de bases de dados que analisam entradas automáticas, ordenam-nas por tamanho e detetam algumas opções órfãs. Facilitam a escolha de candidatos, mas não substituem um exame profissional: a decisão sobre o que é realmente eliminado ou definido como “não” deve ser sempre tomada conscientemente.

Como posso automatizar a limpeza regular?

Utilizadores avançados usam scripts ou ferramentas de linha de comandos que eliminam regularmente transitórios expirados e opções conhecidas e não críticas. Aqui também se aplica o seguinte: primeiro calcular manualmente quais as entradas que podem ser removidas em segurança, depois automatizar.

Como é que evito que a tabela wp_options volte a “chegar” de confusão?

Algumas regras simples ajudam:
– Desinstala mesmo plugins e temas que não precisas, não apenas desativa os temas.
– Quando se trata de novos plugins, preste atenção a uma boa reputação e ao tratamento limpo das opções.
– Regularmente (por exemplo, semestralmente) analisa as maiores entradas de carregamento automático.
– Estabelecer uma rotina fixa de manutenção para configurações complexas (oficina, multilinguismo).

Quando é que devo deixar um especialista fazê-lo?

Assim que o seu sistema for crítico para o negócio (por exemplo, loja WooCommerce, integrações complexas) ou não tiver a certeza de quais as opções importantes, o suporte profissional faz sentido. Uma opção eliminada incorretamente pode afetar processos de encomenda, lógica de tradução ou funções de login – isto é frequentemente mais caro do que uma ordem de manutenção devidamente planeada.

WordPress Agência JoeWP

Devíamos limpar a tabela de wp_options com os dados carregados automaticamente para ti? Estamos aqui para ajudar!