8

ユーザーがコードを使用してページ エディター モードにあることを検出する方法を知ることはできますか? これは、コンポーネントがあり、ユーザーがページ エディターから参照すると、web_index フォルダーではなく master_index フォルダーが検索されるためです。

4

3 に答える 3

27

で確認してください:if (Sitecore.Context.PageMode.IsPageEditorEditing)

Sitecore 6.6 にも取り組んでおり、Sitecore 7 には依存していません。

Martina Welander によるこの Sitecoreブログ投稿も参照してください。

通常のページ使用かどうかを確認するには: if (Sitecore.Context.PageMode.IsNormal)

プレビュー モードかどうかを確認するには、次を使用します。if (Sitecore.Context.PageMode.IsPreview)

他にも PageMode があります。

  • IsPageEditorClassic
  • IsPageEditorDesigning
  • IsPageEditorEditing
  • IsPageEditorNavigatingなど

興味がある場合は、Reflector または dotPeek でこのクラスを確認できます: Sitecore.KernelアセンブリのSitecore.Context.PageMode 。

于 2013-11-13T19:50:30.057 に答える
2

ページモードをチェックするのではなく、コンテキストデータベース名に便乗したいだけだと思います-

var indexName = Sitecore.Context.Database.Name + "_index";
于 2013-11-15T21:23:38.707 に答える