住所の入力で国を選択した際にその国に合わせた州や県が動的に option 要素として追加される機能を実装しようと思い、公式のドキュメントに従って theme-addresses package を使おうと色々試しておりました。
addresses.liquid
https://shopify.dev/docs/themes/files/customers-addresses-liquid
theme-addresses
https://github.com/Shopify/theme-scripts/tree/master/packages/theme-addresses
しかしうまく機能しなかったため色々調べていた所、以下のTwitterの投稿を見つけました。こちらを見る限り現在は theme-addresses を使用することは推奨されていないのでしょうか?
https://twitter.com/benzookapi/status/1220247257636720640
こちらは他のテーマでもよく見かける機能なので、推奨されていない場合は他に公式のものなどがありましたら教えていただけると助かります。
お手数ですがよろしくお願いいたします。
解決済! ベストソリューションを見る。
成功
テーマのファイル自体は、Shopifyとは独立したもので、テーマ開発者が提供するものです。
お使いのものは、Shopifyが提供している無料テーマなので、結果的にShopifyが提供しているものになりますが、テーマ内のJSは、テーマ提供者の所有物なので、テーマの各ファイルに対してShopify公式といったものはありません。
ですので、利用できる分には既存のものを利用されても問題ないですし、自作されても問題ないですが、テーマはアップグレードされる可能性があるので、元々あるJS自体に手を入れるのは避けた方がいいと思います。
なお既存テーマをいじる場合は、必ずバックアップを取って、あとで戻したり差分がわかるようにすることをお勧めします。
そのTweetの主ですが(笑)、Theme scriptsは現在メンテナンスされていないので、お使いいただくのはお勧め致しません(自己責任で使われるのは問題ないかと思います)。
customer-address.liquidに、ご希望の処理をするJavaScriptを追加する方がシンプルで早いかと思います。
ありがとうございます!
ご本人からご返信いただけるとは思っておりませんでした 笑
そうだったのですね。
Shopify の アセット として提供されている shopify_common.js で同じような機能があったのでそちらを使ったら動きました。
https://shopify.dev/docs/themes/liquid/reference/filters/url-filters
よろしければ追加で1点質問させていただきたいのですが、shopify_common.js 含めアセットとして提供されているものには以下のようなものがありますがこれらも使わずにJavaScript については自前で作ったほうが良いのでしょうか。
Shopifyの機能の中には公式で提供されている JavaScript に依存している機能などあるかもしれないと思い、後々メンテナンスも考えて公式で提供されているものをなるべく使ったほうが良いと思っていたのですがいかがでしょうか。
成功
テーマのファイル自体は、Shopifyとは独立したもので、テーマ開発者が提供するものです。
お使いのものは、Shopifyが提供している無料テーマなので、結果的にShopifyが提供しているものになりますが、テーマ内のJSは、テーマ提供者の所有物なので、テーマの各ファイルに対してShopify公式といったものはありません。
ですので、利用できる分には既存のものを利用されても問題ないですし、自作されても問題ないですが、テーマはアップグレードされる可能性があるので、元々あるJS自体に手を入れるのは避けた方がいいと思います。
なお既存テーマをいじる場合は、必ずバックアップを取って、あとで戻したり差分がわかるようにすることをお勧めします。
ご丁寧にご回答いただきありがとうございます。Theme Kit で一から制作をしていました。なんらか公式の JavaScript があってそれを使わないと動作しない Shopify の機能があるのかと思っておりましたが、そういったわけではないんですね。わかりました。
色々と試してみたいと思います。ありがとうございました。