Novedades en el elemento web Consulta de contenido

Novedades en el elemento web Consulta de contenido

Hola, me llamo Dustin Anglin y soy Gerente de Programa del equipo de Administración de contenido empresarial. Hoy quisiera hablar sobre las novedades relativas a uno de los elementos web más populares de SharePoint, el elemento web Consulta de contenido, o más conocido entre los amantes de las siglas como CQWP.

Si aún no la hecho, asegúrese de leer la información general sobre ECM de Jim Masson y la información general sobre WCM de Sangya Singh.

CQWP para principiantes

Para los que no conocen CQWP, a continuación se incluye una breve explicación de lo que hace y para qué sirve.

El elemento web Consulta de contenido es una herramienta que permite a los diseñadores agregar segmentos de información interesantes y relevantes a una página web mediante la creación de consultas a través de una UI fácil de usar y mostrando dicho contenido de formas únicas y configurables.

imagen

El CQWP está diseñado para devolver contenido consolidado en varios ámbitos distintos, desde una sola lista o biblioteca, a todas las listas o bibliotecas de una colección de sitios. En SharePoint 2010, la consulta de lista única de CQWP también se ha optimizado para trabajar con bibliotecas únicas de gran tamaño, lo que permite aprovechar los índices inteligentes y otras herramientas diseñadas para mejorar el rendimiento de las consultas en bibliotecas de documentos de gran tamaño.

Para ver información más detallada sobre el CQWP, recomiendo la entrada de blog de SharePoint 2007 de George Perantatos.

Creación de un elemento web Noticias de actualidad relacionadas con CQWP

Creo que la mejor forma de aprender algo es mediante un ejemplo y, por eso, veamos un escenario arquetípico que usa el CQWP para mostrar noticias de actualidad relacionadas con la noticia actual que estoy leyendo. Además, como no queremos leer noticias antiguas, nos aseguraremos de que nuestro elemento web esté configurado para mostrar solo las noticias recientes, por ejemplo, las creadas durante la semana pasada.

Creación de la consulta: Control de la consulta en función del contexto

El elemento web Consulta de contenido es excelente para mostrar contenido consultado en una página, pero no deseo tener que agregar un nuevo CQWP a una zona de elementos web CADA vez que creo una nueva noticia de actualidad, especialmente cuando voy a configurar el mismo elemento web una y otra vez.

En SharePoint 2007, se podía agregar un CQWP a un diseño de página de forma que apareciera en todas las páginas de un cierto tipo (por ejemplo, en este caso podía crear un diseño de página “Artículo de noticias”). El problema era que solo se podía establecer una consulta en ese elemento web, lo que significa que cada página que usaba el diseño “Artículo de noticias” devolvería el mismo conjunto de resultados.

Lo que queremos hacer es que cada página “Artículo de noticias” muestre artículos relacionados con el artículo actual que estoy leyendo, por ejemplo, noticias deportivas relacionadas si estoy leyendo un artículo de deportes.

También necesitamos un campo de metadatos para describir qué tipo de “Artículo de noticias” es el artículo actual, como Deporteso Negocios, por lo que agregaremos un nuevo campo Metadatos administrados llamado “Categoría de noticias” que podemos vincular al almacén de términos, donde podemos crear una taxonomía administrada de categorías de noticias para que elijan nuestros autores.

Este es el esquema conceptual que tendrá nuestro diseño de página “Artículo de noticias”:

imagen

Como ya mencioné, queremos que nuestro elemento web esté controlado por el contexto del artículo actual, específicamente la “Categoría de noticias” del artículo actual. En SharePoint 2010, podemos hacerlo mediante la configuración de filtros de consulta con dos nuevos e ingeniosos tokens:

PageFieldValue

Este token permite especificar un campo que está en el diseño de página actual y reemplaza dinámicamente el valor del filtro con el valor del campo de la página actual.

Por ejemplo: he creado un campo de Metadatos administrados personalizado “Categoría de noticias”, que especifica qué tipo de noticia es mi “Categoría de noticias” (Negocios, Política, Internacional, Deportes, etc.), y lo he agregado al diseño de página “Artículo de noticias”. Mediante el token PageFieldValue, la consulta cambiará en función de la Categoría de noticias de la página actual. Entonces, si la categoría de la página actual es “Deportes” devolverá páginas etiquetadas con “Deportes”.

PageQueryString

Al igual que con el token PageFieldValue, también puede elegir buscar en la cadena de consulta de la dirección URL un valor para usar en la consulta.

Por ejemplo: puede agregar un valor de cadena de consulta a la dirección URL como “&NewsCategory=Deportes” y establecer la consulta del CQWP para que devuelva páginas en las que el campo Categoría de noticias es igual a “Deportes” o al valor que se encuentre actualmente en la cadena de consulta.

Es conveniente usar el parámetro de cadena de consulta cuando se desea mostrar diferentes conjuntos de resultados en un elemento web sin tener que crear una página nueva para cada conjunto de resultados distinto.

imagen

En este ejemplo usaremos el token PageFieldValue para configurar nuestro CQWP para que devuelva artículos de noticias cuyo campo “Categoría de noticias” contiene el mismo valor de metadatos en el campo “Categoría de noticias” del artículo actual. Además, modificando el diseño de página “Artículo de noticias” personalizado, el CQWP aparecerá automáticamente en todas las páginas “Artículo de noticias” nuevas, ya configurado y listo para mostrar artículos de noticias relacionados.

Si examinamos detalladamente la consulta, podemos ver que he agregado otros dos filtros. El primero filtra cualquier artículo que tenga el mismo nombre que el artículo actual (lo que garantiza básicamente que el artículo actual no esté duplicado en los resultados de consulta), mientras que otro filtro solo devuelve noticias de actualidad creadas en los últimos 7 días, lo que garantiza que los resultados estén siempre actualizados.

Además, en este caso, el campo de metadatos “Categoría de noticias” es uno de los nuevos campos de metadatos administrados, con los que el CQWP es totalmente compatible, incluidas las variedades de valor único y multivalor. Si bien no se muestra en este ejemplo, el CQWP también es compatible con el filtrado por las columnas Palabras clave de empresa y la columna “Todas las etiquetas”, lo que le permite buscar cualquier etiqueta de metadatos administrados en un elemento consultado, independientemente del campo de metadatos del elemento que contiene la etiqueta.

imagen

Presentación de los resultados: Asignación de columnas desde el panel de herramientas

A algunas personas les encanta escribir XSLT. A ellas les digo: ¡escriban todo el XSLT que quieran y la mejor de las suertes! Pero, sin ofender a los amantes del XSLT, para el resto de nosotros, o para la mayoría dirían algunos, determinar cómo mostrar el campo X, Y y Z escribiendo XSLT es lo último que queremos hacer.

En SharePoint 2010, una de las nuevas características más atractivas del CQWP es la capacidad de elegir qué campos queremos mostrar directamente en la UI del panel de herramientas. Ahora que la consulta está definida, abramos la sección Presentación y veamos:

imagen

En la sección Presentación del panel de herramientas, hay una nueva sección llamada Campos para mostrar que le permite escribir los campos que desea mostrar para cualquier estilo XSL definido. Piense en el Estilo del elemento como una plantilla en blanco que define cuántas cosas se pueden mostrar y dónde, pero no qué campos se mostrarán. Una vez que haya seleccionado la plantilla, simplemente debe indicar los campos que desea mostrar escribiéndolos en las ranuras que aparecen para el estilo de artículo específico.

Opté por usar un estilo que tuviera una imagen a la izquierda, un vínculo a la página que representa el título del artículo y un breve resumen del artículo (un campo personalizado que definí para mi diseño de página). Al escribir los campos que deseo mostrar en cada una de esas ranuras, obtengo los resultados siguientes:

imagen

El tiempo total que pasé lidiando con XSLT: ¡0 segundos! ¡Genial!

Conclusión

Para recapitular, esto es lo que hemos logrado:

  • Agregamos un elemento web CQWP a todas mis páginas de noticias de actualidad modificando el diseño de página en un solo lugar
  • Configuramos la consulta de elemento web para controlarla dinámicamente en función del contexto de la página actual (los artículos deportivos devuelven artículos deportivos relacionados, los artículos de negocios devuelven otros artículos de negocios, etc.).
  • Configuramos la presentación del elemento web para que muestre campos personalizados sin escribir XSLT personalizado.

Así se ve el producto final:

imagen

Ahora, cuando mis autores de contenido escriban nuevas noticias de actualidad, cada artículo tendrá un elemento web que mostrará los artículos relacionados más recientes y mis autores de contenido no tendrán que lidiar con elementos web y consultas.

En resumen

Este es tan solo un ejemplo de algunas de las cosas nuevas e interesantes que se pueden hacer con el elemento web Consulta de contenido aprovechando el poder de las consultas controladas por el contexto y la forma sencilla y sin código de configurar cómo se muestra el contenido. Vuelva con frecuencia para ver más información sobre el CQWP y otras características de ECM nuevas e interesantes en SharePoint 2010.

Esta entrada de blog es una traducción. Encontrará el artículo original en What’s New with the Content Query Web Part