Question

J'ai créé un centre de recherche et je souhaite lui appliquer une page maître personnalisée.Je souhaite déployer la page maître à l'aide d'un module et de la fonctionnalité de ma solution.J'ai créé un module et le Elements.xml ressemble à

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Module Name="SearchcenterModule" Url="Suche/_catalogs/masterpage">
       <File Path="SearchcenterModule\minimal.master" Url="minimal.master" />
    </Module>
</Elements>

Lors de l'activation de ma fonctionnalité dans les fonctionnalités de la collection du site, j'obtiens une erreur

(null) "Suche" introuvable.
...

où "Suche" est le nom de mon sous-site, c'est-à-dire: http://mysharepoint/Suche

Bien sûr, je peux ajouter le fichier manuellement mais il doit y avoir un moyen de le déployer à l'aide de l'activation des fonctionnalités.

Merci pour votre aide.

Était-ce utile?

La solution

Je ne connais pas la solution, mais avez-vous essayé de définir la fonction de fonctionnalité à Web, d'utiliser la définition de module par défaut et l'activation de ce module sur la supporie de la Surette?

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Module Name="MasterPageModule" Url="_catalogs/masterpage">
    <File Url="MasterPage.master" Type="GhostableInLibrary" IgnoreIfAlreadyExists="False" />
  </Module>
</Elements>

Si cela ne fonctionne pas, avez-vous essayé d'utiliser ~ jeton de site?

<Module Name="SearchcenterModule" Url="~Site/_catalogs/masterpage">

Autres conseils

Les pages maîtres et la mise en page ne peuvent être déployées que sur SiteCollections, et non sur des sites/sous-sites.

Votre fonctionnalité doit donc être limitée au site.Vous pouvez toujours dans votre FeatureReceiver définir la page maître sur un domaine spécifique. SPWeb.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
    <Module Name="SearchcenterModule" Url="_catalogs/masterpage">
       <File Url="minimal.master" IgnoreIfAlreadyExists="TRUE" Type="GhostableInLibrary" />
    </Module>
</Elements>

IgnoreIfAlreadyExists veille à l'écraser lors du déploiement afin que de nouvelles modifications apparaissent. Type="GhostableInLibrary" s'assure que la nouvelle page maître/mise en page est visible dans la galerie Masterpage & Pagelayouts.

Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top