Startseite > 2010, SharePoint > Master Page mit PowerShell in SharePoint 2010 festlegen

Master Page mit PowerShell in SharePoint 2010 festlegen


In einem aktuellen Projekt sind wir auf einen Punkt gestoßen, wo wir die MasterPage für eine Website gern mit PowerShell konfigurieren wollten.

Das festlegen der MasterPage über PowerShell war relativ einfach, da es eine Eigenschaft der Website ist und diese kann auch relativ einfach gesetzt werden.

Hierfür kann man den folgenden einfachen Befehl verwenden:

$web = Get-SPWeb http://sharepoint
$web.CustomMasterUrl = „/_catalogs/masterpage/nightandday.master“
$web.MasterUrl = „/_catalogs/masterpage/nightandday.master“
$web.Update()

Mit diesem Befehl werden beide Masterpages gesetzt. Eine genaue Beschreibung kann aus dem folgenden englisch sprachigen Blog-Artikel entnommen werden. How to use PowerShell to set the Master Page in SharePoint 2010

 

Nach dem wir die Masterpages gesetzt hatten wollten wir anschließend die Vererbung abschalten.
image
In der Grafik ist die Vererbung eingeschaltet.

Diese Eigenschaften sind in den SPWeb Property Bag enthalten, siehe Link: Setting SharePoint Web Master Pages Programmatically
Der Eintrag ist zwar schon ein wenig älter aber als Hinweis ganz gut.

Wie kann man jetzt die Eigenschaften des Property Bag einer Website über PowerShell abrufen. Hierfür habe ich den folgenden Befehl verwendet.

$web = Get-SPWeb http://sharepoint
$web.AllProperties

Danach erhält man die folgende Ausgabe:
image

In der Ausgabe sind auch schon die Eigenschaften markiert welche für die Vererbung angepasst werden müssen. Um diese Eigenschaften zu setzen kann der folgende PowerShell Befehl verwendet werden.

$web = Get-SPWeb http://sharepoint
$_.AllProperties[„__InheritsCustomMasterUrl“]=“False“
$_.AllProperties[„__InheritsMasterUrl“]=“False“
$web.update()

Da wir die Vererbung auf mehreren Websites Deaktivieren mussten, habe ich das Skript ein wenig angepasst:

Get-SPWeb -Site http://sharepoint -Limit all | ForEach-Object {
$_.AllProperties[„__InheritsCustomMasterUrl“]=“False“
$_.AllProperties[„__InheritsMasterUrl“]=“False“
$_.update()
}

So das wäre es erst einmal dazu.

Gruß

Mario

Kategorien:2010, SharePoint
  1. Roulette System
    24. Juli 2011 um 04:43

    Herrlich, endlich habe ich das gerafft🙂

  2. Spielautomaten Trick
    2. August 2011 um 04:54

    Lustig, ich habe niemals fur moglich gehalten, dass dies in der Tat wirklich funktionieren konnte🙂

  1. No trackbacks yet.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: