Drupal 7 bloque de contenido relacionado con Views

Categorías: 

Etiquetas: 

Objetivo

Crear un bloque con el módulo Views para mostrar contenido relacionado sobre la página actual, estilo el típico plugin de Wordpress sobre entradas relacionadas. Vamos a suponer que tenemos un tipo de contenido "article" -que trae por defecto Drupal- y queremos que al final de cada artículo se muestren una lista con 5 artículos relacionados según la categoría -taxonomía- que tengan en común.

Resumen

  • Paso 1: crear el bloque con las vistas
  • Paso 2: añadir filtros contextuales
  • Paso 3: activar el bloque

Paso 1: crear el bloque con las vistas.

  • Navegación: Menú Administración > Estructura > Vistas > Agregar nueva vista Rellenar lo siguiente:
  • Nombre de vista: "Entradas relacionadas"
  • Mostrar ("Contenido") de tipo ("article")
  • Desmarcar "Crear una página" y marcar "Crear un bloque", rellenar el Título del bloque como queramos y pulsar en "Continuar y editar"

Paso 2: añadir filtros contextuales

Ya dentro de la edición de la vista, pulsar en "Avanzado" > Filtros contextuales > "Agregar":

  • Añadir filtro llamado "Contenido: Nid" y configurar lo siguiente en la pestaña llamada "When the filter value is NOT available":
  • Marcar "Proporcionar valor predeterminado". El desplegable "Tipo" debe ser "ID de contenido desde URL".
  • Pulsar en "Más" -abajo del todo- y marcar "Excluir" para que no aparezca la página actual en los enlaces relacionados.
  • Pulsar en "Aplicar" para guardar el filtro contextual.

Añadir otro filtro textual igual que antes: "Avanzado" > Filtros contextuales > "Agregar":

  • Añadir filtro llamado "Contenido: Has taxonomy term ID (with depth)" -puede que lo tengas traducido- y configurar lo siguiente en la pestaña "When the filter value is NOT available":
  • Marcar "Proporcionar valor predeterminado". El desplegable "Tipo" debe ser "ID de término de taxonomía desde la URL".
  • Desmarcar "Cargar filtro predeterminado de página de término".
  • Marcar "Load default filter from node page, that's good for related taxonomy blocks" y añadir los términos de vocabularios que interesen. Ej. "Categorías" o "Etiquetas" o ambos.
  • Pulsar en "Aplicar" para guardar el filtro contextual.
  • Guardar la vista.

Paso 3: activar el bloque

  • Navegación: Menú Administración > Estructura > Bloques
  • Buscar el bloque por el nombre que le hayamos puesto y pulsar en configurar.
  • En "Opciones de región", indicar en qué zona debe aparecer según el tema predeterminado.
  • En "Opciones de visibilidad > Tipos de contenido" marcar para que sólo aparezca en el tipo de contenido "article"
  • Guardar el bloque.

Listo, ya debería aparecer el bloque cada vez que visitamos una página de tipo artículo y existe contenido relacionado.