Procédure : créer une page maître minimale
Lorsque vous configurez un site Web Microsoft Office SharePoint Server 2007, l'une de vos premières tâches consiste à créer une ou plusieurs pages maîtres. Une page maître contient les références aux éléments que vous pouvez utiliser dans plusieurs autres pages d'un site Office SharePoint Server 2007, tels que la navigation, les contrôles de recherche, les contrôles d'ouverture de session et les images de bannière. Elle peut également contenir les références CSS de feuilles de style et ECMAScript (JScript, JavaScript) qui définissent l'aspect global de votre site. En règle générale, chaque site (et par conséquent chaque page) de votre collection de sites utilise la même page maître afin de fournir un environnement cohérent dans toute la collection de sites. Selon vos besoins, vous pouvez utiliser une autre page maître pour un site ou tous les sites de votre hiérarchie de sites afin de différencier les différentes zones de votre portail.
Galeries de pages maîtres
Lors de la mise en service d'une collection de sites dans Office SharePoint Server 2007, le système crée une galerie de pages maîtres qui contient toutes les pages maîtres et les mises en page de cette collection de sites. Si la collection de sites utilise les modèles Portail de publication ou Portail de collaboration, la galerie de pages maîtres contient plusieurs pages maîtres fournies dans Office SharePoint Server 2007, telles que BlueBand.master. Ces pages maîtres, ainsi que d'autres exemples de pages .master
, figurent dans le dossier C:\Program%20Files\Common%20Files\Microsoft%20Shared\web%20server%20extensions\12\TEMPLATE\FEATURES\PublishingLayouts\MasterPages\
. Vous pouvez les utiliser telles quelles ou les personnaliser entièrement afin de donner une identité unique à votre site.
Pourquoi commencer par une page maître minimale
La création et la finalisation d'une page maître en vue de la personnalisation de votre site SharePoint est un travail de longue haleine qui nécessite une planification rigoureuse. Si cela était possible, vous aimeriez ne pas avoir à réécrire le code ou à supprimer les sections de code inutiles de votre page maître. Cette rubrique montre comment créer une page maître minimale, qui contient les fonctions minimales requises par Office SharePoint Server 2007, pour que vous disposiez d'une base stable sur laquelle construire vos propres pages maîtres. Créer une page maître minimale vous évite d'avoir à supprimer des sections de code d'une page .master
préexistante (comme BlueBand.master) ou d'avoir à supprimer des fonctions pour les réintégrer ensuite.
Notes
Cette rubrique suppose que la page maître minimale est utilisée comme page maître décrite comme une page maître dans Office SharePoint Server 2007. Il ne prend pas en charge l'utilisation de la page maître minimale décrite dans cette rubrique comme une page maître système Office SharePoint Server 2007. L'utilisation de ce contenu avec Windows SharePoint Services 3.0 n'est pas explicitement prise en charge.
Vous pouvez bien entendu créer une page maître de toute pièce. Nous ne vous le conseillons toutefois pas, car une page maître vide ne contient pas les espaces réservés dont le modèle de page Office SharePoint Server 2007 a besoin pour fonctionner correctement.
L'exemple de code contenu dans la procédure ci-après ne contient que ce qui est requis par le modèle de page Office SharePoint Server 2007, à savoir les espaces réservés et les contrôles nécessaires pour utiliser les mises en page fournies dans une installation Office SharePoint Server 2007 par défaut. Office SharePoint Server 2007 requiert une page maître qui contient un titre, une personnalisation, des fonctions d'ouverture de session, de recherche et d'arborescence hiérarchique, ainsi que des éléments de structure de base, tels que des zones de page, des séparateurs, des bordures, des consoles et des espaces réservés aux descriptions.
La procédure ci-après utilise Office SharePoint Designer 2007 en tant qu'environnement de conception des pages maîtres. Vous pouvez toutefois avoir recours à un éditeur de texte, un éditeur de pages Web, tel que Microsoft Office SharePoint Designer 2007, ou un environnement de développement intégré (IDE), comme Microsoft Visual Studio 2005, pour créer une page maître.
Les pages maîtres proposées dans Office SharePoint Server 2007 reposent sur la propriété SPWeb.CustomMasterUrl de la classe SPWeb de Windows SharePoint Services.
Pour créer une page maître minimale
Ouvrez SharePoint Designer.
Dans le menu Fichier, cliquez sur Nouveau, pointez sur Contenu SharePoint, puis cliquez sur l'onglet Page.
Double-cliquez sur Page maître pour créer une page maître.
Cliquez sur Création pour afficher la page maître en mode Création. La page maître doit contenir des zones d'en-tête et de marge gauche ainsi que plusieurs espaces réservés.
Cliquez sur Code pour afficher la page maître en mode Code.
Copiez le code ci-après dans la page maître.
<%-- Identifies this page as a .master page written in Microsoft Visual C# and registers tag prefixes, namespaces, assemblies, and controls. --%> <%@ Master language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="SPSWC" Namespace="Microsoft.SharePoint.Portal.WebControls" Assembly="Microsoft.SharePoint.Portal, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="PublishingWebControls" Namespace="Microsoft.SharePoint.Publishing.WebControls" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="PublishingNavigation" Namespace="Microsoft.SharePoint.Publishing.Navigation" Assembly="Microsoft.SharePoint.Publishing, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register TagPrefix="wssuc" TagName="Welcome" src="~/_controltemplates/Welcome.ascx" %> <%@ Register TagPrefix="wssuc" TagName="DesignModeConsole" src="~/_controltemplates/DesignModeConsole.ascx" %> <%@ Register TagPrefix="PublishingVariations" TagName="VariationsLabelMenu" src="~/_controltemplates/VariationsLabelMenu.ascx" %> <%@ Register Tagprefix="PublishingConsole" TagName="Console" src="~/_controltemplates/PublishingConsole.ascx" %> <%@ Register TagPrefix="PublishingSiteAction" TagName="SiteActionMenu" src="~/_controltemplates/PublishingActionMenu.ascx" %> <%-- Uses the Microsoft Office namespace and schema. --%> <html> <WebPartPages:SPWebPartManager runat="server"/> <SharePoint:RobotsMetaTag runat="server"/> <%-- The head section includes a content placeholder for the page title and links to CSS and ECMAScript (JScript, JavaScript) files that run on the server. --%> <head runat="server"> <asp:ContentPlaceHolder runat="server" id="head"> <title> <asp:ContentPlaceHolder id="PlaceHolderPageTitle" runat="server" /> </title> </asp:ContentPlaceHolder> <Sharepoint:CssLink runat="server"/> <asp:ContentPlaceHolder id="PlaceHolderAdditionalPageHead" runat="server" /> </head> <%-- When loading the body of the .master page, SharePoint Server 2007 also loads the SpBodyOnLoadWrapper class. This class handles .js calls for the master page. --%> <body onload="javascript:_spBodyOnLoadWrapper();"> <%-- The SPWebPartManager manages all of the Web part controls, functionality, and events that occur on a Web page. --%> <form runat="server" onsubmit="return _spFormOnSubmitWrapper();"> <wssuc:Welcome id="explitLogout" runat="server"/> <PublishingSiteAction:SiteActionMenu runat="server"/> <PublishingWebControls:AuthoringContainer id="authoringcontrols" runat="server"> <PublishingConsole:Console runat="server" /> </PublishingWebControls:AuthoringContainer> <%-- The PlaceHolderMain content placeholder defines where to place the page content for all the content from the page layout. The page layout can overwrite any content placeholder from the master page. Example: The PlaceHolderLeftNavBar can overwrite the left navigation bar. --%> <asp:ContentPlaceHolder id="PlaceHolderMain" runat="server" /> <asp:Panel visible="false" runat="server"> <%-- These ContentPlaceHolders ensure all default SharePoint Server pages render with this master page. If the system master page is set to any default master page, the only content placeholders required are those that are overridden by your page layouts. --%> <asp:ContentPlaceHolder id="PlaceHolderSearchArea" runat="server"/> <asp:ContentPlaceHolder id="PlaceHolderTitleBreadcrumb" runat="server"/> <asp:ContentPlaceHolder id="PlaceHolderPageTitleInTitleArea" runat="server"/> <asp:ContentPlaceHolder id="PlaceHolderLeftNavBar" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderPageImage" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderBodyLeftBorder" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderNavSpacer" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderTitleLeftBorder" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderTitleAreaSeparator" runat="server"/> <asp:ContentPlaceHolder ID="PlaceHolderMiniConsole" runat="server"/> <asp:ContentPlaceHolder id="PlaceHolderCalendarNavigator" runat ="server" /> <asp:ContentPlaceHolder id="PlaceHolderLeftActions" runat ="server"/> <asp:ContentPlaceHolder id="PlaceHolderPageDescription" runat ="server"/> <asp:ContentPlaceHolder id="PlaceHolderBodyAreaClass" runat ="server"/> <asp:ContentPlaceHolder id="PlaceHolderTitleAreaClass" runat ="server"/> <asp:ContentPlaceHolder id="PlaceHolderBodyRightMargin" runat="server" /> </asp:Panel> </form> </body> </html>
Dans le menu Fichier, cliquez sur Enregistrer sous, tapez un nom de fichier unique avec l'extension
.master
, puis enregistrez le fichier dans la galerie de pages maîtres (/_catalogs/masterpage
) de votre collection de sites.