Scriban テンプレートの使用

概要

SXA Storefront で提供される Scriban テンプレートの概要。

SXA Storefront には、Scriban テンプレートを使用するいくつかのレンダリングが含まれています。Scriban テンプレートには、他の SXA レンダラーでは表現できない高度なロジックを含めることができ、多数のレンダラーを 1 つのテンプレートに置き換えることができます。これにより、バリアントのレンダリングの複雑さが大幅に軽減されます。Scriban テンプレートは、フィールド レンダラー、セクション、タグなどと同様のレンダラーとして使用でき、他のレンダラーと共存できます。それらを使用して、既存のレンダリング バリアントを置き換えることもできます。

Scriban テンプレートの利点は、高速で軽量なスクリプト言語を使用して既存の機能を簡単に拡張できることです。レンダリング バリアントを使用するときに通常行うように Sitecore アイテムを使用して HTML 構造を定義する代わりに、Scriban テンプレートで直接、構造を作成できます。次の画像に示すように、従来のアイテム ツリー レンダリング バリアントでの Sitecore アイテムの構造が、Scriban テンプレートに反映されています。同じ HTML が作成されていますが、HTML をよりきめ細かく制御でき、プログラミング言語の構成要素や、プロパティにアクセスするさまざまな関数、コンテキスト アイテム、カスタム オブジェクトにアクセスできます。

注記

基盤となるテンプレート言語組み込み関数 については、Scriban GitHub repository に一般的なドキュメントが用意されています。

従来のレンダリング バリアントと Scriban テンプレートを示す図

ヒント

[Template] フィールドの下端にカーソルを合わせて、境界線をドラッグすることにより、フィールドを拡張できます。

大まかに言うと、次の画像は、Scriban テンプレートでレンダリング バリアントを使用するときにデータがどのように処理されるかを示しています。

Scriban テンプレートを使用したときのデータの処理方法

次の SXA Storefront レンダリングは、Scriban テンプレートとして使用できます。これらのレンダリングはそれぞれ、CXAObservable を介して通信します。

これらの各レンダリングには非推奨バージョンもあり、下位互換性を提供するために既存のサイトでのみ使用可能であり、Scriban テンプレートの代わりに標準の Razor ベースの MVC ビューと分離コードを使用します。これらのレンダリングはツールボックスに追加または削除できます。これを行うには、/sitecore/Content/Sitecore/Storefront/Presentation/Available Renderings/Commerce に移動して、[コンテンツ] タブの [データ] セクションにある [編集] をクリックします。

注記

Scriban テンプレートを変更する方法のデモについては、Discover Sitecore チャネルの Sitecore Experience Commerce - SXA Storefront ビデオを参照してください。[コンテンツ] タブの [テンプレート] フィールドにある [VariantDetails] セクションで Scriban コードにアクセスします。[テンプレート] フィールドの下の境界線にカーソルを合わせて、境界線の端をドラッグして、フィールドを拡張できます。