機械翻訳について

SCSオブジェクトについて

コントローラJavaScriptは、Webページをレンダリングするために、グローバルSCSオブジェクトで定義されている変数およびプロパティを使用します。 グローバルJavaScriptオブジェクトは、controller.jsファイルの包含前にコントローラ・ファイルで定義する必要があります。 カスタマイズに使用できるSCSオブジェクトには2つの主要プロパティがあります:

SCS.sitePrefix

SCS.sitePrefix変数は、オンライン・サイトのパス・プレフィクスを定義します。 通常、これはsite/<siteName>/にデフォルト設定されます。

コントローラJavaScriptは、この値を使用して、どのWebページを表示するかを決定します。 たとえば、ブラウザが/site/SampleSite/products/index.htmlでページをリクエストしている場合、sitePrefix /site/SampleSite/を使用すると、JavaScriptでサイトのproducts/index.htmlページが表示されるようにコンピュートできます。 sitePrefixは、" / "文字で始まり、終わる文字列値である必要があります。

プロキシまたはAkamaiなどの他のインフラストラクチャおよびURLマッピング・ルールが使用されている場合、この変数を変更することで、サイト接頭辞をカスタマイズできます。 たとえば、sitePrefixを/intranet/ExampleSite/に設定すると、デフォルトの/site/SampleSite/パス・プレフィクスではなく、ブラウザでそのパス名を使用してwebサイトが配信されます。

ノート:

内部的には、デフォルト・コントローラJavaScriptは、ブラウザのURLがサイト・プレフィクスと一致しない場合、sitePrefixとして" / "を使用します。 これにより、カスタマイズすることなく、バニティ・ドメインを使用してサイトを提供できます。

SCS.preInitRendering

定義されている場合、SCS.preInitRendering関数は、その計算ロジックが実行される前に、コントローラのJavaScriptコードによってコールされます。 これは、コントローラJavaScriptの基本操作をオーバーライドするカスタム・コントローラ・ファイルでの定義で役立つ関数です。

定義されている場合、SCS.preInitRenderingは関数である必要があります。 これは、引数なしでコールされ、戻り値は必要なく、処理されません。

SCS.getDeviceInfo

SCS.getDeviceInfo関数を使用すると、コントローラJavaScript内のデバイス検出ロジックをカスタマイズできます。 この検出は、ページのモバイル・バージョンまたはレスポンシブ・バージョンのいずれを配信するかどうかの決定に使用されます。

SCS.getDeviceInfo関数は引数を取らず、次の2つのプロパティを持つJavaScriptオブジェクトを返します:

  • isMobile - 現在のデバイスがスマートフォンなどのモバイル・クライアントであることを示すブール・プロパティ。

  • isIOS - 現在のデバイスがisIOSベースのオペレーティング・システムで実行されていることを示すブール・プロパティ。

カスタム・コントローラがSCS.getDeviceInfoをオーバーライドしない場合、組み込みのデフォルト実装が使用されます。