Procédure : activer le rendu HTML pour le composant WebPart Résultats fédérés
Dernière modification : samedi 1 mai 2010
S’applique à : SharePoint Server 2010
Dans cet article
Étape 1. Vérifier que le code HTML n’est pas supprimé de l’affichage
Étape 2. Désactiver l’échappement de rendu
Étape 3 (facultative). Désactiver la troncation
Par défaut, la transformation XSLT (XSLT) du composant WebPart Résultats fédérés 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 Résultats fédérés qui affiche les résultats à partir 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 :
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 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
Dans votre navigateur, accédez à l’URL de la page des résultats. Par exemple, http:// nom_serveur /results.aspx.
Cliquez sur le lien Actions du site, puis sur Modifier la page.
Dans l’instance du composant WebPart Résultats fédérés que vous souhaitez modifier, cliquez sur la flèche de modification pour afficher le menu Composant WebPart, puis cliquez sur Modifier le composant WebPart.
Dans le volet des outils du composant WebPart Résultats fédérés, développez la section Afficher les propriétés.
Sélectionnez Use Location Visualization.
Cliquez sur OK pour mettre à jour l’instance du composant WebPart Federated Results.
Étape 1. Vérifier 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 Résultats fédérés et la transformation XSLT qui transforme le code XML. Pour apprendre à modifier la propriété XSL d’un emplacement fédéré ou d’un composant WebPart, voir Procédure : afficher et modifier la transformation XSLT des résultats de la recherche. Pour afficher le code XML des résultats de la recherche qui est renvoyé par un emplacement fédéré, suivez les instructions dans Procédure : afficher les données XML des résultats de la recherche.
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 la transformation XSLT le supprime. Par exemple, la balise suivante à l’intérieur du modèle GetPlainTextFromHtml supprime les balises HTML du champ description d’un flux RSS, comme suit.
<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
La transformation 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 classique. Pour plus d’informations sur la personnalisation de l’affichage du 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 Résultats fédérés, 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 du code HTML rendu. L’étape suivante explique comment changer ce comportement.
Étape 2. Désactiver 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, comme suit.
<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ésactiver 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 garantir le rendu correct du code HTML, 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
Autres ressources
Procédure : désactiver l’échappement de rendu dans les transformations XSLT