`TranslatableResourceType` enumに新たなテーマ関連フィールドを追加
1. 技術的課題の定義と現状分析
これまで、Shopifyストアのテーマに関連するオンラインストアの翻訳可能な内容や翻訳を扱う際、`ONLINE_STORE_THEME`というタイプを使用していました。しかし、この方法ではテーマ全体の内容を返す必要があり、必要以上のデータが返されてしまう問題がありました。
2. 具体的な技術的ソリューションの提案
APIバージョン`2024-10`より、より細かくデータを取得できるよう、新たなフィールドが`TranslatableResourceType` enumに追加されました。具体的には`ONLINE_STORE_THEME_JSON_TEMPLATE`, `ONLINE_STORE_THEME_SECTION_GROUP`, `ONLINE_STORE_THEME_APP_EMBED`, `ONLINE_STORE_THEME_LOCALE_CONTENT`, `ONLINE_STORE_THEME_SETTINGS_CATEGORY`, `ONLINE_STORE_THEME_SETTINGS_DATA_SECTIONS`といったフィールドが新たに導入され、ONLINE_STORE_THEMEの使用を減らすことを目指しています。
また、`TranslatableResource`オブジェクト下に`nestedTranslatableResources`接続も追加されました。これにより、特定のテーマに属するテーマリソースを公開することが可能になります。
3. 実装手順とコード例
新たなフィールドを使用するためには、まずAPIバージョン`2024-10`を設定します。
// APIバージョンを設定
ShopifyAPI::Base.api_version = '2024-10'
次に、新たに追加されたフィールドを呼び出す際のコード例を以下に示します。
// ONLINE_STORE_THEME_LOCALE_CONTENTフィールドの取得
locale_content = ShopifyAPI::TranslatableResource.find(ONLINE_STORE_THEME_LOCALE_CONTENT)
4. パフォーマンス・コスト分析
新しいフィールド導入により、必要となるデータだけを取得することが可能になります。これにより、不必要なデータの取得を回避し、パフォーマンスの向上が期待できます。
5. 実装時の注意点・ベストプラクティス
新たなフィールドの導入は、将来的に`ONLINE_STORE_THEME`の使用を減らす方向へ移行する意図があります。そのため、これらの新しいフィールドを適切に活用することで、より効率的なコードの実装が可能となります。
6. 次のステップ・発展案
今後はさらにこの新しいフィールドを活用し、具体的なテーマのカスタマイズや翻訳の実装を進めていきましょう。また、APIのアップデートも継続的にチェックし、新たな機能を最大限に活用していくことが重要です。
参考記事: Add new theme-related fields to `TranslatableResourceType` enum






Share:
`FulfillmentHold`における地域別の配送保留理由
特定の市場コンテキストに特化した翻訳可能なコンテンツが公開されました