Forum Discussion
Rod Le Quesne
Jan 10, 2017Copper Contributor
PnP powershell equivant - Hide content type from new menu
Is there a method to hide content type from the 'new' menu on a list in the same way using the UI located at _layouts/15/ChangeContentTypeOrder.aspx. I have tried using following script, issue here is that it total hides the content type in the edit form :-(
$l = Get-PnPList -Identity "lists/MyList"-Web $web
$ctx = Get-pnpContext
$ctx.Load($l.ContentTypes)
$ctx.ExecuteQuery()
foreach ($ct in $l.ContentTypes)
{
$ct.Name
if ($ct.Name -eq 'ContentTypeName1')
{
$ct.Hidden=$true
$ct.Update($false)
}
}
$ctx.ExecuteQuery()
Regards...
2 Replies
Sort By
- avdbergCopper Contributor
You can do that with the following code:
$contentTypeNamesInOrder = "Sub Project"$contentTypes = $projectInformationList.ContentTypes$ctx.Load($contentTypes)$ctx.Load($projectInformationList.RootFolder)$ctx.ExecuteQuery()$ctList = New-Object System.Collections.Generic.List[Microsoft.SharePoint.Client.ContentTypeId]Foreach($ct in $contentTypeNamesInOrder){$ctToInclude = $contentTypes | Where-Object {$_.Name -eq $ct}$ctList.Add($ctToInclude.Id)}#Updating content type order and visibility$projectInformationList.RootFolder.UniqueContentTypeOrder = $ctList$projectInformationList.Update()$projectInformationList.RootFolder.Update()$ctx.ExecuteQuery() - Anonymous
Hi Rod,
you first need to add the new contenttype then change all items to the new contenttype end remove the contenttype.
thought i had some code but could not find it right now.
kr,
Paul