Websitetemplates sind ein geeignetes Werkzeug
zur Anlage von gleich aufgebauten Websites im SharePoint. Die Erstellung
solcher Vorlagen ist sehr einfach. Es wird eine Website mit allen benötigten
Listen, Bibliotheken, Seiten und Webparts angelegt und anschließend als Vorlage
gespeichert. Bei der Anlage einer neuen Website kann diese Vorlage ausgewählt
werden und es wird eine entsprechend vorkonfigurierte Website angelegt. Das
erleichtert zum Beispiel die Anlage von gleich aufgebauten Projektseiten in
einem Projektportal ungemein.
Dies ist sehr praktisch, solange sich die
Vorlage für die Projektseiten nicht ändert. Wird allerdings zu einem späteren
Zeitpunkt festgestellt, dass auf allen Projektseiten noch eine zusätzliche
Liste angelegt werden soll, entstehen zwei Probleme:
1. Das aktuelle Websitetemplate ist veraltet. Auf neu anzulegenden
Websites fehlt dementsprechend auch die Liste, solange das Template nicht
aktualisiert wurde.
2. Auf bereits angelegten Websites fehlt diese Liste natürlich auch
Problem eins lässt sich einfach lösen, indem
das Websitetemplate aktualisiert wird. Von nun an angelegte Websites auf Basis
des Templates enthalten die neue Liste. Bei bereits existierenden Websites ist
es problematischer. Hier gibt es nur zwei Möglichkeiten: Die Liste kann
natürlich auf vorhandene Websites manuell angelegt werden. Das ist, je nach
Anzahl der vorhandenen Websites, sehr zeitaufwändig. Um Aufwand beim Anlegen
der neuen Liste auf den einzelnen Websites zu sparen, ist eine
automatisierte Lösung praktischer.
Die automatische Anlage von Listen auf einer
Website und allen Unterwebsites kann zum Beispiel mit Hilfe eines PowerShell
Skriptes erfolgen. Bevor das PowerShell Skript verwendet werden kann, muss von
der anzulegenden Liste ein Template erstellt werden. List-Templates lassen sich
über die Listeneinstellungen einer Liste einfach erstellen. Das erstellte
Template wird in einer zentralen List-Template Bibliothek abgelegt.
Folgendes PowerShell Script erstellt auf einer
angegebenen Website und allen Unterwebsites eine Link-Liste basierend auf einer
Listenvorlage:
Abbildung 1 Automatische Anlage einer Liste
auf eine Website und allen Unterwebsites
Im PowerShell Script wird zunächst festgelegt,
unter welchen Namen und auf welcher Website die neue Liste angelegt werden
soll. Weiterhin wird das zuvor angelegte Listtemplate angegeben.
In einer „For Each"-Schleife werden die
angegebene Website sowie alle darunterliegenden Websites durchlaufen. Pro
Website wird überprüft, ob bereits eine Liste mit dem Namen „LinkList"
existiert. Ist dies nicht der Fall, wird eine neue Liste mit dem Namen
„LinkList" auf des angegebenen Listtemplates angelegt.
Mit Hilfe dieses PowerShell Script lässt sich
unter Umständen viel Zeit sparen, wenn eine Liste auf vielen bereits
bestehenden Websites angelegt werden soll.
Keine Kommentare:
Kommentar veröffentlichen