Scriban文脈における埋め込みアイテムやオブジェクト
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SXAは複数のオブジェクトをScribanレンダリングコンテキストに埋め込みます。これらのオブジェクトは通常のScriban変数と同様に使用できます。このトピックでは、デフォルトの埋め込みアイテムやオブジェクトについて説明します。
!注利用可能な埋め込みオブジェクトは、コンポーネントHTMLやコンテンツのレンダリング機能の大部分をカバーしているはずです。より多くの機能が必要な場合は、SXAには2つのパイプラインが付属しており、Scribanコンテキストに追加オブジェクトを注入したり、アイテムプロパティリストを拡張したりできます。
埋め込み項目
Sitecoreはコンテンツをアイテム内に保存するため、SXAはScribanランタイム内に複数のコンテンツアイテムを埋め込みます。それらのアイテムを使ってフィールドの内容にアクセスしたり、子項目や親アイテムを取り出してアイテム構造をトラバースできます。
埋め込み項目
種類
価値
i_home
Sitecore。データ。アイテム。アイテム
レンダリングプロセスが行われるサイトのホームページ項目。
i_datasource
Sitecore。データ。アイテム。アイテム
コンポーネントのデータソースとして指定されたアイテムです。
i_item
Sitecore。データ。アイテム。アイテム
レンダリングバリアントの文脈内の現在の項目です。多くの場合、これは i_datasourceと同等です。
もしあなたのScribanテンプレートが Query や Reference レンダリングバリアントフィールドに埋め込まれていた場合、 i_item 他のレンダリングバリアントフィールドがレンダリングプロセスに使うまさにそのアイテムになります。
i_site
Sitecore。データ。アイテム。アイテム
あなたのサイトのルート項目。ほとんどの場合、この項目はホームページの親項目です。
i_page
Sitecore。データ。アイテム。アイテム
現在レンダリングされているページを表すアイテムです。
コンテキストオブジェクト
コンテキストオブジェクトはより複雑な論理を実行できるようにします。例えば、ページが閲覧される状況に応じて異なるコンテンツをレンダリングしたり、編集者向けに追加データを表示し、訪問者には隠したり、ページの言語に応じて異なるテキストをレンダリングしたりします。
コンテキストオブジェクトは以下の表に記載されており、表の後で詳細に説明します。
コンテキストオブジェクト
種類
価値
o_language
言語
現在のページにある言葉遣い。
o_model
目的
MVCコントローラーレンダリングに渡されるモデル
o_geospatial
Sitecore。XA。Foundation。Search。モデル。地理空間
現在レンダリングされているアイテムの位置情報と地理空間的プロパティ。
o_context
Sitecore。XA。Foundation。Abstracs.IContext。
現在レンダリングされているページのコンテキスト情報。
o_pagemode
Sitecore。XA。Foundation。Abstractions.IPageMode
現在レンダリングされているページのコンテキスト情報。
o_language
現在のページにある言葉遣い。
o_model
MVCモデルオブジェクト。このオブジェクトは使用するコンポーネントによって異なります。レンダリングに必要なビジネスロジックに基づいて、バックエンド開発者と連携してあらかじめ計算された値を提供する必要があります。
o_geospatial
現在レンダリングされているアイテムの位置情報と地理空間的プロパティ。
!注このオブジェクトはSearch Resultsレンダリング内で地理空間検索を行う場合にのみアクセス可能です。
以下の表は、o_geospatialコンテキストオブジェクトの注目すべきプロパティを一覧にしています。
物件名
種類
使用例
poi_type_id
Sitecore。データ。ID
POIタイプのガイドです。
poi_icon
ストリング
POIアイコンのURLです。
緯度
ダブル
レンダリングされるPOIの緯度。
経度
ダブル
レンダリングされるPOIの経度。
距離
ダブル – nullable
POIとクライアントの位置と検索サービスに提供された距離を返します。
部隊
ダブル - nullable
キロメートル、マイル。
o_context
コンテキストオブジェクトには、そのコンポーネントがレンダリングされるリクエストに関する情報が含まれています。ページモード、言語、テンプレートの一部を条件付きでレンダリングしたい他の有用な情報を含めることができます。
以下の表は、o_contextコンテキストオブジェクトの注目すべきプロパティを一覧にしています。
物件名
種類
使用例
is_administrator
ブール
現在のユーザーが管理者であるかどうかを示します。
ユーザー
ユーザー
リクエストが実行されるユーザーのコンテキスト。
ドメイン
Sitecore。セキュリティ.ドメイン.ドメイン
リクエストが実行されるユーザーのドメイン。
データベース
Sitecore。データ。データベース
リクエストがデータの元となるデータベース。
o_pagemode
ページモードオブジェクトは、ページがどのモードでレンダリングされているかに応じて条件付きでレンダリングが必要なコードの表記を短縮するために抽出されたo_contextオブジェクトの一部です。
以下の表はo_pagemodeコンテキストオブジェクトの注目すべき特性を示しています。
物件名
種類
使用例
is_debugging
ブール
ページがデバッグモードでレンダリングされていることを示します。
is_experience_editor
ブール
ページがエクスペリエンスエディター内でレンダリングされていることを示します。
is_experience_editor_editing
ブール
ページがExperience Editorの編集モードでレンダリングされていることを示します。
is_normal
ブール
ページが訪問者向けにレンダリングされていることを示します。
is_preview
プレビューモードでエクスペリエンスエディター内でページがレンダリングされていることを示します。
is_simulated_device_previewing
ページがExperience Editorのシミュレーションプレビューモードでレンダリングされていることを示します。
is_profiling
ページがプロファイリング情報で表示されていることを示します。
例:
{{ if (o_pagemode.is_experience_editor_editing) }} Click here to edit the component {{ else }} ... render the component here {{ end }}