Qual é a vantagem do padrão de design wp_options?

4

Como todos sabemos, um padrão de design que é usado com freqüência no código do Wordpress é a idéia de persistir dados para um objeto específico (blog / post / comment), indexado com um nome ou chave particular.

Nós vemos esse padrão usado nas seguintes tabelas padrão:

  • wp_options
  • wp_commentmeta
  • wp_postmeta

Tanto quanto eu posso dizer, a motivação para essa decisão de design foi permitir que os autores de plug-in / tema persistissem os dados facilmente (por exemplo, usando campos personalizados) sem ter que modificar o esquema do banco de dados. Parece-me que existem poucas outras vantagens para esta abordagem, uma vez que é significativamente mais lenta e dificulta a implementação de consultas complexas.

Quais são as outras vantagens dessa abordagem, se houver?

ATUALIZAÇÃO: Lendo informações sobre as desvantagens dessa abordagem:

por rinogo 21.12.2012 / 02:30

2 respostas

3

A capacidade de armazenar pares de valores-chave abstratos sem modificar a estrutura do banco de dados é o motivo . Sem isso, o WordPress perde muito de sua flexibilidade. Eu não posso falar pelos outros, mas a maior razão pela qual eu desenvolvo o WordPress é sua natureza flexível.

Para citar um de seus links acima,

  

Normalmente, o raciocínio por trás de fazer o que você está fazendo é porque os domínios precisam ser "definidos pelo usuário". Se for esse o caso, então eu não vou te empurrar para criar tabelas na hora ...

Embora seja verdade que isso força as consultas a serem mais complexas e um pouco mais lentas, os benefícios superam em muito os custos. Mas, ei, é tudo sobre o que você está fazendo. Não use um martelo para bater em um parafuso. Se você ainda deseja usar o WordPress, mas precisa executar consultas complexas em conjuntos de dados estáveis e estruturados, confira Pods .

Espero que isso ajude você!

    
por Matthew Boynes 21.12.2012 / 03:43
0

A falha mais importante do WordPress é o design do banco de dados. É apenas utilizável para sites de manguezais. Sites de alto desempenho nunca usarão antipadrão como design de banco de dados devido a problemas de desempenho, como a indexação do BASIC!

    
por Victor Angelier 09.06.2015 / 13:39