V tomto článku si ukážeme, jak vytvořit šablonu SharePoint knihovny a listu pomocí PowerShell a následně ji nasadit do tenantu, aby ji mohli používat i ostatní uživatelé. Tento návod je zaměřen na začátečníky i pokročilé uživatele a je detailně popsán krok za krokem.
Co je SharePoint a co je SharePoint Site?
SharePoint je platforma od Microsoftu, která umožňuje týmům spolupracovat, sdílet dokumenty, spravovat obsah a vytvářet intranetové stránky. SharePoint je součástí Microsoft 365 a nabízí široké možnosti přizpůsobení a integrace s ostatními aplikacemi.
SharePoint Site je webová stránka v rámci SharePointu, která slouží jako pracovní prostor pro týmy nebo projekty. Může obsahovat knihovny dokumentů, seznamy, stránky, webové části a další funkce. Při vytváření nových webů můžete použít šablony, což je způsob, jak standardizovat vzhled a funkčnost stránek.
Proč používat šablony SharePoint Site?
Šablony SharePoint Site umožňují:
- Standardizaci: Vytváření konzistentních webů napříč organizací.
- Efektivitu: Rychlé nasazení webů s předdefinovaným obsahem a strukturou.
- Jednoduchost: Uživatelé mohou snadno vytvářet weby bez nutnosti manuálního nastavování.
Předpoklady
Než začneme, ujistěte se, že máte:
- Přístup k SharePoint Online v rámci Microsoft 365.
- Oprávnění správce pro váš SharePoint tenant.
- Nainstalovaný PowerShell (verze 5.1 nebo novější).
- Nainstalovaná aplikace Visual studio code (pro tvorbu a spuštění scriptu nebo jiný program na psaní scriptu)
Jaký je cíl?
Cílem je v SharePoint Online zajistit, aby uživatelé měli při vytváření seznamu nebo knihovny dokumentů k dispozici předem připravené šablony pro konkrétní účely. Tyto šablony budou zahrnovat specifické sloupce, pohledy, nastavení a formátování.
Výchozí stav je tedy tento:
Jdeme na realizaci
Celý proces provedeme pomocí PowerShell příkazů SharePoint Online Management Shell (SPO) a využijeme následující příkazy:
Connect-SPOService
Get-SPOSiteScriptFromList
Add-SPOSiteScript
Add-SPOListDesign
Get-SPOListDesign
Get-SPOSiteScript
Remove-SPOSiteScript
Remove-SPOListDesign
Krok 1: Připojení k SharePoint Online
Než začneme, musíme se připojit k SharePoint Online pomocí příkazu Connect-SPOService
. Budeme potřebovat administrátorskou URL SharePoint tenantu a přihlašovací údaje.
# Připojení k SharePoint Online
Connect-SPOService -Url https://yourtenant-admin.sharepoint.com
Krok 2: Vytvoření JSON šablony z existující knihovny nebo seznamu
Pokud již máte vytvořenou knihovnu dokumentů nebo seznam, který chcete použít jako základ pro šablonu, můžete pomocí příkazu Get-SPOSiteScriptFromList
získat JSON definici této knihovny nebo seznamu.
# Získání JSON šablony z existující knihovny/seznamu
Get-SPOSiteScriptFromList -ListUrl "https://yourtenant.sharepoint.com/sites/yoursite/YourList/" |Out-File "Q:\lib-template.json"
Tento příkaz vrátí JSON definici knihovny nebo seznamu, kterou uložíme na disk do souboru *.json
Krok 3: Přidání šablony jako Site Script
Site Script definuje, jaké vlastnosti má mít knihovna nebo seznam (např. pole, nastavení verzování, typ obsahu atd.).
Jakmile máme JSON definici, můžeme ji přidat jako nový Site Script pomocí příkazu Add-SPOSiteScript
. Při přidání musíme definovat název a obsah JSON.
# Přidání Site Script
Add-SPOSiteScript -Title "ProjektovaKnihovnaScript" -Content (Get-Content -Path "Q:\lib-template.json" -Raw)
Výsledkem bude nahrání JSONu do SiteScriptu, který následně získá své ID, jež využijeme v dalším kroku. Každý nahraný SiteScript bude mít vždy své unikátní ID.

Krok 4: Vytvoření List Design
List Design umožňuje uživatelům snadno vybrat a použít tento Site Script, aniž by museli vědět, jak funguje.
Dalším krokem je vytvoření List Design (návrhu seznamu), který propojí Site Script s uživatelským rozhraním SharePointu. Použijeme příkaz Add-SPOListDesign
.
# Vytvoření List Design
$IDSiteScript = "146cca63-c740-4674-9141-73927969520c"
Add-SPOListDesign -Title "ProjektovaKnihovnaDesign" -SiteScripts $IDSiteScript -Description "Testovací šablona knihovny" -ListColor Blue -ListIcon Library
Informace navíc
Všimněte si že jeden z parametrů je i -ThumnailURL. Tento parametr můžete využít pokud chcete mít dokonalý branding a chcete svoji šablonu opatřit hezkým obrázkem. Doporučuji obrázek umístit do “Organization Assets Document Libraries”. Návod jak si takové prostředí zřídit.

Jakmile je design vytvořen, lze z pohledu uživatele ověřit, zda je nová šablona viditelná.

Poznámka pod čarou
Všimněte si, že jsem zdůraznil jak ID Site Scriptu, tak ID List Designu. To je klíčové nejen pro kontrolu a ověření, ale také pro odstranění starších částí. Každý Site Script a List Design bude mít vždy své unikátní ID. Dále je nutné objasnit, proč ukládám data do souboru. Důvodem je, že pokud znáte strukturu JSON, můžete s tímto souborem dále pracovat, provádět úpravy a znovu jej nahrát. Navíc získáváte zálohu definice jako pojistku.
Krok 5: Ověření vytvořených šablon
Pro ověření, že byla šablona úspěšně vytvořena, můžete použít příkazy Get-SPOListDesign
a Get-SPOSiteScript
.
Získání všech List Design
# Zobrazení všech List Design
Get-SPOListDesign
Získání všech Site Script
# Zobrazení všech Site Script
Get-SPOSiteScript
Krok 6: Odstranění šablony (volitelné)
Pokud již nepotřebujete šablonu nebo ji chcete aktualizovat, můžete ji odstranit pomocí příkazů Remove-SPOListDesign
a Remove-SPOSiteScript
.
Odstranění List Design
# Odstranění List Design
Remove-SPOListDesign -Identity $listDesignId
Odstranění Site Script
# Odstranění Site Script
Remove-SPOSiteScript -Identity $siteScriptId
Závěr
Pomocí výše uvedených kroků jsme vytvořili šablonu knihovny dokumentů nebo seznamu, kterou lze použít při zakládání nových knihoven nebo seznamů v SharePoint Online. Tato šablona se zobrazí v sekci “Moje organizace” a umožní uživatelům rychle nasadit předdefinovanou strukturu.
Využití nativních příkazů SPO zajišťuje jednoduchost celého procesu a eliminuje potřebu externích modulů, jako je PnP. I když je možné vytvořit skript pomocí modulu PnP, rozhodl jsem se pro řešení s SPO, protože PnP je externí modul, který nemusí být schválen v prostředí s vysokými bezpečnostními požadavky, přestože je často využíván a někdy i doporučován samotným Microsoftem.