1. El concepto de taxonomía en WordPress
Desde la versión 2.3, publicada en septiembre de 2007, WordPress modificó el sistema que hasta entonces venía utilizando para clasificar el contenido, y puso en práctica otro significativamente distinto (y mucho más potente), organizado en torno a tres tablas: wp_terms, que contiene los términos utilizados por la clasificación; wp_term_taxonomy, que permite adjudicar un término a una taxonomía, lo cual determina si un término es una etiqueta, una categoría o ambas cosas; y wp_term_relationships, que relaciona los objetos del blog –es decir, las entradas y los enlaces– con los términos de la taxonomía. Todo ello estaba apoyado por un API taxonómica (posteriormente mejorada en la versión 2.8) que definía una serie de funciones para interrogar a la base de datos y generar consultas sobre ella (para más detalles, véase el artículo WordPress 2.3 Taxonomy Schema, en el que Ryan Boren explica esta importantísima innovación, la correspondiente entrada en el Codex de WordPress, y el modelo gráfico de relaciones publicado por Felipe Lavín en Esquema taxonómico de WordPress).
Por defecto, WordPress 2.3 estableció tres tipos de taxonomías: por una parte, categorías y etiquetas (tags), ambas asociadas a las entradas o artículos del blog, y categorías de enlaces, asociadas a los hipervínculos del blogroll. Tal como expone Joost de Valk en What are «custom taxonomies»?, la diferencia esencial entre las categorías y las etiquetas es que las primeras presuponen una clasificación jerárquica del contenido (de hecho, en WordPress, como en otros gestores de contenidos, se pueden crear categorías, subcategorías, sub-subcategorías, etc.), mientras que las segundas no suponen una intención o propósito jerárquico. Otra explicación de la diferencia entre categorías y etiquetas la encontramos en el artículo Custom taxonomies in WordPress (la traducción es mía):
Una taxonomía es una clasificación, y WordPress ya lleva integradas dos taxonomías: etiquetas y categorías. Las categorías tienden hacia una taxonomía más formal, para cuya configuración son necesarias cierta previsión y planificación, mientras que las etiquetas tienden más bien hacia un tipo de folksonomía, la cual se construye de manera más informal y más ad hoc.
Lo más fascinante del principio taxonómico de organización del contenido en WordPress no son los detalles técnicos de la estructura de la base de datos o las funciones mediante las que ésta es interrogada por la aplicación, sino el hecho de que, a partir de la versión 2.3, el usuario de un blog puede establecer taxonomías personalizadas, lo cual permite organizar el contenido de un blog de formas muy diversas y para casi cualquier tipo de propósito. Como dice Justin Tadlock en uno de los muchísimos comentarios que suscitó el primero de sus artículos sobre este tema (me referiré a él enseguida), las taxonomías personalizadas permiten salvar las restricciones de WordPress con respecto a la organización del contenido, conseguir mecanismos de clasificación mucho más finos y precisos, y hacer que éstos coincidan con el contenido, y no al revés.
Con todo, semejante potencialidad me fue completamente desconocida (bueno, había visto por encima algún artículo, pero no le presté mucha atención porque consideré que estaba fuera de mi alcance) hasta la semana pasada, cuando leí los capítulos 2.4.7. y 5.5.5. del libro Digging Into WordPress (probablemente el mejor manual sobre WordPress que existe en la actualidad) y dos artículos de Justin Tadlock: Custom Taxonomies in WordPress 2.8 y Using custom taxonomies to create a movie database.
2. Las posibilidades educativas de un blog organizado en torno a taxonomías personalizadas
Enseguida me di cuenta de que un blog organizado en torno a taxonomías personalizadas constituye un tipo de publicación web de enormes posibilidades en entornos educativos, pues ofrece algunos rasgos muy ventajosos:
- Proporciona un enfoque más significativo al contenido y a la organización semántica del blog. Aunque las categorías y las etiquetas no son un mal sistema de organización del contenido, constituyen elementos demasiados abstractos, especialmente cuando se trabaja con alumnos. Las taxonomías personalizadas, en cambio, ofrecen una perspectiva de clasificación mucho más cercana a la experiencia cotidiana.
- Permite organizar el contenido en torno a principios clasificatorios que son muy habituales en los currículos y en las actividades didácticas. Por citar algunos ejemplos relacionados con la especialidad de Lengua Castellana y Literatura, los tipos de textos, los géneros literarios, los tipos de palabras, las modalidades oracionales, las etapas de la historia de la literatura, los temas y tópicos literarios, los fenómenos retóricos, etc.
- Favorece el desarrollo de diversos procesos de aprendizaje. Como puede verse en Los libros del Tigre, un sitio web de pruebas que he montado para experimentar y documentar mis investigaciones sobre este tema, los mecanismos necesarios para organizar un blog basado en taxonomías personalizados tienen una interesantísima potencialidad didáctica, pues implican inevitablemente el desarrollo de diversas tareas de conceptualización, clasificación y marcado semántico.
- Permite disponer de una plataforma de publicación que hace posible aproximarse al desiderátum de un libro digital interactivo. Como señalaba ayer Néstor Alonso en una muy atinada intervención en Twitter, en respuesta a mi anuncio del blog taxonómico, este tipo de sitios web “hace que se diluya la frontera entre formatos. Un blog educativo bien estructurado puede ser un “libro” digital de primer orden”.
- Ofrece la posibilidad de crear publicaciones que en realidad constituyen una especie de base de datos personalizada, con las ventajas consiguientes para la organización, la búsqueda y la recuperación e indexación del contenido. Véase, por ejemplo, lo que señala el autor del artículo Using Custom Taxonomies, poniendo como ejemplo una taxonomía personalizada sobre películas (la traducción es mía): “si tienes muchas películas, tendrás varias dirigidas por el mismo director. Puedes buscar todas las entradas basadas en el nombre del director y obtener todas las que ha dirigido. Lo mismo vale para actores, o para géneros. Y dado que las plantillas del tema ya manejan etiquetas y categorías, se comportarán perfectamente con las categorías personalizadas, y podrán conseguir fácilmente la página de archivo correspondiente a las películas de un director o que pertenecen a determinado género”. Por continuar con el ejemplo de mi blog taxonómico, he aquí las páginas correspondientes a los relatos policíacos de Fred Vargas, o a las novelas de ciencia ficción.
- Presenta URLs claramente relacionadas con el contenido, lo que redunda en una clarísima mejora de su visibilidad en la Red y de su correcta indexación por parte de los buscadores. Compárese una URL de una categoría de WordPress, en este caso la de Libros, con las que se pueden obtener mediante las taxonomías personalizadas denominadas Autores, Títulos y Géneros. En los dos casos que acabo de citar en el punto precedente (las novelas de la escritora francesa Fred Vargas y las pertenecientes al género de la ciencia ficción) las URLs son perfectamente significativas: http://www.elarequi.com/librostigre/autores/fred-vargas/ y http://www.elarequi.com/librostigre/generos/novela-de-ciencia-ficcion/. Sin acudir a las taxonomías personalizadas, este tipo de URLs, y su organización interna, son imposibles de conseguir.
Hay que tener en cuenta, no obstante, que una taxonomía personalizada no sirve para cualquier tipo de blog, ni para cualquier tipo de contenido. Para un blog misceláneo, o cuyo contenido sea muy heterogéneo, las taxonomías personalizadas pueden ser más un obstáculo que una ayuda. Por otra parte, sólo tiene sentido embarcarse en construir blogs mediante taxonomías personalizadas si se cuenta con los recursos de alojamiento y de experiencia en la gestión y administración de un blog necesarios para ponerlos en práctica. Hasta donde yo sé, las taxonomías personalizadas no se pueden definir en los blogs proporcionados por servicios como WordPress.com, y por tanto exigen un alojamiento propio, que se pueda modificar y manipular sin restricciones. Por otra parte, si las taxonomías personalizadas han de ser efectivas (y más aún si la tarea de clasificación implica a los alumnos), resulta imprescindible un riguroso proceso de marcado semántico del blog, con pasos e instrucciones bien concretas, que habrá que definir y seguir a rajatabla.
En próximas entregas de esta serie explicaré cómo se puede montar un blog basado en taxonomías personalizadas, un proceso relativamente fácil (desde luego mucho más fácil de lo que yo supuse en un principio, cuando comencé a manipular el código de la plantilla del blog, siguiendo las instrucciones de los citados artículos de Justin Tadlock), que se puede completar con éxito mediante la ayuda de varios plugins que han sido desarrollados con tal objetivo.
Luis Fernando dice
Hola pase por aquí buscando información sobre el BBPress y me acabo de encontrar este excelente artículo sobre las taxonomías personalizadas en WP. Yo justo estaba buscando información sobre esto (sin saber la terminología apropiada). Mi idea es tener más de una nube de etiquetas, para diferentes clasificaciones, y de esta forma tener un acercamiento más matricial a los posts.
Gracias por el post. Ahora tengo más claro lo que necesito hacer.
Saludos.
Eduardo Larequi dice
Me alegro de que te haya parecido útil el artículo, Luis Fernando. Probablemente esta tarde publique una nueva entrega de la serie, dedicada a la puesta en práctica del blog taxonómico.
José dice
Buenas,
no sé si retomarán el tema casi un año más tarde de haber creado el post, pero me arriesgo:
Mi idea es crear una web de turismo, para la cual tengo:
1) Provincia
2) Localidad
3) Hoteles
4) Restaurantes
5) Actividades
Sinceramente no sé cómo arrancar para crear una organización efectiva, de manera que tenga una página de la localidad dónde se listen los hoteles, restaurantes y actividades de dicha localidad.
Ahora bien, ¿cómo me conviene trabajar? ¿debo utilizar taxonomías personalizadas? ¿existe alguna guía que me ayude a pensar la correcta diagramación de las categorías?
Desde ya muchas gracias,
José
Eduardo Larequi dice
Perdona que no te haya contestado antes, José, pero he estado bastante ocupado. Además, la pregunta no es fácil de responder. Te aconsejo que leas un artículo de Justin Tadlock donde demuestra cómo crear una base de datos de películas, con campos de actores, directores, productores, guionistas, género, etc., mediante taxonomías personalizadas: http://justintadlock.com/archives/2009/06/04/using-custom-taxonomies-to-create-a-movie-database (en inglés).
Seguramente la organización que presenta Tadlock te ayudará en tu propósito. Si no quieres manipular el código, te aconsejo que utilices en tu blog un plugin para crear taxonomías y tipos de contenido personalizados. Uno de los mejores es el Custom Post Type UI, http://wordpress.org/extend/plugins/custom-post-type-ui/.