---
title: "コマースのテナントおよびサイトの足場をカスタマイズする"
slug: "customize-commerce-tenant-and-site-scaffolding"
abstract: "カスタムアイテムを用いた商業スキャフォールディングプランの作成と展開方法。"
---
# コマースのテナントおよびサイトの足場をカスタマイズする

テナントやサイトのスキャフォールディング用に [提供されたテンプレートやスクリプト](https://doc.sitecore.com/xp/ja/developers/101/sitecore-experience-commerce/commerce-tenant-and-site-scaffolding.html "Commerce tenant and site scaffolding") を追加・修正することができます。これにより、例えばテナントやサイトを作成する際に、新しいモジュールを選択するだけで自動的に新しいページを追加したり、新しいスクリプトを実行したりすることができます。同じ更新は、新しいモジュールをテナントやサイトに追加することで既存サイトにも行えます。

## 足場計画の管理

スキャフォールディング計画は**PowerShellスクリプト結果** ダイアログボックスのコマンドで管理します。

足場計画の管理方法:

1.  コンテンツエディターで、更新したい足場計画に行きます。例えば、Storefrontコンポーネントの足場計画を変更するには、*/sitecore/System/Settings/Feature/Commerce Experience Accelerator/Storefront Components/Storefront Components Scaffolding Plan*に行ってください。
    
2.  足場設計図を右クリックし、「 **スクリプト」→「足場計画を編集**」をクリックします。
    
    プランで管理される項目は**PowerShellスクリプト結果** ダイアログボックスに表示されます。
    
    ![Powershell Script Results dialog box showing available commands.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/PowershellScriptScaffolding.png)
    
3.  足場計画エディタ(**PowerShellスクリプト結果** ダイアログボックス)では、以下のいずれかのコマンドを使用します。
    
    -   **View** - フィールドおよび関連する値を表示するため。以下の例は、Habitat Catalog Scaffolding Planのカタログ構成ソースアイテムを示しています。 **参照値** 列は分岐テンプレートノード下の元のフィールド値を示します。 **動的価値** 列は参照値のトークン化された形を示します。トークン化は相対的なリンクや値を解決するために使われます。
        
        ![Powershell Script Results](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/ScaffoldingScriptResults.png)
        
    -   **Add** - 新しいスナップショットアイテムを追加する。ソースアイテム(ブランチテンプレート内のアイテム)と参照アイテム(サイト内の対応するアイテム)を定義する必要があります。例えば、「 **追加** 」を使って新しいページを足場に追加します。 **「追加**」をクリックすると、ソースと参照項目を指定するほか、標準フィールドを含めるか、スナップショットからどのフィールドを含めるか・除外するかを指定するよう促されます。
        
    -   **Remove** - スナップショット項目を削除すること。
        
    -   **Update Item** - 既存のスナップショット項目のフィールドおよび関連値を更新するためです。例えば、ログインページ(参照項目)を変更し、プラン(ソース項目)で新しいバージョンに置き換えたい場合は、**Update item**を使用します。
        
    -   **Update Plan** - 既存のプランに含まれる項目を更新すること。 **「プランを更新**」をクリックすると、プランを更新したいテナントまたはサイトを選択するよう促されます。
        
    -   **Deploy Plan** - 計画内の項目を実行すること、つまり新しいサイトに追加したり、既に存在する場合は置き換えることを意味します。 **「Deploy Plan**」をクリックすると、プランを展開したいテナントまたはサイトを選択するよう促されます。
        

## サイトの足場計画に新しいページを追加

この手順は、サイトの足場計画に新しいページを追加する例を提供し、StorefrontサイトテンプレートとHabitatカタログを使用します。

サイトの足場計画に新しいページを追加するには:

1.  コンテンツエディターで*sitecore/Content//Storefront/Home/Landing Pages*に行き、ランディングページを右クリックして挿入、**テンプレートから、*/sitecore/templates/Project/***に移動して使いたいページテンプレートを選択し、最後に**挿入**をクリックします。
    
2.  新しいページをブランチテンプレートにコピーするには、ツリービューで新しいページを右クリックし、「 **コピー」「コピー先**」をクリックし、*/sitecore/Templates/Branches/Project/Commerce Experience Accelerator// Pages/ Pages/Home/Landing Pages*に行き、「 **コピー」**をクリックします。
    
3.  この新たにコピーした項目のテンプレートを */sitecore/Templates/Branches/Foundation/Commerce Experience Accelerator/Commerce Foundation/Tenant Templates/Page*に変更してください。
    
4.  新しいページをサイトの足場に追加するには、コンテンツエディターで */sitecore/System/Settings/Project/Commerce Experience Accelerator*に行き、右クリックで **「Storefront Template Scaffolding Plan** 」を右クリックし、「 **スクリプト」→「Edit Scaffolding Plan**」をクリックしてください。
    
    新しいページの場所( *Foundation*、*Feature*、または*Project*フォルダ内)は[Helix](https://helix.sitecore.net/principles/architecture-principles/layers.html?highlight=foundation)原則によって決まります。
    
5.  **Powershellスクリプト結果**ダイアログボックスのリボンメニューで**「追加**」をクリックします。
    
6.  「 **新しいアイテムスナップショットを作成** 」ダイアログボックスで、「 **ソースアイテム** 」フィールドをクリックし、「 *ブランチ/プロジェクト/コマース体験アクセラレーター」→「ストアフロント/ページ/ストアフロントページ/ホーム/ランディングページ/*」へ進みます。
    
7.  **参照項目**欄をクリックし、*sitecore/Content/Sitecore/Storefront/Home/Landing Pages/*に行って**「作成**」をクリックします。
    
    次に新しいサイトを作成すると、その新しいページが自動的にサイトに追加されます。
    
    ![New page displayed in the Content Editor for the new site.](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/AddnewPage.png)
    

## カスタム足場プランを作成してください

以下の高レベルの手順に従って、カスタマイズされたアイテムを含む足場計画を作成し、新規または既存の現場に展開します。

カスタム足場プランを作成するには:

1.  コンテンツエディターで*sitecore/System/Settings//Project/*へ行ってください。
    
2.  */sitecore/Templates/Foundation/Commerce Experience Accelerator/Scaffolding/Scaffolding Plan*テンプレートに基づいて[足場計画の定義項目](https://doc.sitecore.com/xp/en/developers/sxa/100/sitecore-experience-accelerator/en/add-modules-to-site-and-tenant-scaffolding.html)を作成します。
    
    計画に一般的な特徴や目的を示す関連名称を必ず付けてください。以下の例では、デモ足場計画図は*Commerce Experience Accelerator*フォルダにあります。
    
    ![Scaffolding Plan definition item](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/DemoScaffoldingPlan.png)
    
3.  計画展開スクリプトを作成し、*/sitecore/System/Modules/PowerShell/Script Library/Commerce Experience Accelerator/Functions/Commerce Site Features/Scripts*フォルダに入れます。
    
4.  次のコードをプランデプロイメントスクリプトに貼り付けます。
    
    > !注コード内の*\[ID of Scaffolding plan definition\]*を作成したプラン定義項目のIDに置き換えてください。
    
    Import-Function Deploy-ScaffoldingPlan
    
    function Invoke-ModuleScriptBody {
     CmdletBinding()
     param(
     Parameter(Mandatory = $true, Position = 0 )
     Item$Tenant,
    
     Parameter(Mandatory = $true, Position = 1 )
     Item$TenantTemplates
     )
    
     begin {
     Write-Verbose "Cmdlet Invoke-ModuleScriptBody - Begin"
     }
    
     process {
     Write-Verbose "Cmdlet Invoke-ModuleScriptBody - Process"
     $Plan = Get-Item master: -ID ID of Scaffolding plan definition
     $result = Deploy-ScaffoldingPlan $Plan $Tenant
     }
    
     end {
     Write-Verbose "Cmdlet Invoke-ModuleScriptBody - End"
     }
    }
    
    足場計画の定義のIDは、以下の画像に示すように展開スクリプトで処理されます。
    
    ![Example of a scaffolding plan deployment script](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/CustomTenantandSite.png)
    
5.  このアクションの一部にしたい足場計画の下でタイプExecuteScriptの新しい[足場アクション](https://doc.sitecore.com/xp/en/developers/sxa/100/sitecore-experience-accelerator/en/add-modules-to-site-and-tenant-scaffolding.html)を作成するには、モジュールを右クリックして「Insert, Execute Site Script」をクリックします。
    
    次の画像では、新しい足場計画は*Demo Scaffolding Module*と呼ばれ、新しいアクションは *「足場展開計画*」と呼ばれています。
    
    ![Demo scaffolding module and plan](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/DeployScaffoldingPlan.png)
    
6.  ツリービューで足場アクション(例:足場計画を展開)をクリックし、**コンテンツ** タブの **スクリプト** セクションで「配置足場計画」の場所に移動し、ダブルクリックして **「選択** リスト」に移動させます。
    
    ![Deployment script selected](https://doc.sitecore.com/api/markdown-image/xp/ja/developers/101/sitecore-experience-commerce/images/DeployScaffoldingPlanSelected.png)
    
7.  変更を保存してください。