コンテンツトークン
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
コンテンツトークンは テキストや数字の行を再利用できます。例えば価格、著作権表示、バージョン番号、場所などを再利用したい場合に便利です。コンテンツトークンはキーと値を持つコンテンツアイテムで、他の項目のフィールドで参照できます。それらはSXAサイトのDataフォルダに保存されています: sitecore/Content///Data。
コンテンツトークン置換のロジックは、renderFieldパイプラインのRenderContentTokenプロセッサで実装されています。リッチテキスト、シングルラインテキスト、多行テキストフィールドで、$キーとコンテンツトークン名を括弧内で表示することで、コンテンツトークンを参照できます。
コンテンツトークンを挿入すると、キー値とグレーの背景で認識できます。
HTMLでは、いくつかの追加属性が付いたスパンでラップされています。リッチテキストエディタのHTMLでは、以下のようにコンテンツトークンを挿入することが可能です。
Parking
この場合、RenderContentTokenプロセッサは全体スパン要素を、IDでマッチしたコンテンツトークンの関連する値に置き換えます。さらに、リッチテキスト、単行テキスト、多行テキストフィールドの$(キー)としてコンテンツトークンを使うこともできます。このアイテムは以下の検索クエリの結果として取得されます:
ID itemId = Context.Database.DataManager.DataSource.SelectIDs(Templates.ContentToken.Fields.Key, variableKey).FirstOrDefault(); Item item = Context.Database.GetItem(itemId);
このクエリに対して複数の結果がある場合、いずれかの結果が返され、その値はテキストに入力されます。
論理を変えるには、次のことをしなければなりません:
-
renderFieldパイプラインのRenderContentTokenプロセッサを実装するカスタムプロジェクトを作成します。
-
GetTextVariableValue関数を書き直し、コンテンツトークンアイテムマッピングのカスタムロジックを追加してください。
-
dllをウェブサイトのbinフォルダに組み込みます。
-
設定ファイルを修正し、カスタムプロセッサで次のプロセッサを書き換えます:
設定ファイルがshowconfig.aspxページを正しく使っているか必ず確認してください。