¿Qué es una nube de tags o tag-cloud?

Una nube de tags es una representación gráfica de los términos utilizados en los vocabularios o taxonomías de una web donde el tamaño de la fuente de cada palabra que forma la nube es mayor cuantas más veces se repita ese término del vocabuario en la página.

Mostrando nubes de tags con Tagadelic

El principal módulo en Drupal para mostrar nubes de tags es Tagadelic, un módulo de pequeño tamaño que sin necesidad de generar datos en la base de datos, permite incluir una nube de tags a nivel de taxonomía o una nube de tags por cada nodo dentro de un bloque configurable a través del interfaz. Para hacerlo funcionar, primero debemos descargarnos el módulo, copiarlo descomprimido en sites/all/modules (o el directorio de nuestro sitio si usamos multisite) e instalarlo desde el interfaz de adminstración de Drupal, en Administer › Site Building › Modules.

nube-de-tags-tagadelic.png

A partir de aquí, se puede configurar a dos niveles

  • A nivel general, desde Administer › Site Construction › Tagadelic Configuration podemos definir el órden de los tags mostrados (por ejemplo orden alfabético, o aleatorio), el número de tags que se van a mostrar como máximo y el número de niveles, esto último define la diferencia de tamaños entre los tags, a más pequeño, la diferencia será más abrupta.
  • Tagadelic-config.png

De la charla de Views 2 que hice en drupal.cat salieron muchos ejemplos interesantes de utilización de vistas que quiero ir mostrando en diferentes videos, hoy es el turno de un ejemplo de vistas con relaciones y argumentos.

¿qué son los argumentos y las relaciones?

En otro artículo anterior ya he ofrecido mi definición de argumentos para vistas en drupal, vamos ahora a definir qué es una relación.
Las relaciones en las vistas para drupal permiten mostrar contenido de varios origenes diferentes que tengan alguna relación entre sí. Normalmente querremos utilizar esta funcionalidad de Views 2 para mostrar tipos de contenido que se relacionan entre sí mediante node reference o contenido de usuarios relacionado con user reference.

Para nuestro ejemplo, he partido de un tipo de contenido Lugar, que tiene información sobre diferentes lugares y un tipo de contenido Viaje, que cada usuario crea cuando viaja a un Lugar y que tiene un node reference apuntando a dicho Lugar. La vista que vamos a crear nos permitirá mostrar los lugares que ha visitado cada usuario, un contenido que sin utilizar relationships sería mucho más complejo y laborioso de mostrar.

¡todo se vé más fácil en un video!

Nota importante: Blip.tv no soporta todavía los subtítulos automáticos, por lo que antes de reproducir el video es conveniente que pulseis en CC y seleccionéis Spanish.

recursos

Para poder exportar / importar los tipos de contenido, es necesario tener activado el módulo Content Copy, que viene con CCK.
Es recomendable tener el módulo ImageCache activado para cargar la vista.

Casi 30 asistentes han acudido hoy a la charla que he dado sobre Views 2 en el drupal.cat. La verdad es que me ha dado tiempo a comentar casi todo lo que tenía previsto para la sesión y ha tenido muy buena acogida, con mucha participación y buen rollo. Parece que finalmente la sesión ha sido grabada en video, cuando me lo pasen lo incluiré en este post..

Os dejo la documentación que he utilizado para la sesión:

Las vistas están hechas sobre varios tipos de contenido de ejemplo, Lugares, con una Taxonomía para definir el país, y Viajes, que tiene un node reference a Lugares y un user reference a los usuarios registrados. Si necesitáis más información o un export de la base de datos / drupal, no tenéis más que pedirmelo.

He aprovechado para anunciar la drupalada a los asistentes, será a finales de mes, pero no desvelo nada más todavía, más detalles muy pronto, ¡estad atentos! Incluso hay rumores de una drupalada madrileña...

Actualización, por sugerencia de Daniel y para facilitar las cosas, incluyo la exportación de los tipos de contenido viaje y lugar para que la carga de las vistas sea directa. Para poder importarlos, es necesario activar el módulo Content Copy que se incluye con CCK.

Este sábado 14 de Marzo de 10 a 12 daré una charla sobre Views: "Views 2, mucho más que listados", donde voy a intentar explicar para qué sirve el módulo Views, las diferencias entre la versión 1 y la versión 2 además de unos cuantos ejemplos prácticos de vistas, listados de usuarios, feeds, taxonomías, argumentos... todo a lo que de tiempo.

La sesión será en modo demostración, por lo que no es necesario llevar un drupal instalado, pero me gustaría que fuera abierta a participación y preguntas. Toda la documentación, vistas, las pondré tanto aquí como en drupal.cat.

Así que ya sabéis, tanto si estáis interesados en profundizar en Views como si queréis actualizar los conocimientos que teníais de Views 1, os espero este sábado en el Citilab de Cornellá.


Ver mapa más grande

Después, de 12 a 14 habrá una tabla redonda sobre theming de Drupal 6 centrada en el tema Zen y abierta a todo aquel que quiera participar.

Con total seguridad, la petición que más recibo en el blog es que adapte los artículos técnicos sobre vistas con argumentos que realicé hace unos meses a Drupal 6 y Views 2.
Mi intención es volver a realizar los mismos ejemplos, pero adaptados a Drupal 6, si queréis que haga algún otro, pedídmelo en los comentarios y vemos si se puede hacer.

¿qué es un argumento?

Un argumento es un parámetro que se pasa a una vista y que se utiliza dentro de ésta para generar contenido dinámico que cambia según el argumento.
Los filtros son una forma de diferenciar contenido de forma estática por cada vista, es decir, que si filtramos por el tipo de contenido story, la vista siempre nos devolverá tipos de contenido story, sin embargo, si utilizamos el tipo de contenido como un argumento para una vista, si la url es nombre-de-la-vista/story nos mostrará tipos de contenido story, pero si accedemos a la url nombre-de-la-vista/page, nos mostrará tipos de contenido page.

Voy a adaptar el ejemplo que utilicé para mostrar el funcionamiento básico de vistas con argumentos para drupal 5, una vista que filtra el contenido según el usuario que lo ha creado.

El nuevo interfaz de Views 2 proporciona mucha más potencia a la hora de configurar las vistas, pero también es mucho más complejo, y si estamos acostumbrados al Views 1, a primera vista es un poco lioso.

paso a paso

  • Accedemos a nuestro sitio como administradores o como otro usuario que tenga permisos para crear vistas.
  • Vamos a Administer » Site Building » Views » Add

Una de las grandes ventajas de las vistas con argumentos en Drupal es el juego que te permiten con las taxonomías, de forma bastante simple, podemos hacer que se nos muestre información relacionada con ciertas categorías, y complicándolo un poquito más, podemos realizar cosas como las que pregunta cdp en este comentario:

Quiero hacer una vista que al hacer click sobre un nodo me muestre todos los nodos que tengan los mismos tags que el nodo sobre el que se ha hecho click. He creado el vocabulario, pero por ahora no he conseguido crear una vista que me muestre los nodos comunes a los vídeos. ¿Solucionaría mi problema una vista con argumentos?

Es decir, en una vista de tipo bloque, mostrar todos los nodos que compartan tags con el que estamos visualizando. Esto también se puede hacer con las vistas con argumentos

Nota: Para estos ejemplos he creado varios nodos con ciudades, cada ciudad pertenece a un país y tiene un idioma, ambas características marcadas por la taxonomía.

Este post es parte de una serie de explicaciones de cómo funcionan las vistas con argumentos, anteriormente he hecho una introducción a las vistas y otra a CCK.

Antes de comenzar, lo mejor es que quede claro lo qué es un argumento para las vistas de Drupal y su diferencia con los filtros.

Un argumento es un parámetro que se pasa a una vista y que se utiliza dentro de ésta para generar contenido dinámico que cambia según el argumento.
La diferencia con los filtros, es que el filtro es una forma de diferenciar contenido de forma estática por cada vista, es decir, que si filtramos por el tipo de contenido story, la vista siempre nos devolverá tipos de contenido story, sin embargo, si utilizamos el tipo de contenido como un argumento para una vista, si la url es nombre-de-la-vista/story nos mostrará tipos de contenido story, pero si accedemos a la url nombre-de-la-vista/page, nos mostrará tipos de contenido page.

Como primer ejemplo, voy a mostrar cómo se crea una vista que recibe como argumento el id del usuario y muestra el contenido que éste ha creado, de forma que, si accedemos a otro id, nos muestre el contenido de ese otro usuario.

paso a paso

  • Accedemos a nuestro sitio como administradores
  • Vamos a Administrar » Views » Add
  • Ponemos el nombre de la vista, por ejemplo, contenido-del-usuario y elegimos el tipo Página
  • Ponemos la URL de la vista y elegimos los parámetros que nos convengan, tipo de vista, el título, el número de nodos por página, etc
  • Seleccionamos los campos a mostrar, por ejemplo, el título del nodo, el contenido y su taxonomía

Nota: Este post es parte de una serie de posts dedicados a CCK y al uso avanzado de las vistas con argumentos en Drupal.

qué son las vistas

El módulo Views nos permite generar vistas para poder mostrar el contenido que queramos, filtrado y organizado a través de una interfaz que hace la tarea relativamente sencilla. Nos puede servir, por ejemplo, para mostrar solamente los títulos y las imágenes de las páginas publicadas ordenadas por fecha de creación, sin vistas, para poder extraer listados, deberíamos construir un módulo o un bloque con código PHP y consultas SQL manualmente.

¿para qué puedo querer utilizar vistas?

La mayor utilidad de las vistas aparece cuando necesitamos crear tipos de contenido personalizados mediante CCK, a través del interfaz de usuario del módulo Views, podemos filtrar el contenido que pertenezca a uno o varios tipos de contenido y generar listados.

¿cómo se instala?

La instalación no difiere mucho de la de cualquier otro módulo, se debe descargar la versión estable del módulo (es decir, la que no tenga un sufijo dev, rc, alpha o beta) desde la página del proyecto y, una vez descomprimida, se debe copiar la carpeta views al directorio de nuestra instalación de drupal, en el subdirectorio sites/all/modules/ (o sites/midominio.com/modules/ dependiendo de dónde o cómo tengamos drupal instalado).