モジュール ライブラリの静的文字列の変更
この記事では、Microsoft Dynamics 365 Commerce にてモジュール ライブラリの文字列を変更する方法について説明します。
場合により、モジュールは Commerce サイト ビルダーでコンフィギュレーションできるモジュール内のコンフィギュレーションとして表示される文字列を公開します。 ただし、サインイン ボタンに表示されるテキストなどの他の文字列は、モジュール リソース文字列としてハードコードされている場合があります。
一部の追加の文字列は、テーマの一部として格納されます。 詳細については、テーマのモジュール設定の変更を参照してください。
変更するモジュール ライブラリ リソース文字列キーを検索します
モジュール ライブラリの文字列を変更する最初の手順として、変更する文字列のモジュール ライブラリ リソースの文字列キーを探します。
各モジュール ライブラリの定義ファイルには、そのファイルで使用する各静的リソース文字列のエントリがあります。 You can find this entry in the module source code under the \Msdyn365.Commerce.Online\node_modules\@msdyn365-commerce-modules オンライン スフとウェア開発キット (SDK) ディレクトリの下のモジュール ソース コードで、エントリが表示されます。 たとえば、ヘッダー モジュールの「サイン イン」テキストを変更する場合、\Msdyn365.Commerce.Online\node_modules\@msdyn365-commerce-modules\header\src\modules\header\header.definition.json ファイルを開け、次の例で示すようにリソースセクションを参照します。
"resources": {
"mobileHamburgerAriaLabel": {
"comment": "The aria label used for mobile view hamburger",
"value": "Hamburger menu"
},
"wishlistTooltipText": {
"comment": "string to be shown for wishlist tooltip",
"value": "My Wishlist"
},
"cartLabel": {
"comment": "string to be shown for cart or shopping bag tooltip",
"value": "Shopping bag, ({0}) items"
},
"cartQtyLabel": {
"comment": "string to be shown for cart item quantity",
"value": "({0})"
},
"signInLinkText": {
"comment": "Sign-in Link text",
"value": "Sign in"
}
}
変更する文字列のリソース キーをメモします。 たとえば、前のコード サンプルの「サイン イン」用のリソース文字列キーは、signInLinkText です。
モジュール ライブラリのリソース文字列の上書き
モジュール ライブラリの文字列を変更する次の手順は、モジュール ライブラリのリソース文字列を上書きします。
モジュール ライブラリのリソースは、\Msdyn365.Commerce.Online\node_modules\@msdyn365-commerce-modules\resources\src\resources\modules オンライン SDK ディレクトリにある、global.json ファイルに格納されています。 ローカライズされたバージョンは、独立した別のファイルに格納されます。 モジュール ソースのコードに表示されたリソース文字列キーを確認するには、global.json ファイルを開け、探しているキーを検索します (例では signInLinkText)。 各文字列について、次の例のようなエントリが表示されます。
"signInLinkText": {
"value": "Sign in",
"_value.comment": "Sign-in Link text"
},
文字列を上書きするには、\Msdyn365.Commerce.Online\src ディレクトリの下に新しいディレクトリを作成し、リソースと名前を付けます。 ディレクトリで、モジュールという名のサブダイレクトりを作成します。 そして、新しく空の global.json ファイルをモジュールダイレクトりに追加します (例えば、 ...\Msdyn365.Commerce.Online\src\resources\modules\global.json)。
次に、新しい文字列エントリを新しい global.json ファイルに追加し、次の例で示すように、@msdyn365-commerce-modules 名前空間をキー名の先頭に追加します (リソース文字列キーが signInLinkText である場所で、新しい文字列は「ログイン」です)。
"@msdyn365-commerce-modules.signInLinkText": {
"comment": "Log-in Link text",
"value": "Log in"
}
パッケージを構築して配置した後で、新しい文字列は既定のモジュール ライブラリ文字列を上書きします。