1

PowerShell を使用してサイトに QuickLaunch リンクを追加したいと考えています。

私が現在使用しているスクリプトは次のとおりです。

$web = Get-SPWeb http://sp_3/Deps
$node = New-Object -TypeName Microsoft.SharePoint.Navigation.SPNavigationNode 
    -ArgumentList "LinkTitle", "http://sp_3/Deps/SUP"
$web.Navigation.QuickLaunch.Add($node);
$web.Update()

次のエラーが発生します。

Can not find an overload for the "Add" and the number of arguments: "1."  line: 1 char: 32  
     + $ Web.Navigation.QuickLaunch.Add <<<< ($ node);
     + CategoryInfo: NotSpecified: (:) [], MethodException
     + FullyQualifiedErrorId: MethodCountCouldNotFindBest

私は何を間違っていますか?

4

2 に答える 2

2

ああ! このページには、最も優れたチュートリアルと例があります。これが私のために働いたものです(SP 2010)

$quickLaunch = $currentWeb.navigation.quicklaunch
$libheading = $quickLaunch | where { $_.Title -eq "Libraries" }
$newnode = New-Object Microsoft.SharePoint.Navigation.SPNavigationNode($whattitle, $myurllink, $true)
$libheading.Children.AddAsLast($newnode)
$currentweb.update()
于 2012-11-21T23:13:01.200 に答える
1

メソッドには 2 番目のパラメーターが必要です。新しく追加されたパラメーターをその背後に配置するためSPNavigationNodeCollection.Addの既存のパラメーターです。たとえば、 URLで、またはコレクションを列挙することでSPNavigationNode、1 つを見つけることができます。または、新しいものを前面 ( ) または背面 ( ) に配置します。AddAsFirstAddAsLast

$web.Navigation.QuickLaunch.AddAsLast($node)

更新:サイト グループへのリンクを追加する方法:

$quickLaunch = $web.Navigation.QuickLaunch
# Print the $quickLaunch collection and choose a property
# identifying the best the link group you want. I chose URL.
$sitesUrl = "/sites/team/_layouts/viewlsts.aspx"
$sitesGroup = $quickLaunch | Where-Object { $_.Url -eq $sitesUrl }
$sitesGroup.Children.AddAsLast($node)

--- フェルダ

于 2012-05-11T06:59:07.967 に答える