チュートリアル: カスタマイズされた Commerce エンティティのダイレクト ナビゲーションの有効化

Current version: 10.1

Sitecore XC Business Tools では、コンポーザー機能を使用して、販売可能なアイテムに保存されている情報を拡張およびカスタマイズできます。カスタマイズされたエンティティごとに、Commerce Engine のデータと一致するテンプレートが Sitecore で生成されます。

デフォルトでは、データ プロバイダーによってカタログ アイテムの公開時に使用される、カタログで設定できる 5 つの Commerce テンプレート (Commerce カテゴリー、Commerce 商品、Commerce 商品バリアント、Commerce バンドル、Commerce 動的バンドル) があります。カスタマイズされた Commerce エンティティのダイレクト ナビゲーションを有効にするには、最初に既存のエンティティ定義を拡張してから、カスタム ページ デザインに関連付けます。

コンポーザーを使用して Commerce エンティティを作成すると、Sitecore で対応する 2 つのテンプレートが作成されます。このチュートリアルでのテンプレートは次のとおりです。

  • Headphones

  • HeadphonesVariant

このチュートリアルを完了すると、[オーディオ] 部門のすべてのヘッドフォン (StudioX オーバーザイヤー ワイヤレス ヘッドフォンを含む) を、カスタマイズされたテンプレート (3 つの新しいプロパティを含む) に関連付けることができます。ダイレクト ナビゲーションを有効にした後は、エクスペリエンス エディターの任意のヘッドフォンをコンテンツ エディターから直接開くことができます。

このチュートリアルでは、次の方法について説明します。

注記

このチュートリアルでは、Storefront サイト テンプレートと Habitat カタログを使用してカスタム Commerce エンティティのダイレクト ナビゲーションを有効にする方法について説明します。Habitat カタログがインストールされており、手順を正しい順序で完了することを前提としています。ただし、このチュートリアルの内容は、SXA Storefront なしで Sitecore Commerce を使用する場合にも適用されます。

[ヘッドフォン] カテゴリーのテンプレート定義の拡張

このチュートリアルのコンテキストでは、カスタマイズされたコンポーザー テンプレートを使用して販売可能なアイテムにダイレクト ナビゲーションを適用するには、最初に新しいフィールドを追加してテンプレート定義を拡張します。

[ヘッドフォン] カテゴリーのテンプレート定義の拡張するには、次の手順に従います。

  1. Sitecore スタート画面で [Business Tools]、[販売促進] をクリックし、[カタログ] セクションで [Habitat_Master] をクリックします。

  2. [カテゴリー] セクションで [部門] をクリックし、[オーディオ] をクリックします。

  3. 販売可能なアイテムのリストで、[StudioX オーバーザイヤー ワイヤレス ヘッドフォン] をクリックします。

  4. 新しいバージョンを作成するには、[エンティティ バージョン] セクションで [エンティティ バージョンを追加] (+) をクリックし、エンティティ バージョンを追加することを確認します。

  5. 新しいエンティティ バージョンをクリックして選択し、[サマリー] セクションのドロップダウン リストで、[ビューを追加] をクリックします。

  6. [ビューを追加] ダイアログ ボックスで、[名前] フィールドと [表示名] フィールドの両方に「ヘッドフォン」と入力し、変更を確定します。

  7. [ヘッドフォン] セクションのドロップダウン リストで、[プロパティを追加] をクリックし、[プロパティを追加] ダイアログ ボックスで、[名前] フィールドと [表示名] フィールドの両方に「タイプ」と入力して、[文字列] のプロパティ タイプを割り当て、変更を確定します。

  8. 手順 8 を繰り返して、次の 2 つのプロパティを追加します。

    名前

    表示名

    プロパティ

    NoiseCancelling

    ノイズ キャンセリング

    ブール値

    IncludesMicrophone

    組み込みマイク

    ブール値

  9. [ヘッドフォン] セクションのドロップダウン リストで、[選択オプション制約を追加] をクリックし、次の図に示す制約を定義して、変更を受け入れます。

  10. [ヘッドフォン] セクションのドロップダウン リストで、[ビューを編集] をクリックし、[ヘッドフォン] セクションに表示するデフォルトのプロパティを指定して、変更を確定します。

  11. [ヘッドフォン] セクションのドロップダウン リストで、[テンプレートを作成] をクリックし、[テンプレートを作成] ダイアログ ボックスで、[名前] フィールドと [表示名] フィールドに「ヘッドフォン テンプレート」と入力して、変更を確定します。

カスタム テンプレートの割り当て

すべてのヘッドフォンで新しいフィールドを表示するには、作成したカスタム テンプレートをアイテム定義に割り当てる必要があります。

カスタム テンプレートを割り当てるには、次の手順に従います。

  1. Business Tools のダッシュボードで、[コンポーザー] をクリックします。

    [テンプレート] セクションに、作成したカスタム テンプレート "ヘッドフォン テンプレート" が表示されています。

  2. [テンプレート] セクションのドロップダウン リストで、[アイテム定義に関連付け] をクリックします。

  3. [アイテム定義に関連付け] ダイアログ ボックスの [カタログ] リストで、[Habitat_Master] をクリックし、変更を確定します。

  4. [ヘッドフォン] チェック ボックスをオンにし、変更を確定します。

ヘッドフォン テンプレートの承認とパブリッシュ

ストアフロントで新しいプロパティを表示するには、エンティティ アイテムの更新バージョンを承認してパブリッシュする必要があります。

エンティティ アイテムを承認してパブリッシュするには、次の手順に従います。

  1. Business Tools で、[販売促進] をクリックします。

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

  3. [カテゴリー] セクションで [部門] をクリックし、[オーディオ] をクリックします。

  4. 商品ページを開くには、販売可能なアイテムのリストで、[StudioX オーバーザイヤー ワイヤレス ヘッドフォン] をクリックします。

  5. [サマリー] セクションのドロップダウン リストで、[次のワークフロー状態へ進める] をクリックし、[コマンド] ドロップダウン リストで [送信] をクリックして、変更を確定します。

  6. ワークフローを完了するには、[サマリー] セクションのドロップダウン リストで、[次のワークフロー状態へ進める] をクリックし、[コマンド] ドロップダウン リストで [承認] をクリックして、変更を確定します。

  7. Sitecore でテンプレートを更新し、コンテンツ エディターで変更を確認するには、Sitecore スタート画面で [コンテンツ エディター] をクリックします。

  8. リボンの [Commerce] タブで、[データ テンプレートを更新] をクリックします。

    この手順では、前の手順で定義した新しい定義を使用してテンプレートを生成し、新しいプロパティを使用できるようにします。コンポーザーを使用してフィールドまたはテンプレートを削除した場合は、データ テンプレートを削除してから更新して、変更を確認する必要があります。

  9. [Commerce] タブで、[Commerce キャッシュを更新] をクリックします。

    行った変更を確認するには、sitecore/Content/Sitecore/Storefront/Home/Catalogs/Habitat_Master/Departments/Audio に移動し、[ノイズ キャンセリング オーバーザイヤー ワイヤレス ヘッドフォン] をクリックします。

エンティティ タイプの新しいフィールドによるカタログ テンプレートの拡張

エンティティ タイプの新しいフィールドでカタログ テンプレートを拡張するには、次の手順に従います。

  1. コンテンツ ツリーで sitecore/Templates/Commerce/Catalog に移動し、[Commerce カタログ] をクリックします。

  2. [ビルダー] タブの [テンプレート上書き] セクションで、[新しいフィールドを追加する] をクリックします。

  3. カスタム テンプレートのフィールド名 (HeadphonesTemplate) を定義し、このセクションの他のテンプレートと同じプロパティを指定して、[保存] をクリックします。

    これにより、[テンプレート上書き] セクション (sitecore/Content/ Sitecore/Storefront/Home/Catalogs/Habitat_Master) に新しいフィールドが追加されます。

エンティティ タイプのカスタム ページの作成

エンティティ タイプのカスタム ページを作成するには、次の手順に従います。

  1. テナント レベルで新しいページ アイテム テンプレートを作成するには、コンテンツ ツリーで sitecore/Templates/Project/Sitecore に移動し、[Commerce 商品] テンプレートを右クリックして、[複製] をクリックします。

  2. [メッセージ] ダイアログ ボックスで「ヘッドフォン商品」と入力し、[OK] をクリックします。

  3. [ヘッドフォン商品] を選択した状態で、[コンテンツ] タブの [データ] セクションで、[ベース テンプレート] リストから [選択済み] リストに [ヘッドフォン] テンプレート (Templates\Commerce\Catalog Generated) を追加します。

  4. [選択済み] リストで [Commerce 商品] テンプレートをダブルクリックして、[選択済み] リストから移動し、上/下矢印を使用して、選択したテンプレートの順序を変更します。この時点で、[選択済み] テンプレート リストは次のようになります。

  5. リボンの [保存] をクリックし、[OK] をクリックして、変更を確定します。

  6. sitecore/Content/Sitecore/Storefront/Home/Catalogs に移動して [Habitat_Master] をクリックし、[テンプレート上書き] セクションの [HeadphonesTemplate] フィールドで、[ヘッドフォン商品] (Templates\Project\Sitecore) をクリックし、リボンの [保存] をクリックします。

  7. リボンの [Commerce] タブで、[Commerce キャッシュを更新] をクリックします。

カスタム ページ設定へのカスタム アイテム テンプレートの関連付け

次に、カスタム ページ デザインにカスタム テンプレート "ヘッドフォン" を関連付ける必要があります。

カスタム ページ設定にカスタム アイテム テンプレートを関連付けるには、次の手順に従います。

  1. コンテンツ ツリーで、sitecore/Content/Sitecore/Storefront/Presentation/Page Designs に移動します。

  2. [Commerce 商品ページ] を右クリックし、[複製] をクリックして、[メッセージ] ダイアログ ボックスの [このページの新しい名前を入力してください] フィールドに、「ヘッドフォン ページ デザイン」と入力し、[OK] をクリックします。

  3. コンテンツ ツリーで [ページ デザイン] (sitecore/Content/Sitecore/Storefront/Presentation) をクリックし、[コンテンツ] タブの [デザイン変更] セクションで、[ヘッドフォン商品] テンプレートを [ヘッドフォン ページ デザイン] にマップします。

  4. リボンの [保存] をクリックします。

    [StudioX オーバーザイヤー ワイヤレス ヘッドフォン] を選択すると、[レンダリング情報] セクションで、この販売可能なアイテムが新しいテンプレートにリンクされていることを確認できます。

    sitecore/Content/Sitecore/Storefront/Home/Catalogs/Habitat_Master/Departments/Audio に移動し、[StudioX オーバーザイヤー ワイヤレス ヘッドフォン] を右クリックすると、このページをエクスペリエンス エディターで開くことができます。

    重要

    カタログ アイテムを直接開くか、またはカタログ アイテムに移動した場合、エクスペリエンス エディターでレイアウトとコンポーネントを編集することはできません (ただし、一部のテキストは編集できます)。コンポーネントを編集するには、[コンテンツ エディター] で sitecore/Content/Sitecore/Storefront/Presentation/Partial Designs/Default Main Product Page Content に移動します。

Do you have some feedback for us?

If you have suggestions for improving this article,