Podcast de Redes de Eduardo Collado

RadioWordPress #28: Base de datos de WordPress


Listen Later

Descripción de la base de datos de WordPress en Codex de WordPress: https://codex.wordpress.org/Database_Description
Mapa de la base de datos de WordPress (versión 4.7.2)
Hoy vamos a hablar de la base de datos de WordPress, de la base de datos y de las tablas que la componen en el momento de la instalación, las 12 tablas, porque son 12, aunque antiguamente eran 11.
De estas 12 tablas de todos modos sólo hay 11 que vayamos a usar, la tabla wp_links que por defecto si es una instalación nueva no se usa y se mantiene para mantener compatibilidad con versiones anteriores de WordPress.
La base de datos de WordPress tiene 6 partes principales: opciones, posts, taxonomía, usuarios, comentarios y enlaces, así que voy a utilizar esta organización lógica de las tablas para poder ir al tema.
Vamos a empezar con la parte de opciones generales de nuestro WordPress, esa es la tabla wp_options, en esta tabla tendremos el ID de la fila, el nombre de opción, el valor y luego un campo en el que indicamos si carga automáticamente o no.
Esta sería la estructura de la tabla wp_options, pero esta tabla es muy importante ya que va toda la información general del WordPress, todas esas cosas que se configuran en la sección de ajustes, pues bien toda esa información va aquí.
Además es muy normal que los plugins guarden información en esta tabla con lo que se enguarrina mucho la verdad, hay que cuidarla y limpiarla no es una tarea siempre obvia, así que con esta tabla hay que ir con especial cuidado.
Otra parte importante es la parte de posts, que está compuesta por las tablas wp_posts y por wp_postmeta.
La tabla wp_posts tiene este nombre por motivos históricos, de cuando WordPress sólo servía para publicar posts, pero no almacena sólo información sobre los posts, sino que almacena información sobre las páginas, los menús, los enlaces a los medios subidos y los propios posts así como las revisiones de todo.
Recordad que una revisión es un post en si mismo, es una fila dentro de la tabla, como un post o una página.
¿Información que haya en esta tabla y que sea importante?, pues toda la verdad, pero es aquí donde podemos ver si una entrada o página acepta comentarios o pings. También podemos ver si es un post, una página, un adjunto o cualquier otro tipo de post type, esto lo vemos en la columna post_type.
Así que si creáis un custom post_type que sepáis que donde va a ir a parar es aquí.
Otra cosa que podemos ver en esta tabla es si hay borradores, revisiones, etc… es una tabla muy completa en la que merece la pena perderse un buen rato.
Supongo que si estáis viendo la tabla mientras estoy hablando y si ya la habéis visto os estaréis dando cuenta que no está normalizada, sólo con ver que hay muchas columnas en las que se repiten constantemente los mismos datos canta bastante. Esto no es así por incompetencia del diseño de WordPress, sino por rendimiento, al premiar el rendimiento en el caso se funcionamiento de la web puede pasar que un simple update tarde un montón y se cargue el servidor, porque la base de datos de WordPress está pensada para generar contenido para servir y no para realizar otro tipo de acciones. Es decir, la estructura de las tablas está pensada para optimizar al máximo el rendimiento como motor web y no para seguir el funcionamiento estándar de bases de datos.
Bueno, después de este pequeño inciso podemos ver la tabla wp_postmeta que es la segunda tabla de la sección de posts.
En esta tabla lo único que se hace es proporcionar metas a cada uno de los posts, sean posts, entradas o cualquier cosa. Un meta en este caso no es otra cosa que un dato extra que se aplica como por ejemplo el contenido de los campos de un formulario, en fin, es un poco cajón de sastre esta tabla la verdad.
Ahora vamos a pasar a la tercera parte, las tablas de usuarios,
...more
View all episodesView all episodes
Download on the App Store

Podcast de Redes de Eduardo ColladoBy Eduardo Collado