カタログ アイテム テンプレートへの新しいフィールドの追加

概要

カタログ スキーマを拡張するか、カタログ アイテム テンプレートを拡張することにより、カタログ内の Commerce アイテムにフィールドを追加できます。このトピックでは、コンテンツ エディターでカタログ アイテム テンプレートを変更して、カタログ内の商品にフィールドを追加する方法について説明します。

次のようにして、カタログ内のカテゴリー、バンドル、バリアント、商品などの Commerce アイテムにフィールドを追加できます。

  • テンプレートを作成するために Business Tools で コンポーザー機能を使用して、カタログ スキーマを拡張する。その後、販売促進ツールを使用して新しいフィールドを編集できます。ただし、コンテンツ エディターまたはエクスペリエンス エディターでは、これらのフィールドは読み取り専用です。カタログ スキーマを拡張すると、追加した値は、商品が関連付けられているすべての場所で共有されます。詳細については、Commerce アイテムへのプロパティの追加に関するページを参照してください。

    注記

    カタログ スキーマをプログラムで拡張する方法については、ナレッジ ベースを参照してください。

  • テンプレート マネージャーを使用してカタログ アイテム テンプレートを拡張する。販売促進ツールでこれらの新しいフィールドを編集することはできませんが、コンテンツ エディターとエクスペリエンス エディターで編集することはできます。カタログ アイテム テンプレートを拡張する場合、追加する値は共有されないため、商品が関連付けられているすべての場所で設定する必要があります。

コンテンツ エディターに表示されるカタログ アイテム フィールドの例。

カタログ アイテム テンプレートにフィールドを追加するには、テナントのスキャフォールディング中に Commerce Foundation によって作成される /sitecore/Templates/Project/Sitecore/Commerce Product テンプレートを変更します。デフォルトでは、Commerce テナントごとに 1 つのテンプレートがあり、そのテナントのすべてのサイト間で共有されます。このテンプレートは、データ プロバイダーで提供されているものを含む、多数の基本的な Commerce 固有のテンプレートを継承しています。このテンプレートは必要に応じて変更できます。

重要

データ プロバイダーで CE Connect の一部として提供されている /sitecore/Templates/Commerce/Catalog/Commerce Product テンプレートは変更しないでください。

Sitecore 固有のすべてのテンプレート フィールドと同様に、データはカタログ内の ExternalSettingsComponent リポジトリに保存されます。ただし、Commerce Business Tools でデータを編集または表示することはできません。

注記

ルート テナント フォルダーが乱雑にならないように、他のテンプレートのセクションを表すサブフォルダーに新しいテンプレートを保存します。

追加のフィールドを持つセクションを追加するには、次の手順に従います。

  1. sitecore\Templates\Project\<tenant> に移動してテナントを右クリックし、[挿入]、[テンプレート フォルダー] をクリックして、[メッセージ] ダイアログ ボックスでフォルダーの名前 (例: カタログ アイテム セクション テンプレート) を入力し、[OK] をクリックします。

  2. 新しく作成したフォルダーを右クリックし、[挿入]、[新しいテンプレート] をクリックして、[名前を選択] ダイアログ ボックスで新しいテンプレートの名前 (例: 商品メディア アセット) を入力します。[次へ] をクリックし、[次へ] をもう一度クリックして、[閉じる] をクリックします。

  3. [ビルダー] タブをクリックし、最初のフィールドをクリックして、新しいセクションの名前 (例: メディア マテリアル) を入力します。

  4. [新しいフィールドを追加] ボックスをクリックして新しいフィールドの名前 (例: ビデオ) を入力し、タイプ リストからアイテム タイプ (例: ファイル) を選択します。

  5. [新しいフィールドを追加] ボックスをクリックして新しいフィールドの名前 (例: 画像) を入力し、タイプ リストからアイテム タイプ (例: 画像) を選択します。

    新しいフィールドが表示されている [ビルダー] タブ。
  6. リボンの [保存] をクリックします。

  7. コンテンツ エディターで sitecore/Templates/Commerce/Catalog に移動し、新しいセクションとフィールドを追加するテンプレート (例: Commerce 商品) を選択します。

    注記

    テナント ベースの Commerce 商品テンプレートに新しいベース テンプレートを追加すると、変更はテナントの下のサイトにのみ影響を与えます。変更がすべてのテナントとサイトに影響を与えるようにするには、CE Connect で提供される Commerce 商品テンプレートに新しいベース テンプレートを追加する必要があります。

  8. [コンテンツ] タブの [データ] セクションにある [ベース テンプレート] リストで、Templates\Project\<tenant>\<Catalog Item Section Templates> に移動し、新しく作成したテンプレート [商品メディア アセット] をダブルクリックして、[選択済み] リストに移動します。

    Commerce 商品テンプレートの拡張
  9. リボンの [保存] をクリックします。

たとえば、商品が 2 つのカテゴリーにある場合、両方のカテゴリーでこの商品の新しいフィールドに値を追加する必要があります。たとえば、 StudioX オーバーザイヤー ワイヤレス ヘッドフォン商品が [オーディオ] カテゴリーと [おすすめ] カテゴリーの両方にあり、[オーディオ] カテゴリーから新しいフィールドに値を追加しても、これらの値は、[おすすめ] カテゴリーの StudioX オーバーザイヤー ワイヤレス ヘッドフォン商品に自動的には引き継がれません。

新しいフィールドに値を追加するには、次の手順に従います。

  1. コンテンツ エディターで、たとえば sitecore/Content/<tenant>/<site>/Home/Catalogs/Habitat_Master/Departments/Audio/ に移動し、[StudioX オーバーザイヤー ワイヤレス ヘッドフォン] などをクリックします。

    新しく作成したフィールドへの値の追加
  2. [メディア マテリアル] セクションの [ビデオ] フィールドをクリックし、[ファイルを開く] をクリックして、ビデオ ファイルをクリックします。

  3. [画像] フィールドで [参照] をクリックし、画像を選択します。

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

    注記

    コンテンツの保存後、データ プロバイダーによって Content Management (CM) インスタンスと Content Delivery (CD) インスタンスの両方で同じコンテンツがパブリッシュされるため、コンテンツをパブリッシュする必要はありません。

ストアフロントで変更をレンダリングするには、次の手順に従います。

  1. コンテンツ エディターで /sitecore/Content/<tenant>/<site>/Presentation/Rendering Variants/Page Content に移動し、[ページ コンテンツ] を右クリックして、[挿入]、[バリアント 定義] をクリックします。次に、[メッセージ] ダイアログ ボックスで名前 (例: マテリアル) を入力し、[OK] をクリックします。

  2. 新しく作成したバリアント定義を右クリックし、[挿入]、[レスポンシブ画像] をクリックして、名前を入力し、[OK] をクリックします。次に、リボン メニューの [保存] をクリックします。

  3. レスポンシブ画像サブアイテムを選択し、[コンテンツ] タブで [フィールド] 名の値を "レスポンシブ画像" から "画像" (作成した新しい画像フィールドの名前) に変更し、[保存] をクリックします。

  4. コンテンツ エディターで、/sitecore/Content/<tenant>/<site>/Presentation/Partial Designs に移動します。

  5. [デフォルトのメイン商品ページ コンテンツ] を右クリックし、[エクスペリエンス エディター] をクリックします。

  6. エクスペリエンス エディターのツールボックスにある [ページ コンテンツ] セクションで、[ページ コンテンツ] レンダリングをクリックしてページにドラッグします。

  7. [ページ コンテンツ] ツールバーの [バリアント] リストで、[マテリアル] バリアントをクリックします。

    ページ コンテンツ ツールバーの [マテリアル] バリアント。
  8. リボンの [保存] をクリックします。

  9. 変更をパブリッシュします。