1. Scribanテンプレート

Scribanコンテキストに埋め込まれたアイテムとオブジェクト

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SXAは、いくつかのオブジェクトをScribanレンダリング コンテキストに埋め込みます。これらのオブジェクトは、通常のScriban変数と同様に使用できます。このトピックでは、デフォルトの埋め込みアイテムとオブジェクトについて説明します。

メモ

使用可能な埋め込みオブジェクトは、コンポーネントのHTMLおよびコンテンツのレンダリングに関するほとんどの機能をカバーする必要があります。より多くの機能が必要な場合、SXAには2つのパイプラインが付属しており、Scribanコンテキストに追加のオブジェクトを挿入し、アイテム プロパティ リストを拡張できます。

埋め込みアイテム

Sitecoreはアイテム内にコンテンツを保存するため、SXAはScribanランタイム内に複数のコンテンツ アイテムを埋め込みます。これらのアイテムを使用して、フィールドのコンテンツにアクセスしたり、子または親を取得してアイテム構造を走査したりできます。

埋め込みアイテム

種類

価値

i_home

Sitecore.Data.Items.アイテム

レンダリング プロセスが実行されるサイトのホーム ページ アイテム。

i_datasource

Sitecore.Data.Items.アイテム

コンポーネントのデータ ソースとして指定されたアイテム。

i_item

Sitecore.Data.Items.アイテム

レンダリング バリアント コンテキスト内の現在のアイテム。多くの場合、これはi_datasourceと同等です。

ScribanテンプレートがQueryまたはReferenceレンダリング バリアント フィールドに埋め込まれていた場合、i_itemは、他のレンダリング バリアント フィールドがレンダリング プロセスに使用するアイテムとまったく同じになります。

i_site

Sitecore.Data.Items.アイテム

サイトのルート項目。ほとんどの場合、このアイテムはホーム ページの親です。

i_page

Sitecore.Data.Items.アイテム

現在レンダリングされているページを表すアイテム。

Contextオブジェクト

コンテキストオブジェクトを使用すると、より複雑なロジックを実行できます。たとえば、ページが表示される状況に基づいて異なるコンテンツをレンダリングしたり、エディターに追加のデータをレンダリングして訪問者には非表示にしたり、ページの言語に応じて異なるテキストをレンダリングしたりします。

コンテキストオブジェクトを次の表にリストし、表の後で詳しく説明します。

Contextオブジェクト

種類

価値

o_language

言語

現在のページの言語。

o_model

オブジェクト

MVCコントローラーのレンダリングに渡されるモデル

o_geospatial

Sitecore.XA.Foundation.Search.Models.地理空間

地理空間プロパティを持つ現在レンダリングされているアイテムの位置情報。

o_context

Sitecore.XA.Foundation.Abstractions.IContext

現在レンダリングされているページのコンテキスト情報。

o_pagemode

Sitecore.XA.Foundation.Abstractions.IPageMode

現在レンダリングされているページのコンテキスト情報。

o_language

現在のページの言語。

o_model

MVCモデル オブジェクト。このオブジェクトは、使用するコンポーネントによって異なります。レンダリングが必要なビジネス ロジックに基づいて、バックエンド開発者と連携して、事前に計算された値を提供する必要があります。

o_geospatial

地理空間プロパティを持つ現在レンダリングされているアイテムの位置情報。

手記

このオブジェクトにアクセスできるのは、検索結果レンダリング内で地理空間検索を実行する場合のみです。

次の表に、o_geospatialコンテキストオブジェクトの注目すべきプロパティを示します。

プロパティ名

種類

使い

poi_type_id

Sitecore.Data.ID

POIタイプのガイド。

poi_icon

POIアイコンのURL。

緯度

レンダリングされるPOIの緯度。

経度

レンダリングされるPOIの経度。

距離

Double – null許容

POIと検索サービスに提供されたクライアントの位置との間の距離を返します。

単位

Double -許容

キロメートル、マイル。

o_context

コンテキストオブジェクトには、コンポーネントがレンダリングされるリクエストに関する情報が含まれています。ページモード、言語、およびテンプレートの一部を条件付きでレンダリングする可能性のあるその他の有用な情報を含めることができます。

次の表に、o_contextコンテキスト オブジェクトの注目すべきプロパティを示します。

プロパティ名

種類

使い

is_administrator

ブール

現在のユーザーが管理者であるかどうかを示します。

利用者

利用者

要求が実行されるコンテキストのユーザー。

ドメイン

Sitecore.Security.Domains.ドメイン

リクエストが実行されるコンテキストのユーザーのドメイン。

データベース

Sitecore.Data.データベース

要求がデータのソースとなるデータベース。

o_pagemode

pagemodeオブジェクトは、ページがレンダリングされるモードに基づいて条件付きでレンダリングする必要があるコードの表記を短縮するために抽出されたo_contextオブジェクトの一部です。

次の表に、o_pagemodeコンテキストオブジェクトの注目すべきプロパティを示します。

プロパティ名

種類

使い

is_debugging

ブール値

ページがデバッグ モードでレンダリングされることを示します。

is_experience_editor

ブール値

ページがエクスペリエンス エディター内でレンダリングされることを示します。

is_experience_editor_editing

ブール値

ページがエクスペリエンス エディター内で編集モードでレンダリングされることを示します。

is_normal

ブール値

ページが訪問者に対してレンダリングされることを示します。

is_preview

ページがエクスペリエンス エディター内でプレビュー モードでレンダリングされることを示します。

is_simulated_device_previewing

ページがエクスペリエンス エディター内のシミュレートされたプレビュー モードでレンダリングされることを示します。

is_profiling

ページがプロファイリング情報と共にレンダリングされることを示します。

例:

{{ if (o_pagemode.is_experience_editor_editing) }}
  <span>[Click here to edit the component]</span>
{{ else }}
  ... render the component here
{{ end }} 
この記事を改善するための提案がある場合は、 お知らせください!