Translations APIがSellingPlanとSellingPlanGroupフィールドをサポート開始

Shopifyの開発者であれば既にご存知かもしれませんが、SellingPlanGroupとSellingPlanフィールドがTranslations APIのtranslatable resourcesとしてサポートされるようになりました。これにより、SellingPlanGroupとSellingPlanの各フィールドを利用して、よりリッチな国際化対応のECサイト開発が可能となりました。

技術的課題の定義と現状分析

これまでShopifyでは、商品販売計画(SellingPlan)に関する情報を言語化するためには、独自の翻訳ロジックを実装する必要がありました。これは、特に多言語をサポートするECサイトを運営している開発者にとって、開発と保守の両方で大きな課題となっていました。

具体的な技術的ソリューションの提案

新たにTranslations APIがSellingPlanGroupとSellingPlanフィールドをサポートすることにより、商品販売計画の各フィールドを翻訳リソースとして処理することが可能になりました。具体的には以下のフィールドが対象となります:

  • SellingPlanGroup.name - 販売計画グループの公開名
  • SellingPlan.description - 販売計画の詳細な説明(任意)
  • SeillingPlan.option1 - 配送頻度
  • SellingPlan.option2- 配送頻度(任意)
  • SellingPlan.option3 - 配送頻度(任意)

実装手順とコード例

Translations APIを使用してSellingPlanGroupとSellingPlanのフィールドを翻訳するには、以下のようなGraphQLクエリを使用します。ここでは、SellingPlanGroupのnameフィールドを翻訳する例を示します。

mutation {
  translationsRegister(
    translations: [
      {
        key: "SellingPlanGroup.name",
        value: "Your translated selling plan group name",
        locale: "ja_JP"
      }
    ]
  ) {
    userErrors {
      field
      message
    }
  }
}

パフォーマンス・コスト分析

新たにAPIが提供されたことで、自前で翻訳ロジックを実装する手間が省け、開発コストの削減が見込めます。また、API経由で一元的に翻訳を管理することで、保守性も向上します。

実装時の注意点・ベストプラクティス

新APIは2022-10 APIリリース時点でunstableバージョンとなっています。そのため、本番環境への適用は注意が必要です。一方で、早期のテスト導入により、開発者自身のスキルアップや新機能への迅速な対応が可能となります。

次のステップ・発展案

今後はこの新APIを活用し、多言語対応のECサイト開発を進めていくことが期待されます。また、ShopifyのAPIは頻繁に更新されるため、最新のリリース情報をチェックし、新機能を活用することが重要です。

参考記事: SellingPlan and SellingPlanGroup fields are supported by the Translations API