SharePoint 2010: Personalización de los resultados de las búsquedas (I)!

Como sabéis, la plataforma SharePoint se caracteriza por su alto grado de personalización y por no ser una caja cerrada, lo que permite extenderla a todos los niveles. En lo que a las búsquedas se refiere, la idea es la misma ya que:

  • Podemos personalizar fácilmente las búsquedas de nuestros sitios de SharePoint aprovechando la flexibilidad de las WebParts de búsquedas.
  • Podemos construir nuestras propias soluciones de búsqueda aprovechando que el motor de búsqueda es programable vía API o vía Web Services.

La idea de este primer post es ver, siguiendo las indicaciones de este artículo, como por ejemplo podemos personalizar los resultados que se devuelven en una búsqueda que realicemos:

  • Lo primero que haremos es crear una página de búsquedas propia en la que mostrar los resultados en lugar de la página de aplicación OSSSearchResults.aspx que se utiliza por defecto.
  • Creamos una página de WebParts que resida en una de las bibliotecas de nuestro sitio.
  • Añadimos en la página de WebParts las siguientes WebParts de búsqueda: Cuadro de búsqueda, Resultados principales de la búsqueda y Paginación de la búsqueda. Colocamos estas WebParts de forma adecuada.
image image image
  • Lo siguiente que haremos es configurar las WebParts de forma adecuada para que el centro de búsqueda esté plenamente operativo. Empezamos con la de Cuadro de búsqueda ya que tenemos que asegurarnos que a la hora de devolver los resultados lo haga en la página que acabamos de crear y no en OSSSearchRersults.aspx. Para ello, editamos la configuración de la WebPart y en la sección Varios especificamos como dirección Url de la página de resultados la página actual.
  • Realizamos una búsqueda de prueba para comprobar que la configuración realizada es correcta.
  • Lo siguiente que haremos es configurar como los resultados son devueltos. Por ejemplo, un requerimiento que podemos tener es que el enlace al resultado sea siempre el nombre del documento si se trata de un documento y no el comportamiento por defecto en el que se muestra como enlace la primera palabra localizada en el documento que se corresponda con un título. Para ello, editamos las propiedades de la WebPart Resultados principales de la búsqueda. En esta ocasión, en la sección “Resultados principales” del panel de configuración localizamos la subsección “Mostrar propiedades” que nos permite configurar aspectos relativo a como se renderizan los resultados devueltos de la búsqueda. En particular, el cambio que queremos hacer implica madificar el XSL que da formato a estos resultados. Para poder modificarlo:
    • En “Propiedades recuperadas” añadimos si es necesario las nuevas columnas devueltas por el motor de búsqueda que queramos tener en cuenta a la hora de formatear el resultado de la búsqueda.
    • Desmarcamos el check “Usar la visualización de ubicación” y pulsamos “Editor XSL” para poder visualizar el XSL utilizado en la correspondiente ventana modal. Este XSL es el que modificaremos siguiendo las pautas del artículo de ejemplo comentado inicialmente.
image image image
  • Para facilitar el trabajo con el XSL, copiamos el contenido del editor y nos lo llevamos a Visual Studio 2010 por ejemplo.

image

  • Localizamos las secciones en las que tenemos que hacer cambios del XSL siguiendo las indicaciones de dicho artículo:
    • Localizamos el elemento <xsl:template match=”Result”> y añadimos un par de variables que nos permitan controlar como se muestran los resultados devueltos por el motor de búsqueda.
    • Localizamos la sección en la que se indican las comprobaciones a realizar para que se muestre como enlace el primer texto de tipo título del documento. Lo identificaréis a partir del siguiente elemento: <xsl:when test=”hithighlightedproperties/HHTitle[. != ”]”> y es esta sección la que tenemos que modificar con nuestra propia lógica para obtener el formateo deseado.
  • Copiamos el XSL modificado en el editor de XSL de la WebPart, aplicamos los cambios y comprobamos que los resultados se muestran de acuerdo al formato esperado.

image

Referencias:

Publicado por

Juan Carlos González

Juan Carlos es Ingeniero de Telecomunicaciones por la Universidad de Valladolid y Diplomado en Ciencias Empresariales por la Universidad Oberta de Catalunya (UOC). Cuenta con más de 12 años de experiencia en tecnologías y plataformas de Microsoft diversas (SQL Server, Visual Studio, .NET Framework, etc.), aunque su trabajo diario gira en torno a SharePoint & Office 365. Juan Carlos es MVP de Office Servers & Services desde 2015 (anteriormente fue reconocido por Microsoft como MVP de Office 365 y MVP de SharePoint Server desde 2008 hasta 2015), coordinador del grupo de usuarios .NET de Cantabria (Nuberos.Net, www.nuberos.es), co-fundador y coordinador del Grupo de Usuarios de SharePoint de España (SUGES, www.suges.es), así como co-director de la revista gratuita en castellano sobre SharePoint CompartiMOSS (www.compartimoss.com). Hasta la fecha, ha publicado 8 libros sobre SharePoint & Office 365 y varios artículos en castellano y en inglés sobre ambas plataformas.

6 comentarios en “SharePoint 2010: Personalización de los resultados de las búsquedas (I)!”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *