Partager via


Activation du rendu HTML pour le composant WebPart Federated Results

Notes

Cette rubrique décrit une fonctionnalité qui fait partie de Infrastructure Update for Microsoft Office Servers. Pour télécharger la mise à jour, voir l'article Description de la mise à jour d'infrastructure SharePoint Server 2007 : 15 juillet 2008.

Par défaut, le XSLT d'un composant WebPart Federated Results supprime le code HTML de l'affichage pour des questions de sécurité. Toutefois, vous pouvez souhaiter afficher un champ qui contient du code HTML dans un composant WebPart Federated Results en provenance d'une source d'emplacement approuvée. Pour ce faire, vous devez apporter les modifications suivantes à la propriété XSL d'un emplacement fédéré ou du composant WebPart Federated Results :

  • Vérifiez que le code HTML n'est pas supprimé de l'affichage.

  • Désactivez le cache de sortie.

  • Désactivez la fonction de troncation (facultatif).

Cette rubrique décrit ces modifications.

Notes

Si vous mettez à jour la propriété XSL de l'emplacement fédéré, vous devez veiller à ce que le composant WebPart Federated Results soit configuré pour utiliser les informations d'affichage de l'emplacement.

Pour configurer le composant WebPart Federated Results de sorte qu'il utilise les informations d'affichage de l'emplacement

  1. Dans votre navigateur, accédez à l'URL de la page des résultats. Par exemple, http:// nom_serveur /results.aspx.

  2. Cliquez sur le lien Actions du site, puis sur Modifier la page.

  3. Dans l'instance du composant WebPart Federated Results que vous souhaitez modifier, cliquez sur la flèche de modification pour afficher le menu Composant WebPart, puis cliquez sur Modifier le composant WebPart partagé.

  4. Dans le volet d'outils du composant WebPart Federated Results, cliquez sur la flèche Afficher les propriétés.

  5. Sélectionnez Use Location Visualization.

  6. Cliquez sur OK pour mettre à jour l'instance du composant WebPart Federated Results.

Notes

Les composants WebPart de recherche fédérés sur la page des résultats par défaut sont configurés pour utiliser les emplacements Internet Search Results et Internet Search Suggestions. Le code XSLT suivant ne fonctionne pas comme prévu pour la configuration par défaut de ces emplacements.

Étape 1 : vérifiez que le code HTML n'est pas supprimé de l'affichage

Avant de pouvoir activer le rendu HTML, vous devez comprendre à la fois la structure du code XML qui est retourné au composant WebPart Federated Results et le XSLT qui transforme le code XML. Pour afficher le code XML qui est retourné par un emplacement fédéré et pour savoir comment modifier la propriété XSL d'un emplacement fédéré ou d'un composant WebPart, suivez les instructions fournies dans Procédure : afficher les données XML retournées par votre emplacement fédéré. Pour examiner la transformation XSLT dans les composants WebPart Federated Results, consultez XSLT des composants WebPart Federated Results.

Assurez-vous que le nœud XML dont vous souhaitez afficher les données contient du code HTML. Ensuite, vérifiez que ce code HTML n'est pas affiché dans la page car le XSLT le supprime. Par exemple, la balise suivante à l'intérieur du modèle GetPlainTextFromHtml supprime les balises HTML du champ de description d'un flux RSS :

<xsl:value-of select="srwrt:GetPlainTextFromHtml($Html)"/>

Modifiez la balise <xsl:value-of> pour afficher la valeur $Html sans appeler le modèle GetPlainTextFromHtml.

<xsl:value-of select="$Html"/>

Notes

Le XSLT par défaut d'un emplacement OpenSearch affiche les champs title, link et description d'un flux RSS OpenSearch. Apportez cette modification uniquement pour le champ description d'un flux RSS ou ATOM typique. Pour plus d'informations sur l'affichage d'autres métadonnées, voir Displaying Additional MetaData in Federated Results. Pour plus d'informations sur la personnalisation de l'affichage de titre, voir Procédure : personnaliser l'icône de titre et de personnalisation des résultats de la recherche fédérée.

Après avoir enregistré cette modification à l'emplacement fédéré ou dans le composant WebPart Federated Results, les balises HTML sont affichées sous forme de caractères d'échappement dans la page. Par exemple, des crochets (<>) sont affichés à la place de l'HTML rendu. L'étape suivante explique comment changer ce comportement.

Étape 2 : désactivez l'échappement de rendu

Recherchez la balise <xsl:value-of> dont vous voulez afficher le rendu. Par exemple, pour afficher le code HTML du champ description d'un flux RSS ou ATOM, recherchez la balise ci-après.

<xsl:value-of select="$DescText"/>

Ajoutez l'attribut disable-output-escaping.

<xsl:value-of select="$DescText" disable-output-escaping="yes"/>

Notes

L'attribut disable-output-escaping entraîne l'affichage, par la balise <xsl:value-of>, du code HTML sans échappement de caractères. Cela peut se traduire par une sortie HTML incorrectement formée. Utilisez par conséquent cet attribut avec précaution et pour afficher du code HTML valide à partir de sources approuvées uniquement.

Étape 3 (facultative) : désactivez la troncation

Étant donné que la valeur $DescText de la balise que vous avez modifiée précédemment est une valeur tronquée, le code HTML du champ description peut être tronqué avant que le balisage soit terminé. Cela risque d'engendrer un rendu incorrect du code HTML.

Pour éviter ce risque, modifiez la valeur select de la balise de sorte qu'elle utilise la valeur qui n'est pas tronquée.

<xsl:value-of select="$DescLongText" disable-output-escaping="yes"/>

Voir aussi

Référence

How to: Disable Output Escaping in XML Style Sheet Transformations

Autres ressources

<xsl:value-of> Element
Procédure : afficher les données XML retournées par votre emplacement fédéré
Procédure : personnaliser l'icône de titre et de personnalisation des résultats de la recherche fédérée