0

OOTB PortalSiteMapProvider を取得して、SharePoint 2010 で指定されたサイト コレクションまたは URL (つまり、現在のサイト コレクションではない) からサイト階層を提供することはできますか? MOSS では、これは、カスタム SiteMapProvider を作成し、サイト コレクションを走査し、ナビゲーション ツリーを手動で構築することによってのみ可能でした。

注: 通常のサイトの寄稿者はファイル システム上のファイルにアクセスできない可能性があるため、静的 XML (.sitemap) ファイルから読み取るカスタム SiteMapProvider を作成する準備はできていません。

ちょっとした背景... 2 つのサイト コレクションを持つ単一の Web アプリケーションがあります。

  • http://intranet/のイントラネット ポータル用に 1 つ(公開が有効)
  • http://intranet/my の個人用サイト用に 1 (発行が有効になっていない)

複数のポータルを容易にする計画はないので、両方のサイト コレクションで一貫したグローバル ナビゲーション バーが必要です。理想的には、メイン ポータル サイトからのサイト階層を個人用サイトに表示したいと考えています。PortalSiteMapProvider.CurrentSiteプロパティを"http ://intranet/my"ではなく"http://intranet/"に設定することは可能ですか?

4

1 に答える 1

0

この動作を実現するために、別のサイトコレクションの階層を移動して(独自のPortalSiteMapProviderを使用して)その構造をXMLドキュメントとして返す独自のWebサービスを作成しました。それから私は明らかに私のグローバルナビゲーションナビゲーションメニューをそれにバインドしました。

私はここからコンセプトを得ました:PortalSiteMapProvider

代わりにHttpHandlerを使用する同様のアプローチがここで説明されています:http://blog.symprogress.com/2011/03/sharepoint2010-custom-navigation-provider-cross-sitecollection/

于 2011-06-06T14:02:22.457 に答える