正しい情報とは断言できませんが、調べて検討した感じだと概ね正しいのではという翻訳用JSONファイルに関してのメモです。
前提
- ja.json
- ja.schema.json
Shopifyのテーマ内には上記のように各言語ごとに2種類の翻訳用JSONファイルが存在します。
この2つの違いを把握できていませんでした。
2種類のJSONファイルの違い
上記のドキュメントに書かれている以下が回答になります。
Type | Description |
---|---|
Storefront | Storefront locale files have a .json file extension, and control translations for storefront content. These translations can be edited by merchants through the Shopify Language Editor. |
Schema | Schema locale files have a .schema.json file extension, and control translations for theme editor settings. |
上記を踏まえ多少の補足を加えると以下のようになると思います。
- .json
-
- ストアフロント用で、ユーザーがストアで目にする部分の翻訳を記載
- 管理画面を通してマーチャント(ストアを運営している店舗)が翻訳を書き換えることができる
- .scheme.json
-
- 主に管理画面用で、マーチャントが管理画面内で目にする部分の翻訳を記載
- 具体的には、カスタマイズ内で目にする各項目の見出しや項目名、選択肢、説明文など
- マーチャントが管理画面を通して翻訳を変更できない(「コードを編集」で直接書き換えることは可能)
Theme Checkによるエラー検出
- 全言語ではなく特定の言語の翻訳ファイルのみ項目を追加
※en.default.jsonとja.jsonのみ翻訳を追加した場合など
上記前提で下記のテーマチェックを実行。
- Shopify 公式の Theme linter 「Theme Check」を使用してテーマの構文エラーをチェックする ++ Gaji-Laboブログ
- Shopify/theme-check: The Ultimate Shopify Theme Linter
以下のような状態を確認しました。
- .schema.jsonファイルに対してはエラーがでない
- .jsonファイルに対してはMissing translation keys:のエラーがでる
エラーが出ないから放置で良いとはいえませんが、用途を考えますと案外許されているのかもしれません。
「設定」の「言語」による翻訳との関係
上記記事で触れていますが.jsonや.schema.jsonを利用している翻訳は、確認した限りでは「言語」でエクスポート可能なCSVの中に含まれません。
「言語」が対象としているのは、管理画面から入力された商品説明やブログ記事やページ、あるいはメタフィールドなどのいわゆる「コンテンツ」だと思われます。
結び
ストアフロントは多言語化される可能性が高く、作業対象にはストアフロント用翻訳ファイルの.jsonが含まれると認識しておくべきなのかもしれません。
他方、管理画面の言語は一つに確定している可能性が高く、またTheme Checkでエラーも出ないことから、全言語の.schema.jsonを変更する必要はないのかもしれません。
例外としては多国籍なスタッフがログインする場合が考えられ、この場合は各スタッフアカウントで選択されうる言語の.schema.jsonファイルも作業対象となります。
2人がこの記事を評価
役に立ったよという方は上の「記事を評価する」ボタンをクリックしてもらえると嬉しいです。
連投防止のためにCookie使用。SNSへの投稿など他サービスとの連動は一切ありません。