2011-12-14 9 views
4

私はsitecoreを学習しています。選択した言語に応じてフラッシュビデオファイルをスワップします。 - sitecore

私は現在選択されている言語に応じて2つの言語を交換するフラッシュビデオをレンダリングしたいと考えています。

例: 英語を選択すると動画の英語版を表示し、フランス語を選択した場合は動画のフランス語版をレンダリングする必要があります。両方のバージョンのFlashファイルがあります。

どのように私はxsltまたはJSを使用してこれを達成できますか?どんな助けもありがとうございます。

ありがとうございます。

答えて

1

xsltヘルパ関数sc:language()を使用すると、ページの現在の言語を取得できます。

ラフ例:

<xsl:choose> 
    <xsl:when test="sc:language() = 'en'"> 
    [SHOW FLASH for EN] 
    </xsl:when> 
    <xsl:otherwise> 
    [SHOW DEFAULT FLASH] 
    </xsl:otherwise> 
</xsl:choose> 

・ホープ、このことができます:)

+0

返信ありがとうございました。 を試してみてください。うまく動作します:) –

+0

ああそう..あまりにも動作します..常にXSLTの上部に隠れる変数を忘れています:) –

+0

@ NSA、スティーブンの答えが役に立つなら、それを受け入れることを検討してください。それは人々にあなたの将来の質問にもっと敏感になるもの); –

1

のではなく、コードを介してこれを実現する、フィールドからあなたのフラッシュファイルへの参照を引き出すためのより良い解決策になるとSitecoreのアイテム。これは、ユーザーが表示しているページの現在のアイテムにあるか、サイト全体でこれを必要としている場合、Flashビデオを表示するサブレイアウトで参照されるアイテムにある可能性があります。

あなたのコードは単純なままであり、他の言語にも拡張する必要がある場合は、コードを変更する必要はありません。別のフラッシュファイルを指し示すアイテムの新しい翻訳を作成するだけです。

+0

私はこの解決策が好きです。 Sitecoreのアイテムは、さまざまな言語で複数のバージョンをサポートするように設計されています。 1行のコードを書く必要はありません。さらにコードの保守性を向上させるためには、もう1つの言語をサポートする必要があり、すべてのレンダリングを実行し、言語のための新しいスイッチを追加する必要があります。これは痛いでしょう。同時に、数回クリックするだけで新しい言語バージョンを追加することができます。 –

関連する問題