進行状況の追跡を始めよう
Trailhead のホーム
Trailhead のホーム

B2C Commerce デベロッパー向けの新機能の学習

学習の目的

この単元を完了すると、次のことができるようになります。

  • 新しい Storefront Toolkit を使用してストアフロントに関する情報を取得する。
  • Page Designer コンポーネントで Salesforce CMS コンテンツを使用する。
  • Google Chrome 80 の Cookie の変更に向けて準備する。
  • 柔軟なオンデマンド Sandbox を使用する。
  • カスタムキャッシュを使用してパフォーマンスを改善する。
  • 昨年の重要な新機能であるジョブとスケジュールを確認する。

ストアフロントのコンテンツとパフォーマンスに関する情報の取得 (20.2 リリース)

新しい Storefront Toolkit では、廃止された前のバージョンの Storefront Toolkit よりもセキュリティとパフォーマンスが強化されています。

新しい Storefront Toolkit には次のツールが含まれます。

  • ページ情報ツール: コンポーネントに関連付けられているテンプレート、コントローラー、パイプラインに関する情報が表示されます。
  • コンテンツ情報ツール: コンポーネントに関連付けられる商品、コンテンツアセット、またはコンテンツスロットへのリンクが表示されます。
  • 検索情報ツール: 検索結果の並べ替えルールと検索スコア情報が表示されます。
  • キャッシュ情報ツール: どのコンポーネントがキャッシュされているかを示します。ページのキャッシュ部分のコストを調べるために使用可能な情報が含まれます。
  • リクエストログ: ストアフロントからサーバーへの要求に関連するログエントリが表示されます。
  • サイトプレビュー設定ツール: 特定の日付、特定の顧客グループ、または特定の A/B テストセグメントを指定した場合にストアフロントがどう表示されるかを確認できます。

方法: 新しい Storefront Toolkit にアクセスするには、Business Manager で、表示するサイトを選択します。ナビゲーションバーの上部にある [Toolkit (ツールキット)] をクリックします。ストアフロントが開き、Storefront Toolkit アイコンがページの右上隅に表示されます。

新しい Storefront Toolkit を使用する場合は、[Merchant Tools (マーチャントツール)] | [Site Preferences (サイト環境設定)] | [Deprecated Storefront Toolkit Preferences (廃止された Storefront Toolkit 環境設定)] の順に選択して、以前の Storefront Toolkit を無効にすることをお勧めします。

Page Designer コンポーネントでの Salesforce CMS コンテンツの使用 (20.2 リリース)

Salesforce Content Management System (CMS) でコンテンツの作成と管理を行います。Page Designer ページのコンポーネントでそのコンテンツを簡単に使用できます。

Salesforce CMS は、Salesforce Platform ネイティブの一元化された標準機能を提供する、API ファーストのヘッドレスコンテンツサービスです。この統合により、マーチャントは Page Designer ページ内で CMS コンテンツにアクセスし、カスタムコンポーネントを作成して CMS コンテンツにマップすることができます。これらを行う前に、まず Salesforce CMS と B2C Commerce 間で 1 回限りの設定を行う必要があります。

方法: Page Designer ページで Salesforce CMS コンテンツを使用する手順は、次のとおりです。

  1. Salesforce 組織と B2C Commerce インスタンスの間に 1 回限りの信頼関係を確立します。
  2. Salesforce CMS に B2C Commerce コンテンツ用のワークスペースとチャネルを設定します。
  3. Business Manager で、サイトライブラリを CMS チャネルに割り当てます。
  4. CMS レコードに割り当てられている属性を使用してコンポーネントタイプを開発します。
  5. ビジュアルエディターでコンポーネント属性を構成する場合は、使用する CMS レコードを選択します。

詳細は、Infocenter の「Use Salesforce CMS Content with Page Designer」.(Page Designer を使用した Salesforce CMS コンテンツの使用) を参照してください。

Google Chrome 80 の新しい Cookie の変更 (20.1 リリース)

Google Chrome 80 では、新しいデフォルトの Cookie 属性設定 SameSite=Lax が導入されます。これまで、SameSite Cookie 属性のデフォルトは SameSite=None でした。また Chrome 80 では新たに、SameSite が None に設定されているとき、暗号化された HTTPS 接続が必須であることを示す Secure 属性で Cookie にタグ付けする必要があります。他のブラウザーベンダーも近い将来に同様の変更を行うと予測されます。この変更への準備をするには、グローバルセキュリティ環境設定の [Enforce HTTPS (HTTPS を強制する)] を有効にします。また、テストをして、クライアント側 JavaScript コードに調整が必要かどうかと、サードパーティ統合が期待どおりに動作することを確認します。

理由: これらの変更により、Chrome 80 のリリース後に Cookie が期待どおり動作するようになります。B2C プラットフォームは、サーバーからの Cookie に SameSite=None を指定します。グローバルセキュリティ環境設定の [Enforce HTTPS (HTTPS を強制する)] を有効にすることで、サーバーが Secure 属性を持つ Cookie を認識し、SameSite=None を指定できるようにする必要があります。[Enforce HTTPS (HTTPS を強制する)] が有効になっていないと、サーバーは SameSite 属性を指定しません。その場合、ブラウザーが独自のデフォルト SameSite 設定を使用するため、クロスサイトコンテキストで Cookie が送信されない可能性があります。Cookie の重要度によっては、送信されないことで、重要なサイト機能が中断するおそれがあります。

この変更を本番インスタンスに実装する前に、本番以外のインスタンスで [Enforce HTTPS (HTTPS を強制する)] の有効化をテストすることをお勧めします。 

クライアント側のカスタム JavaScript を使用して Cookie を設定している場合は、Chrome 80 の変更に対処するためにコードの調整が必要かどうかをテストして判断してください。また、クロスサイトシナリオをテストして、サードパーティ統合が Chrome 80 の変更後も期待どおりに動作することも確認してください。

方法: [Enforce HTTPS (HTTPS を強制する)] を有効にするには、Business Manager で、[Administration (管理)] | [Global Preferences (グローバル環境設定)] | [Security (セキュリティ)] に移動します。[Access Restrictions (アクセス制限)] タブで、[Enforce HTTPS (HTTPS を強制する)] を選択します。[Apply (適用)] をクリックします。

柔軟なオンデマンド Sandbox の使用 (19.9 リリース)

従来の POD ベースの Sandbox の代替手段である B2C Commerce オンデマンド Sandbox は、すばやく取得でき、パフォーマンスが改善されています。また、CI/CD プロセスの一部として使用できます。使用する Sandbox 数と使用するタイミングを制御できます。使用量ベースの価格設定モデルにより、柔軟に、数個の Sandbox のみ稼働期間を延長したり、多くの短期 Sandbox を作成したりできます。

オンデマンド Sandboxには次のような機能があります。

  • セルフサービス API を使用した Sandbox 管理
  • Sandbox 作成時に構成可能な OCAPI および WebDAV 設定
  • 指定期間が経過したら Sandbox を削除してコストを最小限に抑える有効期間オプション
  • Sandbox のアップタイムとダウンタイムに消費されたクレジットに基づく使用量ベースの価格設定モデル

カスタムキャッシュを使用したパフォーマンス向上 (19.8 リリース)

カスタムキャッシュを使用すると、処理コストが高い、取得に長時間を要する、または頻繁にアクセスするデータを再利用して、コードのパフォーマンスを高めることができます。新しいカスタムキャッシュフレームワークでは、要求間で単純な構造データのキャッシュがサポートされます。

方法: カスタムカートリッジの JSON ファイルにカスタムキャッシュを定義します。dw.system.CacheMgr および dw.system.Cache B2C Commerce Script API クラスを使用して、キャッシュに対するオブジェクトの保存と取得を行います。Business Manager で [Administration (管理)] | [Operations (オペレーション)] | [Custom Caches (カスタムキャッシュ)] の順に選択し、キャッシュの有効化または無効化、キャッシュ統計の監視、キャッシュのクリアができます。

重要な新しいジョブとスケジュール機能

次の新しい B2C Commerce のジョブとスケジュール機能を確認してください。

パイプレットではなくジョブステップの使用

開発者は、新しいジョブフレームワークを使用して、パイプラインやパイプレットを使用せずにカスタムジョブを実装できるようになりました。複数リリースに渡る取り組み (19.7 ~ 19.10 リリース) の結果として、以前はパイプレットとしてのみ使用可能だった機能すべてに対し、代わりとなる JavaScript または ジョブステップが提供されています。

理由: パイプラインを記述するかわりに、新しいジョブフレームワークとシステムステップを使用して簡単にジョブを作成できます。

方法: 次の新しいシステムステップを使用してジョブを作成します。括弧内に記載されているのは同様の機能を持つパイプレットです。

  • DownloadActiveDataFromStorage
  • ExecuteDataReplication (TriggerReplication)
  • ExportABTests (ExportABTests)
  • ExportContent (ExportContent)
  • ExportContentSlots (ExportSlots)
  • ExportCouponCodes (ExportCouponCodes)
  • ExportCoupons (ExportCoupons)
  • ExportCustomerList (ExportCustomerList)
  • ExportCustomers (ExportCustomers)
  • ExportCustomerGroups (ExportCustomerGroups)
  • ExportCustomObjects (ExportCustomObjects)
  • ExportGiftCertificates (ExportGiftCertificates)
  • ExportInventoryLists (ExportInventoryLists)
  • ExportMetaData (ExportMetaData)
  • ExportProductLists (ExportProductLists)
  • ExportPromotions (ExportPromotions)
  • ExportShippingMethods (ExportShippingMethods)
  • ExportSourceCodeGroups (ExportSourceCodes)
  • ExportStores (ExportStores)
  • ImportABTests (ImportABTests)
  • ImportActiveData (ImportActiveData)
  • ImportContent (ImportContent)
  • ImportContentSlots (ImportSlots)
  • ImportCoupons (ImportCoupons)
  • ImportCustomerGroups (ImportCustomerGroups)
  • ImportCustomerList (ImportCustomerList)
  • ImportCustomers (ImportCustomers)
  • ImportGiftCertificates (ImportGiftCertificates)
  • ImportInventoryLists (ImportInventoryLists)
  • ImportProductLists (ImportProductLists)
  • ImportPromotions (ImportPromotions )
  • ImportShippingMethods (ImportShippingMethods)
  • ImportSourceCodeGroups (ImportSourceCodes)
  • ImportStores (ImportStores)
  • ImportTaxTable (ImportTaxTable)
  • InvalidateCache (InvalidateWebCache)
  • UploadActiveDataToStorage

インポートおよびエクスポートジョブステップ失敗の理由の追加 (19.7 リリース)

インポートまたはエクスポートジョブステップが失敗すると、OCAPI Data API から返されるステータスメッセージに失敗の理由が追加されます。このメッセージには、失敗に関する詳細が含まれます (たとえば、ロックの問題、検証の問題、など)。これまで、汎用メッセージのみが返され、エラーの原因を特定するにはログファイルを確認する必要がありました。

ImportFailedHandling ジョブステップパラメーターの動作の変更 (19.5 リリース)

ImportFailedHandling ジョブステップパラメーターの値として ERROR を選択した場合、AfterImportFileHandling パラメーターに構成されたアクションが無効なファイルに対して実行されなくなりました。これまで、ジョブは停止しましたが、AfterImportFileHandling で指定されたアクションが無効なファイルと、まだインポートされていない他のファイルに対しても実行されていました。この動作のため、システム管理者が問題を確認するまで新しいインポートファイルを処理しないようにジョブを設計することが困難でした。ImportFailedHandling のデフォルトも ERROR から WARN に変更されました。

AfterImportFileHandling は一時的なエラーの後には実行されない (19.5 リリース)

インポートジョブステップで、リソースのロックなど一時的なエラーが発生した場合、AfterImportFileHandling パラメーターで指定されたアクションは実行されません。このパラメーターでは、インポートプロセスが完了した後にインポートファイルに対して何を行うかを指定します。たとえば、ファイルを圧縮してアーカイブするか、削除するように指定できます。これまで、インポートジョブステップで一時的なエラーが発生した場合、オブジェクトがインポートされなくても、AfterImportFileHandling に指定されたアクションは実行されていました。アクションが実行されなくなり、インポートファイルは、インポートジョブをもう一度実行すれば処理できるように保持されます。

インポート中に見つからなかったファイルの特定 (19.5 リリース)

NoFilesFoundHandling ジョブステップパラメーターでは、インポートジョブステップで、指定されたインポートのパターンに一致するファイルが見つからない場合に使用する終了ステータスコードを指定します。パラメーターの新しい NO_FILES_FOUND オプションを使用してこのエラー状況を特定し、適切なアクションを実行できます。

方法: 新しいデフォルト値を使用するには、ジョブ内で、[Configure a Step (ステップを構成)] をクリックします。インポートジョブステップを選択します。NoFilesFoundHandling の事前構成値は NO_FILES_FOUND です。[Select and Configure Step (ステップの選択と構成)] ウィンドウの [Error Handling (エラー処理)] セクションで、エラーコード NO_FILES_FOUND を選択できます。

アーカイブされるインポートファイルへのジョブ ID とステップ ID のプレフィックス追加 (19.5 リリース)

インポートファイルがアーカイブされる前に、ジョブとジョブステップの ID がファイル名にプレフィックスとして追加されます。AfterImportFileHandling パラメーターを Archive に設定すると、インポートプロセスの完了後、インポートファイルはアーカイブフォルダーに移されます。これまで、アーカイブフォルダーに同じ名前のインポートファイルがあると、ファイルをアーカイブできないためにエラーが返されていました。ジョブ ID とステップ ID を追加することで、各インポートファイルの名前が一意になりました。たとえば、インポートファイルの名前が NavigationCatalog.xml の場合、アーカイブファイルは JobID_StepID_20191224_062213546_NavigationCatalog.xml のようになります。

リソース