¿Cuál es la ventaja del patrón de diseño wp_options?

4

Como todos sabemos, un patrón de diseño que se usa con frecuencia en el código de base de datos de Wordpress es la idea de conservar datos para un objeto en particular (blog / post / comentario), indexado con un nombre o clave en particular.

Vemos este patrón usado en las siguientes tablas estándar:

  • wp_options
  • wp_commentmeta
  • wp_postmeta

Por lo que puedo decir, la motivación de esta decisión de diseño fue permitir que los autores de los complementos / temas conserven los datos fácilmente (por ejemplo, mediante el uso de campos personalizados) sin tener que modificar el esquema de la base de datos. Me parece que este enfoque tiene algunas otras ventajas, ya que es mucho más lento y dificulta la implementación de consultas complejas.

¿Cuáles son las otras ventajas de este enfoque, si las hay?

ACTUALIZACIÓN: Leer información sobre los inconvenientes de este enfoque:

pregunta rinogo 21.12.2012 - 02:30

2 respuestas

3

La capacidad de almacenar pares clave-valor abstractos sin modificar la estructura de la base de datos es la razón . Sin eso, WordPress pierde much de su flexibilidad. No puedo hablar por los demás, pero la razón más importante por la que me desarrollo encima de WordPress es su naturaleza flexible.

Para citar uno de tus enlaces anteriores,

  

Por lo general, el razonamiento detrás de hacer lo que está haciendo es porque los dominios deben ser "definidos por el usuario". Si ese es el caso, entonces ni siquiera voy a presionarlo para que cree tablas sobre la marcha ...

Si bien es cierto que obliga a las consultas a ser más complejas y un poco más lentas, los beneficios superan con creces los costos. Pero, hey, todo se trata de lo que estás haciendo. No use un martillo para golpear en un tornillo. Si aún desea usar WordPress, pero necesita ejecutar consultas complejas en conjuntos de datos constantes y estructurados, consulte Pods .

¡Espero que esto te ayude!

    
respondido por el Matthew Boynes 21.12.2012 - 03:43
0

El fallo más importante de WordPress es el diseño de su base de datos. Sólo es utilizable para sitios web de manguera. ¡Los sitios de alto rendimiento nunca utilizarán Anti-patrón como diseño de base de datos debido a problemas de rendimiento como la indexación BASIC!

    
respondido por el Victor Angelier 09.06.2015 - 13:39

Lea otras preguntas en las etiquetas