• 当ページには広告が含まれています

Shopifyで言語用にサブドメイン型を用いる際の留意点:メモ

窓辺

ヘルプなどのドキュメントのみでは不明瞭だった点を、サポートに確認して概ね理解できたように思うのでメモとして。
ただし実際に操作や設定を行って試していないため正確性には疑問がある内容となります。

実現したいこと

  • Shopifyで英語用にサブドメインを使いたい

サブディレクトリ型であれば簡単なのですが、サブドメイン(や別ドメイン)の場合は不明点が多く、ヘルプの内容では理解できませんでした。

参考資料

Shopifyサポートの回答に基づく留意点

  • 言語用のサブドメインの設定には独自ドメインの追加が必要(myshopify.comしかない状態では選択項目自体が表示されない)
  • 仕様としては「言語用サブドメイン」ではなく「マーケット用サブドメイン
  • 言語スイッチャーで言語用サブドメインにリダイレクトさせたい場合は、1マーケットに1言語(=デフォルト言語)のみにする

以下補足などですが、言語スイッチャーに関しては否定的な情報が出てきたため、実現不可である可能性が濃厚という印象です。

独自ドメインの必要性

ストアの「myshopify.com」ドメインから海外ドメインを作成することはできません。Shopifyまたは外部サービスのドメインプロバイダーを通じて購入した、カスタムドメインを使用する必要があります。

上記のように記載があり、開発ストアを作成してサブドメインに関する調査試作を行おうとしても、myshopify.comドメインのままではサブドメインを選べず調査できません。

「言語用サブドメイン」ではなく「マーケット用サブドメイン」

サブディレクトリ型とは明確に異なり、マーケットに対してサブドメインを追加するというマーケットを主軸とした認識をもつ必要があります。

具体的には以下のような状態を作る必要があります。

前提
  • デフォルト言語は「日本語」
  • 独自ドメイン「example.com」を追加
  • 英語用にサブドメイン「en.example.com」の追加を想定
exampl.com
  • 主要マーケット
  • デフォルト言語を日本語で設定
en.exampl.com
  • USのみを追加したマーケット
  • デフォルト言語を英語で設定

マーケットに追加する国は1つでも複数でも問題ない。

サブドメインに複数言語を追加した場合

前項の前提で、他の言語を追加した場合は以下のようになるようです。

exampl.comの主要マーケットに、英語とフランス語を追加した場合
exampl.comに表示される言語スイッチャーで英語やフランス語を選ぶと以下のようになります。

  • 日本語を選ぶと、exampl.comのまま変化しない
  • 英語を選ぶと、exampl.com/en/にリダイレクトされる
  • フランス語を選ぶと、exampl.com/fr/にリダイレクトされる
en.exampl.comの主要マーケットに、日本語とフランス語を追加した場合
en.exampl.comに表示される言語スイッチャーで英語やフランス語を選ぶと以下のようになります。

  • 日本語を選ぶと、en.exampl.com/ja/にリダイレクトされる
  • 英語を選ぶと、en.exampl.comのまま変化しない
  • フランス語を選ぶと、en.exampl.com/fr/にリダイレクトされる

上記は以下のShopifyの仕様の結果となります。

  • 言語を追加すると、自動でサブディレクトリが作られる
  • マーケット毎にドメインを設定した場合、言語を追加するとその設定したドメイン毎にサブディレクトリが作られる

「日本マーケットの日本語と、USマーケットの日本語でコンテンツを変えたい」などの要望を満たすことができるので有益な仕組みではあると思いますが、言語をサブドメインで運用したい場合には問題ある状態とも言えます。

言語スイッチャー

サポートからは、言語スイッチャーの選択で言語別のドメインにリダイレクトさせたい場合は以下のように設定する必要があると回答を得ました。

  • 各ドメインに紐づくマーケットには、1言語のみを設定する

しかし別のサポートからは「言語スイッチャーが正常に動作する(=「英語」を選ぶとen.example.comにリダイレクトする)ことは保証できない」という回答をえました。

開発ストアにて実際にサブディレクトリ型で「1マーケットにサブディレクトリを指定し、1言語のみを設定する」形を試すと以下の問題が起きましたので、サブドメイン型でも同種の問題が発生する可能性は高いように思います。

この点から、マーケットに言語用サブドメインを設定し、さらに1言語のみを指定する形にした場合、言語スイッチャーの使用は避けた方が良い可能性が高いです。

仮に実装する場合はいずれかになると思われます。

  • 言語スイッチャーを自作する
  • 希望する動作が可能な言語スイッチャー用アプリを探して実装する

結び

冒頭に記載しましたが、実際に設定して確認したわけではないのため内容が間違っている可能性があります。

ヘルプに手順などの情報が記載されていますが、実際に実行しようとすると不明点が多く出てくる印象です。

サブディレクトリ型が簡単なのでサブドメインや別ドメインも同様ではと思ったのですが、そう簡単ではなさそうでした。
マーケットを主軸にした仕様である点を理解していないと不都合が起きそうなので、事前に色々検討した方が良いと思われます。

0人がこの記事を評価

役に立ったよという方は上の「記事を評価する」ボタンをクリックしてもらえると嬉しいです。

連投防止のためにCookie使用。SNSへの投稿など他サービスとの連動は一切ありません。

コメント欄


このサイトは reCAPTCHA によって保護されており、Google のプライバシーポリシー および 利用規約 に適用されます。

reCaptcha の認証期間が終了しました。ページを再読み込みしてください。