1

UseFallbackLanguageは検索結果にどのように影響しますか? 次のコードがあります。

<EPiServer:SearchDataSource ID="uiSearchDataSource" runat="server"      
               EnableVisibleInMenu="false" 
               UseFallbackLanguage="true"
               PageLink="<%# PageReference.StartPage %>" 
               LanguageBranches="<%# this.CurrentPage.LanguageBranch %>">
    <SelectParameters>
            <asp:QueryStringParameter Name="SearchQuery" QueryStringField="search" DefaultValue="" />
    </SelectParameters>
</EPiServer:SearchDataSource>

そして、「単語」を検索すると、現在の言語で検索され、各ページのすべての代替言語で検索されるはずです。それは正しいですか?

現在、true または false の値に違いはありません。

4

1 に答える 1

2

編集:

以下の部分は忘れてください。SearchDataSource は Select メソッドを完全にオーバーライドし、FindPagesWithCriteria を使用します。UseFallbackLanguage プロパティは PageDataSource でのみ使用され、継承された SearchDataSource ではまったく効果がありません。

この設定は、マスター言語のフォールバックにのみ影響します。見つかったページが現在の言語で利用できない場合は、ページのマスター言語バージョンが表示されます。

これは、SearchDataSource が継承する PageDataSource の GetChildren で使用されます。

DataFactory.Instance.GetPage(新しい PageReference(pageID), LanguageSelector.AutoDetect(this.UseFallbackLanguage));

また、これを行う方法にもバグがあります。AutoDetect メソッドにはまだバグがあると思います。次のフォーラム投稿を参照してください。

http://world.episerver.com/Modules/Forum/Pages/Thread.aspx?id=35269&epslanguage=en

于 2011-11-15T15:31:49.733 に答える