Procédure : Afficher des champs personnalisés dans un composant WebPart Contenu par requête

Dernière modification : lundi 19 avril 2010

S’applique à : SharePoint Server 2010

Un Composant WebPart Contenu par requête affiche une vue dynamique d’un contenu sur une page de votre site Microsoft SharePoint Server 2010. Le composant WebPart exécute une requête qui peut porter sur des listes et des sites de votre collection de sites, puis présente les résultats de cette requête dans la page. Vous pouvez par exemple utiliser ce composant WebPart pour afficher les cinq articles les plus récemment publiés dans votre site Web, quel que soit l’emplacement où ils sont stockés.

Le composant WebPart a deux caractéristiques principales : la requête et la présentation. La requête détermine le contenu à afficher et la présentation détermine le style et la présentation du contenu. Vous pouvez également associer des règles afin de n’afficher dans le composant WebPart que les éléments d’un certain type correspondant à un certain ensemble de règles.

Dans le volet d'outils, vous pouvez procéder comme suit :

  • Sélectionner l’étendue de la requête. Vous pouvez configurer le composant WebPart de façon à rechercher des éléments parmi l’ensemble de la collection de sites, à partir d’un site spécifique de la collection de sites ou à partir d’une liste en particulier.

  • Sélectionner le type de liste à partir de laquelle effectuer la recherche.

  • Spécifier les types de contenus que le composant WebPart doit afficher.

  • Sélectionner des filtres supplémentaires pour contrôler le contenu affiché par le composant WebPart. Par exemple, il est possible d’utiliser un filtre pour afficher uniquement les Pages d’articles créées par un utilisateur spécifique.

  • Sélectionner les options de tri et de groupement pour déterminer l'ordre dans lequel les éléments apparaissent.

  • Sélectionner les options de type pour contrôler la façon dont le composant WebPart présente les éléments et groupe les en-têtes.

Par défaut, la feuille de style XSL qui contrôle la présentation du Composant WebPart Contenu par requête restitue les colonnes Title, Description, ImageUrl et LinkUrl (si elles sont présentes) des éléments renvoyés par la requête. Le composant WebPart restitue les colonnes ImageUrl et LinkUrl respectivement sous forme d’image et de lien hypertexte. Le Composant WebPart Contenu par requête utilise les feuilles de style XLS pour restituer ces colonnes par défaut.

Si vous souhaitez rechercher des types de contenu personnalisés et afficher des colonnes spécifiques à partir de ces types de contenu dans le composant WebPart, vous devez effectuer de petites personnalisations dans le fichier .webpart.

Cette rubrique explique comment inclure des colonnes supplémentaires dans la requête du composant WebPart et comment demander au composant WebPart, au moyen d’un programme, de renommer les colonnes afin d’utiliser les noms attendus par la transformation XSLT par défaut, puis d’afficher les colonnes en utilisant les styles de la transformation XSLT par défaut.

Pour comprendre les étapes nécessaires à cette personnalisation, envisagez le scénario suivant. Imaginez que vous disposez du type de contenu Knowledge Base Articles avec les colonnes suivantes :

  • KB Title (Titre de la base) (Texte)

  • Product (Produit) (Texte)

  • Version (Texte)

  • Status (État) (Choix)

Vous associez une bibliothèque de documents intitulée Articles de la Base de connaissances avec le type de contenu qui contient les articles de la Base de connaissances. Vous voulez afficher le contenu des articles de cette Base de connaissances dans un Composant WebPart Contenu par requête dans votre page d’accueil, afficher la colonne Title en tant que champ Title et pour finir afficher la colonne Product en tant que champ Description dans le composant WebPart. Pour cela, procédez comme suit.

Pour afficher des champs personnalisés dans un composant WebPart Contenu par requête

  1. Ajoutez un Composant WebPart Contenu par requête à une page :

    • Dans la section Requête, définissez la Source de façon à afficher les éléments de la bibliothèque de documents (liste) Articles de la Base de connaissances. Définissez le type de liste et le type de contenu en conséquence.

    • Dans la section Présentation, sélectionnez Titre et description comme style d’élément.

  2. Modifiez les propriétés du fichier du composant WebPart pour afficher les champs personnalisés. Pour accéder au fichier .webpart du composant WebPart, dans le menu Edition du composant WebPart, cliquez sur Exporter.

    SharePoint Server 2010 génère un fichier .webpart contenant l’ensemble complet des propriétés disponibles pour ce composant WebPart. Le fichier .webpart est un fichier XML que vous pouvez modifier à l’aide d’un éditeur de texte.

  3. Dans le fichier .webpart, recherchez la propriété CommonViewFields. Utilisez cette propriété pour spécifier les champs supplémentaires que vous souhaitez afficher dans le composant WebPart. Ajoutez les noms internes des colonnes et le type.

    <property name="CommonViewFields" type="string">KB_x0020_Title,Text;Product,Text;</property>
    

    Notes

    Vous ne pouvez pas utiliser les noms complets de vos colonnes dans cette propriété. Vous pouvez trouver les noms des colonnes internes en vérifiant les propriétés de la colonne dans la liste ou dans la bibliothèque de documents. Cliquez avec le bouton droit sur la colonne et cliquez sur Propriétés. Le nom interne d’une colonne apparaît dans la propriété Address (URL) après 'Field='. Dans le scénario Articles de la Base de connaissances, les colonnes sont : Knowledge Base Article et Product et leurs noms internes sont respectivement KB_x0020_Title et Product.

  4. Mappez ces noms de colonnes internes au Title et à la Description présents dans les transformations XSLT. Pour cela, modifiez la propriété DataColumnRenames.

    <property name="DataColumnRenames" type="string">KB_x0020_Title,Title;Product,Description</property>
    

    Notes

    Les transformations XSLT par défaut peuvent générer les quatre champs suivants : Title, Description, LinkUrl et ImageUrl. Dans votre propriété DataColumnRenames, vérifiez que les noms que vous spécifiez correspondent aux noms dans les transformations XSLT, autrement dit Title, Description, LinkUrl et ImageUrl.

  5. Enregistrez localement le fichier .webpart.

  6. Dans la page Web, supprimez le Composant WebPart Contenu par requête que vous avez ajouté à l’étape 1.

  7. Importez le fichier .webpart et ajoutez le composant WebPart dans votre page. Pour importer le fichier .webpart, cliquez sur Page, sur Ajouter des composants WebPart, puis cliquez sur Importer. Recherchez le fichier .webpart et cliquez sur Télécharger.

  8. Faites glisser le composant WebPart vers la zone appropriée de la page. Il doit afficher le Titre de la Base de connaissances et le nom du produit.

Si vous souhaitez que la colonne État ou Version apparaisse en plus du titre de l’article de la Base de connaissances et du nom du produit, modifiez la transformation XSLT et ajoutez le rendu pour les colonnes supplémentaires.

Notes

L’exemple précédent montre comment modifier un composant WebPart sur une page de façon à inclure des champs personnalisés dans le rendu. Vous pouvez cependant apporter des modifications dans les composants WebPart à l’aide d’un éditeur tel que Microsoft SharePoint Designer 2010. SharePoint Designer 2010 convient bien à la personnalisation des composants WebPart utilisés dans la mise en page d’une page. Il inclut automatiquement ces composants personnalisés dans les pages créées avec cette mise en page. Vous pouvez également ajouter des composants WebPart personnalisés à la galerie de composants WebPart, à partir de laquelle ils peuvent être déplacés vers des zones de composants WebPart de nouvelles pages.

Voir aussi

Tâches

Procédure : personnaliser le format XSL pour le composant WebPart Contenu par requête

Procédure : personnaliser le format RSS pour le composant WebPart Contenu par requête

Procédure : Personnaliser le composant WebPart Contenu par requête à l’aide de propriétés personnalisées

Concepts

Composant WebPart commun et tâches de personnalisation des contrôles de champ