La experiencia de búsqueda nativa de SharePoint Online es genuinamente capaz. Para la mayoría de las organizaciones gestiona bien el descubrimiento general de contenido — los usuarios escriben una consulta, aparecen resultados, se encuentra el contenido. Pero para algunos casos de uso la experiencia predeterminada se queda corta: una búsqueda controlada y acotada sobre un conjunto específico de documentos donde la clasificación, el tipo de contenido y el idioma deben mostrarse explícitamente en las tarjetas de resultados. Las políticas y los manuales de procedimiento son el ejemplo clásico. Los usuarios no están explorando toda la intranet — buscan un tipo de documento específico, quieren saber inmediatamente qué tipo de documento han encontrado, y en una organización multilingüe necesitan las etiquetas de taxonomía en su idioma.
Este es el caso de uso que aborda esta serie. No es un sustituto de la búsqueda global del sitio — es una experiencia de búsqueda diseñada específicamente para una sección concreta de contenido donde la marca y la clasificación importan tanto como la exhaustividad.
Qué Construimos
Una página personalizada de PnP Modern Search acotada a tres tipos de contenido — Políticas, Manuales de Procedimiento y Documentación de Apoyo — con:
- Tres verticales de búsqueda: Todo, Políticas, Manual de Procedimiento
- Panel de filtros basado en taxonomía con etiquetas que cambian de idioma automáticamente
- Estilos de tarjeta distintos por tipo de contenido — borde izquierdo verde para Políticas, morado para Manuales de Procedimiento
- Píldoras de clasificación taxonómica en cada tarjeta que se muestran en el idioma del usuario
La experiencia es deliberadamente cerrada — solo muestra contenido etiquetado con los tipos de contenido y valores de taxonomía relevantes. Esa restricción es una decisión de diseño, no una limitación.
Por Qué la Búsqueda Acotada Tiene Sentido para Contenido de Políticas
La búsqueda general del sitio devuelve todo — noticias, páginas de equipo, documentos de proyectos, formularios y políticas mezclados. Para alguien que busca específicamente la política de incorporación de RRHH, eso es ruido.
Una experiencia acotada filtra ese ruido por diseño. Al restringir el conjunto de resultados a tipos de contenido específicos y mostrar visiblemente la clasificación taxonómica en cada tarjeta, los usuarios pueden orientarse inmediatamente — saben que están mirando contenido de políticas, pueden ver el área funcional de un vistazo, y el panel de filtros les permite afinar sin necesidad de una segunda consulta.
El borde de color izquierdo en cada tarjeta refuerza el tipo de contenido — no porque sea estrictamente necesario, sino porque ayuda al usuario a localizar lo que busca más rápido.
La Capa Multilingüe
Para una intranet monolíngüe este tipo de experiencia de búsqueda acotada es relativamente sencillo de construir con PnP Modern Search. La capa multilingüe es donde se vuelve técnicamente interesante.
El Term Store de SharePoint admite traducciones para cada término — cada término puede tener una etiqueta en inglés, francés, alemán, etc. Cuando el idioma del usuario está configurado en francés, la expectativa es que las etiquetas de taxonomía aparezcan en francés en toda la experiencia. PnP Modern Search puede lograrlo, pero requiere la asignación correcta de propiedades administradas.
La distinción clave: ows_ frente a ows_taxId_
Cuando SharePoint rastrea una página con una columna de metadatos administrados, crea dos propiedades rastreadas:
ows_OrgClassification— la etiqueta de término en texto plano en el idioma predeterminadoows_taxId_OrgClassification— el GUID del término y los datos de etiqueta por idioma
Para refinadores de búsqueda estándar, ows_OrgClassification asignada a un RefinableString es suficiente. Para refinadores multilingües — donde las etiquetas de filtro y las píldoras de tarjeta deben cambiar de idioma según la configuración regional del usuario — necesitas ows_taxId_OrgClassification asignada a nivel de tenant. PnP Modern Search utiliza la propiedad taxId para buscar la traducción correcta en el Term Store en el momento de renderizar.
En esta implementación, ows_taxId_OrgClassification está asignada a RefinableString111 a nivel de tenant en el esquema de búsqueda de SharePoint. Esta única asignación desbloquea tanto las etiquetas de filtro multilingüe como las píldoras de tarjeta multilingüe.
AutoRefinableString111
Una vez que RefinableString111 está asignada e indexada, PnP Modern Search proporciona un helper de Handlebars integrado — {{AutoRefinableString111}} — que gestiona la resolución de etiquetas adaptadas al idioma de forma automática.
En la plantilla de tarjeta, donde antes podías haber escrito una expresión manual para dividir el valor de taxonomía sin procesar y extraer la etiqueta, ahora escribes:
<span class="card-pill">{{AutoRefinableString111}}</span>
PnP lee el valor de RefinableString111 del resultado de búsqueda, detecta la configuración regional de la página actual, resuelve la etiqueta de idioma correcta a partir de los datos de traducción del Term Store y la muestra. Cambia el idioma a francés mediante ?Locale=fr-FR y las píldoras cambian — "Onboarding" se convierte en "Intégration", "Procurement" en "Approvisionnement", "Training" en "Formation".
El panel de filtros hace lo mismo. Con el campo de filtro configurado como RefinableString111 y la opción Habilitar localización activada en el origen de datos, las etiquetas de filtro cambian de idioma automáticamente sin ninguna lógica de plantilla adicional.
El Term Store Es la Base
Nada de esto funciona sin traducciones en el Term Store. {{AutoRefinableString111}} solo puede resolver una etiqueta en francés si hay una etiqueta en francés que resolver — lo que significa que cada término de tu taxonomía necesita una traducción al francés configurada antes de que la experiencia multilingüe funcione correctamente.
Para taxonomías pequeñas esto es sencillo de hacer manualmente en la interfaz del Term Store. Para taxonomías más grandes o implementaciones repetibles en múltiples entornos, el cmdlet Set-PnPTerm de PnP PowerShell con los parámetros -Name y -Lcid lo gestiona de forma programática. Una solución completamente automatizada utilizando un archivo de configuración JSON está disponible en el script de Term Store multilingüe.
La Implementación
La implementación completa está cubierta en tres páginas técnicas:
Parte 1 — Arquitectura de Información y Prerrequisitos — configuración del sitio multilingüe, configuración del Term Store, tipos de contenido y asignación de propiedades administradas.
Parte 2 — Verticales, Filtros y Plantillas de Tarjeta — añadir y conectar los web parts, configurar verticales con alcance por ContentTypeId, construir las plantillas de tarjeta y conectar la página a la búsqueda del sitio.
Parte 3 — Resolución de Etiquetas Multilingües y Actualización de Tarjetas — la columna OrgClassification, la asignación de RefinableString111, las traducciones del Term Store, la configuración del filtro, la configuración del slot Tags y las plantillas de tarjeta actualizadas con {{AutoRefinableString111}}.
Cómo Se Ve en la Práctica
Con todo en su lugar, la experiencia para un usuario francófono es fluida. Llegan a la página de búsqueda, el panel de filtros muestra etiquetas taxonómicas en francés, las píldoras de las tarjetas muestran los términos de clasificación en francés, y el tipo de contenido es inmediatamente identificable por el color del borde de la tarjeta — todo sin ningún selector de idioma ni cambio manual más allá del parámetro de URL de configuración regional estándar de SharePoint.
Es una experiencia deliberada y diseñada, no una predeterminada. Para el caso de uso adecuado — una biblioteca de documentos estructurada en una organización multilingüe donde la clasificación y la precisión del idioma importan — es significativamente mejor que lo que ofrece la búsqueda general del sitio por defecto.