Sharepoint: Create a site column for managed metadata with powershell


Wie erstellt man in einer Sharepoint 2016 Site-Collection eine Website-Spalte für „Verwaltete Metadaten“ mit Powershell. Hier in paar Links dazu sowie ein paar Hinweise auf was man achten muss:

  • Der User der das Script ausführt braucht Admin-Recht für den Terminologiespeicher!
  • Damit das erstellte Term-Set für die User dann änderbar ist muss es „IsOpenForTermCreation = $true“ sein und die Spalte selbst muss auch „Open = $true“ sein
  • Damit man die Spalte dann in der verwendeten Liste bzw. Bibliothek sieht, muss die Spalte auch „ShowInListSettings = $true“ haben!
  • Wie man eine Spalte aus einer Liste/Bibliothek löscht die nicht sichtbar ist ist auch ein Link unten

Hier noch ein paar Zeilen aus meinem Script:

#Get a taxonomy session and get termstore
$session = new-object Microsoft.SharePoint.Taxonomy.TaxonomySession($site)
$termStore = $session.TermStores[$field.termStoreName]

$group = $termStore.CreateGroup($termGroupName)
$termstore.CommitAll()

$termSet = $group.CreateTermSet($termSetName)
$termSet.IsOpenForTermCreation="true"
$termstore.CommitAll()

# assing id's to new field
$spField.Sspid = $termSet.TermStore.Id
$spField.TermSetId = $termSet.Id
$spField.Open = $true
$spField.ShowInListSettings = $true

# populate newly created field
$site.RootWeb.Fields.Add($spField)

Links:


Schreibe einen Kommentar Antworten abbrechen