Получить SPWebTemplate от SPWeb - PullRequest
       39

Получить SPWebTemplate от SPWeb

2 голосов
/ 10 февраля 2012

В моем скрипте PowerShell я хочу получить SPWebTemplate, который использовался для создания SPWeb. В экземплярах SPWeb доступны свойства WebTemplate и WebTemplateId, но оба они не идентифицируют SPWebTemplate однозначно.

Например, если SPWebTemplate «STS # 0» использовался для создания SPWeb, WebTemplate будет содержать «STS», а WebTemplateId будет «1».

Теперь

Get-SPWebTemplate | where { $_.ID -eq 1 }

приведет к 3 результатам для каждого установленного языка (STS # 0, STS # 1, STS # 2). Как я могу получить правильное имя SPWebTemplate (STS # 1)?

Заранее спасибо,
Йонас

Ответы [ 2 ]

5 голосов
/ 10 февраля 2012

Попробуйте SPWeb.Configuration .

Это свойство должно быть запущено для наиболее плохо именованных свойств - SharePoint API. Я помню, как пытался использовать WebTemplateId сам, пока не нашел конфигурацию (и я не помню, как я ее в итоге нашел)

1 голос
/ 30 октября 2014

Вы можете попробовать

$web = Get-SPWeb http://site/subsite
Get-SPWebTemplate | where {$_.name -like $web.WebTemplate+"*" } | where {$_.name -like "*"+$web.Configuration }
$web.Dispose()

Но имейте в виду, что некоторые $ web.Configuration могут быть -1.

...