SharePoint Online Site Designs & Site Scripts – 1. del

08.10.2021

Predloge mest pri implementacijah portalov, so lahko eden ključnih elementov uspešne implementacije SharePoint portala v organizacijo.

Uvod

Predloge mest pri implementacijah portalov, so lahko eden ključnih elementov uspešne implementacije SharePoint portala v organizacijo. S predlogami mest dosežemo, da ima skupina mest enako strukturo, kot je definiramo v predlogi. Tukaj mislim predvsem na sezname in dokumentne knjižnice in na podlagi tega tudi gradnike, ki se prikazujejo na posameznih straneh. Na SharePoint on-premises, se je ta del vedno implementiral z namestitvijo WSP paketov na strežnik. V SharePoint Online pa opcije nameščanja WSP paketov ali druge server side kode ni. Tako je moral Microsoft na drugačen način poskrbeti za predloge mest, in nastali so »Site designs« in »Site scripts«.

Site Scripts

Site script je besedilo v obliki zapisa JSON, ki definira, kaj se mora zgoditi po nastanku mesta. JSON shema lahko vsebuje tudi ukaze, ki poženejo Microsoft Power Automate, le ta pa lahko potem zažene tudi logiko, ki je implementirana na Microsoft Azure.

Site Designs

Site design na drugi strani, predstavlja samo skupek nastavitev, ki se morajo zgoditi po nastanku mesta, kaj točno pa se bo nastavilo ali ustvarilo, pa je odvisno od definicije v site script.

Ustvarjanje site script

Za ustvarjanje site script lahko uporabimo katerikoli tekst editor in nato datoteko shranimo kot JSON. Primere in dokumentacijo najdete na naslovu:

https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/site-design-overview

https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/site-design-json-schema

Pomembno je, da se uporabi v naprej definirane izraze in definicije za kreiranje posameznih elementov.

Začetek vsakega site scripta mora biti v obliki:

{ "$schema": "schema.json", "actions": [ ... <DODAMO SVOJE AKCIJE> ... ], "bindata": { }, "version": 1 };

Če želimo nato našo definicijo nadgraditi z novim seznamom, ki bi ga radi dodali na mesto, dodamo v našo začetno verzijo JSON-a še definicijo našega seznama z vsemi stolpci, pogledi,…

{ "$schema": "schema.json", "actions": [ { "verb": "createSPList", "listName": "Pika članek", "templateType": 100, "subactions": [ { "verb": "setDescription", "description": "Primer za Pika članek" }, { "verb": "addSPField", "fieldType": "Text", "displayName": "Pika članek naslov", "internalName":"PikaNaslovClanka", "isRequired": false, "addToDefaultView": true }, { "verb": "addSPField", "fieldType": "Text", "displayName": "Avtor članka", "internalName": "AvtorClanka", "addToDefaultView": true, "isRequired": true } ] } ], "bindata": { }, "version": 1 }

V našem primeru bomo dodali en seznam, z imenom »Pika članek«, v ta seznam, pa potem še 2 dodatni polji za vnos podatkov.

Implementacija na SharePoint Online

Da bi lahko ustvarili novo mesto na predlogi, ki smo jo sedaj definirali, moramo to shemo še uvoziti v SharePoint Online.

Za uvoz in ustvarjanje novega »Site design« se moramo poslužiti naslednjih PowerShell ukazov, ki so del modula SharePoint Online PowerShell.

$cred=Get-Credential $adminUrl="https://r0b3r70-admin.sharepoint.com" $scriptFile="C:\posts\SPO\Pika-site-script.json" Connect-SPOService $adminUrl -Credential $cred $siteScript = Get-Content $scriptFile -Raw -Encoding UTF8 $spoSiteScript = Add-SPOSiteScript -Title "Pika site script" -Content $siteScript $siteScriptId=$spoSiteScript.Id Add-SPOSiteDesign -SiteScripts $siteScriptId ` -Title "Pika članek site design" ` -Description "Pika članek site design" ` -WebTemplate 64 #64 = Team Site, 68 = Communication Site, 1 = Groupless Team Site

Ko se ukaz uspešno izvrši, lahko iz spustnega seznama izberemo novo predlogo mesta.

Ko se posodobitev mesta izvede se na mestu ustvari seznam s stolpci, kot je bilo zapisano v JSON shemi.

V tem uvodnem članku sem predstavil osnovni primer, kako lahko pripravimo predlogo mesta za SharePoint Online. V naslednji številki Pike bom predstavil tudi katera orodja lahko uporabimo za lažjo pripravo JSON sheme in pa tudi kako lahko pripravimo bolj zahtevne predloge mest s pomočjo Microsoft Azure in Microsoft PowerAutomate.


Potrebuješ pomoč?
Potrebuješ pomoč?