En el caso que en una biblioteca tengamos varias carpetas y queramos que contextualmente en cada carpeta, nos obligue a crear un tipo de contenido diferente, debemos ejecutar a través de Powershell, el siguiente script, donde $curItem es la carpeta en la que quedamos cambiar el tipo de contenido:
Previamente, hay que ir accediendo al sitio, a la biblioteca y encontrar la carpeta/as en las que queremos hacer esta configuración:
$curItem["ContentTypeId"] = $myCTId
$curItem.SystemUpdate($false)
Previamente, hay que ir accediendo al sitio, a la biblioteca y encontrar la carpeta/as en las que queremos hacer esta configuración:
# Get your site collection first
$site = Get-SPSite -Identity http://mysitecol
#if your list is in the top web:
$web = $site.RootWeb
# or if your list is in a subsite: $web = $site.OpenWeb("/mysubweb")
#then you can get your list:
$list = $web.Lists["my list display name"]
$folderCTName = "Folder"
# your content type id looks like 0x0120......
$myCTId = "<EnteryourContentTypeIDHere>"
#finally you loop through each folder, and if the content type is default folder CT, you replace it by your own content type
for($count = $list.Folders.Count; $count -ge 0; $count--)
{
$curItem = $list.Folders[$count]
if ($curItem.ContentType.Name -eq $folderCTName)
{
$curItem["ContentTypeId"] = $myCTId
$curItem.SystemUpdate($false)
}
}
Comentarios
Publicar un comentario