2012-01-25 15 views
0

私はサイトテンプレートからサイトを作成しようとしていますが、適切なサイトテンプレートを取得できないようです。実際、私はどんなサイトのテンプレートも手に入れられないようです。私はそれらがソリューションギャラリーにリストされているのを見ることができるので、テンプレートがインストールされていることを知っていて、それらはすべてアクティブになっています。GetAvailableWebTemplatesは何も返しません

ive私は試してみることができますが、私の "テンプレート"変数は空を返しますすべてを試してみました。

foreach (SPLanguage lang in web.RegionalSettings.InstalledLanguages) 
{ 
    foreach (SPWebTemplate template in web.Site.GetWebTemplates((uint)lang.LCID)) 
    { 
     if (template.IsCustomTemplate) 
     { 
      templates.Add(template.Title, template); 
     } 
    } 
    foreach (SPWebTemplate template in web.Site.GetCustomWebTemplates((uint)lang.LCID)) 
    { 
     if (template.IsCustomTemplate && !templates.ContainsKey(template.Title)) 
     { 
      templates.Add(template.Title, template); 
     } 
    } 
    foreach (SPWebTemplate template in web.GetAvailableWebTemplates((uint)lang.LCID, true)) 
    { 
     if (template.IsCustomTemplate && !templates.ContainsKey(template.Title)) 
     { 
      templates.Add(template.Title, template); 
     } 
    } 
    foreach (SPWebTemplate template in web.GetAvailableCrossLanguageWebTemplates()) 
    { 
     if (template.IsCustomTemplate && !templates.ContainsKey(template.Title)) 
     { 
      templates.Add(template.Title, template); 
     } 
    } 
} 

答えて

1

多分IsCustomTemplateは私が(PowerShellの)これを試してみてくださいあなたの友人

ではありませんが起動し-SPAssignment -Global $ =のGet-SPWeb -Identity「のhttp W:// ....... .....」 $ ILS = $ w.RegionalSettings.InstalledLanguages

$ils | %{ 

    $lcid = $_.LCID 
    $lcid 
    $wts=$w.GetAvailableWebTemplates(1031, $true) 
    $wts = $wts | ?{ -not $_.IsRootWebOnly} 
    $wts | ft -Property Lcid,Name,Title,DisplayCategory 
} 


$w=$null 
Stop-SPAssignment -Global 

フローリ