カスタム子ビューの操作

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

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

Sitecore XCでは、カスタムの子ビューを作成して、カタログやSellableアイテム エンティティなど、Commerceエンティティに関連付けられたプロパティを拡張する必要がある場合に、Business Toolsユーザー インターフェイスのページにセクションを追加できるようにすることができます。

カスタム プロパティをSitecoreコンテンツ エディターで利用できるようにしたり、ストアフロント レンダリングで利用できるようにするには、カスタムの子ビューをComposerテンプレートに変換します。

メモ

Sitecore XC Business Toolsでは、すでに公開されているCommerceエンティティに変更することはできません。Commerceエンティティ ビューをカスタマイズする場合は、新しい エンティティ バージョンを作成し、新しいバージョンで関連する変更を行う必要があります。

手記

カスタム カタログ プロパティを検索インデックス (sitecore_web_indexsitecore_master_indexを含む) に追加して、Sitecore検索で検索可能にすることができます。

子ビューをCommerceエンティティに追加する

任意のCommerceエンティティに子ビューを追加して、カスタム プロパティを作成できます。

次に、サンプルHabitat_Masterカタログのプロパティを拡張するために使用されるCustom child viewという名前の子ビューの例を示します。この例では、子ビューでカスタム プロパティ (Custom View Property) を定義して表示しています。

手記

カスタム子ビューを作成すると、そのビューはBusiness Toolsにのみ表示されます。Sitecoreコンテンツ エディターには、追加 するか、コンポーザー テンプレート に変換 しない限り、表示されません。

Example of a custom child view

子ビューを追加するには (たとえば、カタログ エンティティにカスタム プロパティを追加するには):

  1. Merchandisingダッシュボードを開きます。

  2. Catalogsセクションで、カタログをクリックします。

  3. カタログDetailsページのSummaryセクションのドロップダウンメニューで、Add Viewをクリックします。

  4. Add Viewダイアログボックスで、子ビューの内部名と表示名を入力します。

  5. カタログDetailsページで、新しい子ビューのドロップダウン メニューを開き、Add Propertyをクリックします。

  6. Add Propertyダイアログボックスで、新しいプロパティの内部名と表示名を入力します。次に、ドロップダウンメニューで、次のいずれかのデータタイプをクリックします。

    • 日付Timeオフセット

    • 小数

    • 整数

    • ブーリアン

    • リッチテキスト

  7. 新しいプロパティのデータ型に応じて、オプションでプロパティの許容値に対する制約を構成できます。

    • タイプintegerまたはdecimalのプロパティに最大/最小制約を設定するには、ドロップダウン メニューでAdd Min-Max Constraintをクリックします。

    • タイプstringのプロパティに許可される値のセットを指定するには、ドロップダウンメニューでAdd Selection Option Constraintをクリックします。

既存の子ビューをComposerテンプレートに変換する

子ビューをCommerceエンティティに追加してユーザー定義エンティティのプロパティを定義した後、カスタム子ビューをComposerテンプレートに変換して、定義するプロパティを他のCommerceエンティティで使用できるようにすることができます。

既存のカスタム子ビューをComposerテンプレートに変換するには:

  1. ビジネスツールのCommerceアイテムDetailsページにあるカスタム子ビュー セクションのドロップダウン メニューで、Make Templateをクリックします。

  2. Make Templateダイアログ ボックスで、Composerテンプレートの内部名と表示名を指定します。

  3. 左側のナビゲーション ウィンドウで、Composerダッシュボードを開くには、Composerをクリックします。

  4. 新しいComposerテンプレートがTemplatesセクションに表示されていることを確認します。

Composerテンプレートを作成する

Composerテンプレートは、Composerダッシュボードから直接作成できます。

新しいComposerテンプレートを作成するには:

  1. 左側のナビゲーション ウィンドウで、Composerダッシュボードを開くには、Composerをクリックします。

  2. Templatesセクションのドロップダウンメニューで、Create Templateをクリックします。

  3. Create Template diablo」ボックスで、次のフィールドを指定します。

    • Name - Composerテンプレートの内部名

    • Display Name - ComposerダッシュボードのComposerテンプレートの外部名

    • View Name - カスタム子ビューの内部名

    • Display View Name - CommerceアイテムDetailsページの子ビューの外部名

  4. ComposerダッシュボードのTemplatesセクションで、Templatesセクションの新しいComposerテンプレートをクリックします。

  5. ComposerテンプレートのDetailsページで、1つ以上のカスタムプロパティを追加します。

Composerテンプレートから子ビューを追加する

既存のComposerテンプレートからCommerceエンティティに子ビューを追加できます。Commerceエンティティ メニューから子ビューを追加すると、元のComposerテンプレートに影響を与えずに子ビューに変更を加えることができます。

Composerテンプレートからカスタム子ビューを追加するには:

  1. コマース アイテムのDetailsページのSummaryセクションのドロップダウン メニューで、Add View From Templateをクリックします。

  2. Add View From Templateダイアログボックスで、ドロップダウンリストのComposerテンプレートをクリックします。

Composerテンプレートを複数のCommerceエンティティ タイプに適用する

Composerテンプレートは、さまざまな粒度レベルで複数のCommerceエンティティタイプに適用できます。たとえば、特定のタイプのすべてのCommerceエンティティにカスタム子ビューを適用できます。

手記

ComposerダッシュボードのComposerテンプレートから子ビューを追加する場合、Commerceエンティティの子ビューにプロパティを追加または削除することはできません。テンプレート自体を変更する必要があり、それらの変更は子ビューを継承するすべてのCommerceエンティティに適用されます。

カスタム子ビューを特定のタイプのすべてのコマースエンティティに適用するには:

  1. ComposerダッシュボードのTemplatesセクションで、適用するComposerテンプレートをクリックします。

  2. ComposerテンプレートDetailsページで、リンクアイコンをクリックします。

  3. Link To Entitiesダイアログ ボックスで、カスタム子ビューを継承するすべてのエンティティの種類を選択します。

    Displays the Link To Entities dialog box which contains a list of catalog entities that can be selected.
    手記

    Composerテンプレートが次のいずれかのエンティティ タイプにリンクされている場合、Sitecoreコンテンツ エディターには、そのエンティティ タイプのすべてのコンテンツ アイテムに対してComposerテンプレートのビューで定義されたカスタム プロパティが表示されます。

    • Sitecore.Commerce.Plugin.Catalog.SellableItem (英語)

    • Sitecore.Commerce.Plugin.Catalog.category (英語)

    • Sitecore.Commerce.Plugin.Catalog.カタログ

    Composerテンプレートは、1つのカタログ エンティティ タイプ (つまり、カタログ、orカテゴリ、or Sellable商品のいずれか) にのみリンクできます。Composerテンプレートをこれらのエンティティの組み合わせにリンクすることはできません。カタログエンティティタイプごとに異なるComposerテンプレートを作成する必要があります。

Composerテンプレートを特定のSellable商品のサブセットに適用する

カスタムコンポーザーテンプレートは、タグまたは商品定義が一致するSellable商品のサブセットに適用できます。

手記

カスタム プロパティをSitecoreコンテンツ エディターから表示したり、ストアフロントでカスタム プロパティをレンダリングしたりするには、商品定義を使用してComposerテンプレートをSellable商品のサブセットに適用する必要があります。

タグを使用してSellable商品に適用されるComposerテンプレートのカスタム プロパティは、Sitecoreコンテンツ エディターに表示されないため、ストアフロントにレンダリングできません。

カスタム子ビューをSellable商品のサブセットに適用するには:

  1. ComposerダッシュボードのTemplatesセクションで、適用するComposerテンプレートをクリックします。

  2. タグが一致するSellable商品にテンプレートを適用するには、Detailsページでタグアイコンをクリックします。

    手記

    タグの代わりに商品定義を使用して、一致するSellable商品にテンプレートを適用するには、ステップ4に進みます。

  3. Manage Tagsダイアログボックスで、Composerテンプレートに関連付けるタグを入力します。

    手記

    タグ文字列は正確に一致する必要があります。一致するタグを持つすべてのSellable商品は、カスタムの子ビューとそのプロパティを継承します。

  4. または、アイテム定義を使用するには、ComposerテンプレートDetailsページで[+アイコンをクリックします。

  5. 有効なアイテム定義の一覧を表示するには、Associate To Item Definitionsダイアログ ボックスのドロップダウン リストで、カタログをクリックします。 そのカタログに定義されているアイテム定義 が表示されます。

  6. Composerテンプレートに関連付けるすべてのアイテム定義をオンにします。カタログ内の同じ商品定義を持つSellable商品は、カスタムの子ビューを継承します。

    手記

    Composerテンプレートでカタログ エンティティ タイプ (カタログ、カテゴリ、またはSellable商品) のカスタム プロパティが定義されている場合、Commerceデータ テンプレートを更新して 、コンテンツ エディターにカスタムの子ビューを表示する必要があります。

Commerceエンティティからの子ビューの削除

エンティティの詳細ページから直接子ビューを追加した場合 (または、開始点としてCommerceエンティティからComposerテンプレートを選択した場合)、Commerceエンティティ自体から子ビューを削除できます。

手記

最初にComposerテンプレートでカスタム プロパティを定義し、次にComposerダッシュボードからComposerテンプレートをCommerceエンティティに適用した場合は、Composerテンプレート内からCommerceエンティティへの関連付けを削除する必要があります。

Commerceエンティティ (Sellable商品など) から子ビューを削除するには:

  1. ビジネスツールで、Merchandisingダッシュボードを開きます。

  2. Catalogsセクションで、Sellable商品が含まれているカタログ (および該当する場合はカテゴリ) をクリックします。

  3. Sellable Itemsセクションで、Sellable商品をクリックします。

  4. Sellable商品の詳細ページで、削除する子ビューが含まれているセクションで、ドロップダウン メニューでRemove Viewをクリックします。

    手記

    削除したカスタム プロパティがComposerテンプレートを使用してCommerceエンティティに割り当てられていた場合は、ビューを削除した後に コマース キャッシュを更新する 必要があります。

Composerテンプレートからの子ビューの削除

Composerダッシュボードを使用してComposerテンプレートに子ビューを追加した場合、テンプレートと特定のCommerceエンティティとの関連付けを削除できます。または、すべてのCommerceエンティティ タイプで定義するカスタム プロパティを使用する必要がなくなった場合は、Composerテンプレートを完全に削除することもできます。

手記

アイテム定義またはタグを使用して子ビューを割り当てた場合は、個々のアイテム定義またはタグを削除することもできます。

Composerテンプレートから子ビューを削除するには:

  1. ビジネスツールで、Composerダッシュボードを開きます。

  2. Templatesセクションで、削除するプロパティを定義するComposerテンプレートの表示名をクリックします。

    手記

    関連付けられているすべてのCommerceエンティティからComposerテンプレートを削除するには、ドロップダウン メニューでRemoveをクリックします。

  3. 1つ以上の特定のCommerceエンティティ タイプとの関連付けを削除するには、ドロップダウン メニューをクリックし、Link to Entitiesをクリックします。

  4. Link to Entitiesダイアログ ボックスで、Composerテンプレートから関連付けを解除する選択したCommerceエンティティをクリアし、チェック マークをクリックして変更を保存します。

  5. 関連付けられたエンティティを削除した後、SitecoreからCommerceデータ テンプレートを削除して から、Commerceデータ テンプレートを更新して 、デフォルトのCommerceデータ テンプレートを再適用します。

コマース データ テンプレートの更新

Composerテンプレートを作成して、カタログ、カテゴリ、またはSellableアイテム タイプのCommerceエンティティのカスタム プロパティを定義する場合、コンテンツ エディターでデータ テンプレートを更新して、Sitecoreでそのコンテンツ アイテム タイプの新しいプロパティが表示されるようにする必要があります。

手記
  • コンポーザー テンプレートに変更を加えるたびに、Sitecoreで変更を反映するために、コンテンツ エディターでデータ テンプレートを更新する必要があります。

  • Composerテンプレートのプロパティをエンティティで直接変更する場合、それらの変更をコンテンツ エディターで表示するには、コンテンツ エディターでCommerce Cacheを更新する 必要があります。

Composerテンプレートによって定義されたカスタム プロパティを (子ビューから) コンテンツ エディターに表示するには:

  1. Sitecoreスタート画面で、Content Editor

  2. コンテンツ エディターのリボンで、Commerceをクリックします。

  3. Update Data Templates」をクリックします。

    更新が完了すると、テンプレートの影響を受けるコンテンツアイテムにカスタムプロパティが表示されます。

Commerceデータ テンプレートの更新に関する考慮事項

Commerceデータ テンプレートの更新中、テンプレート生成プロセスは、テンプレートを構築するためのベースとして、適切なタイプ (カタログ、カテゴリ、販売可能商品など) の既存のCommerceエンティティをランダムに選択します。ベースとして使用される特定のエンティティに子ビューが含まれている場合、予期しない子ビューが生成されたテンプレートの一部になる可能性があります。これが発生すると、Sitecoreコンテンツ エディターのエンティティ タイプ用に生成されたテンプレート フォルダーに予期しない子ビューが表示されます。

カタログ エンティティ (カタログ、カテゴリ、またはSellable商品) の生成テンプレートに不要なビューが含まれないようにするには、既定のテンプレート ジェネレーター構成 ( /App_Config/Include/Y.Commerce.Engine/Sitecore.Commerce.Engine.TemplateGenerator.configファイル内) を変更して、そのエンティティ タイプのデータ テンプレートを生成するときにベースとして使用するエンティティIDを指定できます。

次に、デフォルトのテンプレートジェネレータ設定の例を示します。

<!-- Defines the catalog item to use for template generation -->      
     <catalogId></catalogId>
<!-- Defines the category item to use for template generation -->
     <categoryId></categoryId>
<!-- Defines the sellable item to use for template generation -->
     <sellableItemId></sellableItemId>
<!-- Defines the bundle to use for template generation -->
     <bundleId></bundleId>
手記

空の値は、テンプレート生成プロセスがエンティティをランダムに選択することを意味します。デフォルトの動作を上書きするには、そのエンティティに必要な基本テンプレートを使用するエンティティIDを指定します。

コマースデータテンプレートの削除

Sitecoreコンテンツ エディターを使用して、Commerceデータ テンプレートを削除します。Commerceデータ テンプレートは、Commerce品目からプロパティを削除する必要がある場合に削除します。

Commerceデータ テンプレートを削除するには:

  1. Sitecoreスタート画面で、Content Editorをクリックします。

  2. コンテンツ エディターのリボンで、Commerceタブをクリックします。

  3. Delete Data Templates」をクリックします。

    データ テンプレートを削除した後、再度更新 して、有効なCommerceテンプレートをCommerceコンテンツ アイテムに再適用できます。

カスタムプロパティの値の編集

子ビューのカスタム・プロパティの値を設定または変更できます。

カスタムプロパティの値を編集するには:

  1. Business Toolsで、適切なエンティティ ビューを参照し、編集するカスタム プロパティが含まれている子ビューのドロップダウン メニューで、Edit viewをクリックします。

  2. Edit Viewダイアログボックスで、プロパティを必要な値に設定します。

    • DateTimeプロパティの種類を設定するには、日付ピッカーを使用します。

    • DecimalPropertyタイプを設定するには、値を10進数形式で入力します。

    • Integerプロパティタイプを設定するには、整数値を入力します。

    • Booleanプロパティ タイプの値をtrueに設定するには、Booleanを選択します。falseに設定するには、チェックボックスを空のままにします。

    • RichText値を設定するには、リッチテキストエディタを使用します。

      大事な

      リッチテキストエディタで、保存する前にSourceオプション(HTMLビュー)を無効にしてください。 Sourceビューを有効にしてリッチテキスト設定を保存すると( Sourceボタンがグレー表示)、設定の変更は保存されません。

      手記

      一部の書式設定オプション (フォントの色や段落の書式設定など) は、リッチ テキスト エディター ウィンドウでのみ表示され、Business Toolsビューに戻ったときにはレンダリングされません。すべての書式設定情報は保持され、Business Toolsビューに表示されているかどうかに関係なく、コンテンツ エディターに渡されます。

  3. チェックマークをクリックして、変更を保存します。

この記事を改善するための提案がある場合は、 お知らせください!