OrderCloudSearchProvider

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

OrderCloudSearchProviderは、Sitecore SearchプラットフォームとSitecore OrderCloud Search JS SDKを使用して統合されたReactアプリケーションのルートレベルのプロバイダーです。これにより、内部コンポーネントでSDKクエリフックを使用できます。

構成

次の表に、OrderCloudSearchProviderコンポーネントのプロパティを示します。

名前

種類

形容

trackConsent

ブーリアン

falseの場合、Cookieは設定されず、既存のCookieは削除されます。

デフォルト: true

publicSuffix

ブーリアン

falseの場合、ドメインはCookieを制限するトップレベルドメインまたはapexドメインのサブドメインではありません。

デフォルト: true

discoverDomainId

必須。

ドメインID Customer Engagement Console (CEC) のDeveloper resourcesセクションから取得されます。

orderCloudRegion

必須。

OrderCloudがデプロイされているリージョン。

指定できる値は、australiaEasteuropeWestjapanEastusEast、およびusWestです。

searchEnv

必須。

CECで宣言されている環境。

例: prod

searchApiKey

必須。

CECのDeveloper resourcesセクションから取得されたキー API。

requestMiddleware

async関数

必須。

ミドルウェアとして機能する非同期関数。これは、要求の前にトリガーされます。

OrderCloudコントローラー

JS SDKを使用して構築されたOrderCloudアプリケーションから行われるすべての要求には、supplierIdrequiredInventoryLocationsの2つのプロパティの値が必要です。</ Search JS SDKには、次のコード ブロックに示すように、それらを追加または編集するためのOCControllerコンポーネントが用意されています。

RequestResponse
import { OCController } from '@sitecore-search/react';

OCController.getContext().setSupplierId('1234');
OCController.getContext().setRequiredInventoryLocations('Inventory location');

インポートパス

RequestResponse
import { OrderCloudSearchProvider } from '@sitecore-search/react';
import { OCController } from '@sitecore-search/react';

次のコード ブロックは、プロバイダー ( OrderCloudSearchProviderコンポーネント) を非同期ミドルウェア関数と共に使用する方法の例、Searchの構成、およびOrderCloudデータを示しています。

RequestResponse
import { OCController, OrderCloudSearchProvider } from '@sitecore-search/react';

const SEARCH_CONFIG = {
  discoverDomainId: string, 
  orderCloudRegion: string, 
  searchEnv: string, 
  searchApiKey: string
};

const Root = () => {

    OCController.getContext().setSupplierId('1234');
    OCController.getContext().setRequiredInventoryLocations('Inventory location');

    return (
        <OrderCloudSearchProvider
        requestMiddleware = {async () => {
          console.log('Refreshing the token...')
          refreshToken()
            .then(() => {
              console.log('Token refreshed')
            })
            .catch((err) => {
              console.log('Token could not be refreshed')
              console.error(err)
            })
        }}
        trackConsent={tracking}
        publicSuffix="true"
        discoverDomainId="222222"
        orderCloudRegion="usWest" 
        searchEnv="dev" 
        searchApiKey="API KEY GOES HERE"
        >
            <header>
              <h1>My Application</h1>
              <MyGlobalPreviewSearch rfkId="header_ps" />
            </header>
          
            <div class="content">
                OTHER WIDGET COMPONENTS GO HERE
            </div>
          
            <footer>
                <MyGlobalRecommendationWidget rfkId="footer_rec" />
            </footer>

        </OrderCloudSearchProvider>
)};

何かフィードバックはありますか?

この記事を改善するための提案がある場合は、