SharePoint 2010: Alternativas para personalizar los resultados de las búsquedas (I)!

Una de las características clave de las búsquedas en SharePoint 2010 es el alto grado de personalización que se puede conseguir en las mismas, tanto en la experiencia de usuario (presentación de resultados y realización de búsquedas), como en las posibilidades que brinda la API subyacente para construir auténticos verticales de búsquedas sobre el motor de búsquedas de la plataforma. En este primer post vamos a ver que posibilidades tenemos a la hora de personalizar los resultados de las búsquedas. A nivel de presentación las posibilidades pasan por:

  • Decidir si se utiliza el centro de búsquedas por defecto de SharePoint o no. Lo más adecuado pasa por definir un centro de búsquedas personalizado usando las siguientes opciones:
  • Personalizar las WebParts de búsquedas utilizando para ello transformaciones XSLT que se definan en archivos XSL. En este sentido, se pueden personalizar por ejemplo el panel de refinamiento o la WebPart de resultados de SharePoint 2010.
  • Extender mediante desarrollo las WebParts de búsquedas que en SharePoint 2010 no son selladas, de manera que se pueden crear nuevas WebParts que hereden de las WebParts de búsqueda existentes.

Si nos centramos en las posibilidades de personalización de las WebParts de búsqueda:

WebPart Searchbox

La WebPart de definición de una búsqueda (SearchBox) es extensible de forma que podemos crear nuestras propias WebParts que extiendan la anterior para simplificar por ejemplo la realización de las búsquedas de tipo Wildcard sin obligar a qué el usuario tenga que introducir un carácter *, aplicar una ordenación diferente especificando una clausula OrderBy. Dos ejemplos en esta línea son los siguientes:

Extesión de la WebPart CoreResults

La WebPart CoreResults es extensible, siendo la opción recomendada en escenarios de personalización en los que se requiera por ejemplo aplicar ciertos criterios de ordenación o cambiar la presentación de las búsquedas utilizando un renderizado diferente al propio de CoreResultsWebParts. Ejemplos en esta línea son los siguientes:

Ordenación de los resultados de búsqueda

Los resultados obtenidos a partir de una búsqueda se pueden ordenar en base a unos criterios de búsqueda que se especifiquen. Las posibilidades para aplicar ordenación personalizada pasan por:

Personalización del panel de refinamiento

El panel de refinamiento de resultados de las búsquedas es personalizable mediante dos técnicas diferenciadas:

Personalización de la paginación de los resultados de búsqueda

Dentro de las posibilidades de personalización de la paginación de los resultados de búsqueda tenemos:

Deja un comentario