DEV Community

tackme
tackme

Posted on

Sitecore Commerceでビジネスツールの開発環境を構築する方法

Sitecore XCのビジネスツールはAngularで実装されており、簡単にカスタマイズできるようになっています。

SDKが用意されているので、開発環境を構築する方法をまとめました。

以下の手順ではSitecore XC 9.2.0を使用することを前提とします。

開発環境の構築方法

① お使いのマシンにnode/npmをインストールします。

② npmでangular-cliをインストールします。

$ npm install -g @angular/cli 
Enter fullscreen mode Exit fullscreen mode

③ Sitecore Commerceのインストールパッケージに含まれているSitecore.BizFX.SDK.3.0.7.zipを解凍します。今回は例としてC:\Project\BizFxに解凍します。

④ Sitecore Commerceのインストールパッケージに含まれているspeak-ng-bcl-0.8.0.tgzspeak-styling-0.9.0-r00078.tgzを、C:\Project\BizFx内にコピーします。

⑤ 以下のコマンドを実行して、Sitecoreのnpmレジストリを登録します。

$ cd C:\Project\BizFx # 作業フォルダに移動 $ npm config set @speak:registry=https://sitecore.myget.org/F/sc-npm-packages/npm/ $ npm config set @sitecore:registry=https://sitecore.myget.org/F/sc-npm-packages/npm/ 
Enter fullscreen mode Exit fullscreen mode

⑥ 以下のコマンドを実行して、必要なパッケージをインストールします。

$ cd C:\Project\BizFx # 作業フォルダに移動 $ ​​​​​​​npm install .\speak-ng-bcl-0.8.0.tgz $ npm install .\speak-styling-0.9.0-r00078.tgz $ npm install @sitecore/bizfx $ npm install 
Enter fullscreen mode Exit fullscreen mode

⑦ Sitecore Commerceで使用しているIdentityServerの以下のファイルを修正します。

  • Config\production\Sitecore.Commerce.IdentityServer.Host.xml
 <AllowedCorsOrigins> - <AllowedCorsOriginsGroup1>https://localhost:4200|https://localhost:5000</AllowedCorsOriginsGroup1> + <AllowedCorsOriginsGroup1>http://localhost:4200|https://localhost:4200|https://localhost:5000</AllowedCorsOriginsGroup1>  <AllowedCorsOriginsGroup2>https://bizfx.xc920.local|https://commerceauthoring.xc920.local</AllowedCorsOriginsGroup2> <AllowedCorsOriginsGroup2>https://bizfx.xc920.local|https://commerceauthoring.xc920.local</AllowedCorsOriginsGroup2> </AllowedCorsOrigins> 
Enter fullscreen mode Exit fullscreen mode

⑧ Commerce Authoringエンジンの以下のファイルを修正します。

  • wwwroot\config.json
 { "AppSettings": { ... "AllowedOrigins": [ + "http://localhost:4200",  "https://localhost:4200", "https://bizfx.xc920.local", "https://sc920.sc" ], - "AntiForgeryEnabled": true, + "AntiForgeryEnabled": false,  }, 
Enter fullscreen mode Exit fullscreen mode

⑨ IISを再起動し、実行中のビジネスツール(BizFx)のサイトを停止します。

⑩ 作業フォルダにある以下のファイルを修正します。

  • C:\Project\BizFx\src\app\assets\config.json
{ "EnvironmentName": "HabitatAuthoring", "EngineUri": "{Commerce AuthoringのURL}", "IdentityServerUri": "{Identity ServerのURL}", "BizFxUri": "http://localhost:4200", "Language": "en", "Currency": "USD", "ShopName": "Storefront", "LanguageCookieName": "selectedLanguage", "EnvironmentCookieName": "selectedEnvironment", "AutoCompleteTimeout_ms": 300 } 
Enter fullscreen mode Exit fullscreen mode

{Commerce AuthoringのURL}および{Identity ServerのURL}には、お使いのSitecore Commerceで使用しているものを設定してください。

⑪ 以下のコマンドを実行して、ビジネスツールをビルド・実行します。

$ cd C:\Projects\BizFx # 作業フォルダに移動 $ ng serve 
Enter fullscreen mode Exit fullscreen mode

実行後、http://localhost:4200にアクセスしてビジネスツールが正常に動作することを確認してください。

Marchandisingツールでエラーが発生する場合は、CORSやAnti-Forgeryの設定が正しくできていない可能性があります。

デプロイ方法

① IISで実行中のビジネスツール(BizFx)のサイトを停止します。

② 以下のコマンドを実行してプロジェクトをビルドします。

$ cd C:\Projects\BizFx # 作業フォルダに移動 $ ng build -prod 
Enter fullscreen mode Exit fullscreen mode

実行すると、作業フォルダのdist/sdkにビルドされたファイルが出力されます。

③ 出力されたファイルのうちassets/config.json以外をお使いのビジネスツールの物理フォルダに上書きコピーします。

以上でデプロイが完了します。
IISでBizFxを起動し、動作を確認してください。

Top comments (0)