『エンジニアのためのShopify開発バイブル』出版記念オンラインイベントの書き起こし

2022年5月24日、『エンジニアのためのShopify開発バイブル』の出版を記念し、オンラインイベントが開催されました。モデレーターに株式会社フラクタ 代表取締役で、Shopify日本初代エバンジェリストの河野貴伸氏を迎え、著者全員が登壇。書籍執筆の裏側や寄せられた質問への回答など、開発にまつわるあれこれが熱く語られました。


Shopify導入の最初の一冊になれば

河野:『エンジニアのためのShopify開発バイブル』出版記念ライブ配信ということで、著者の皆さんにお集まりいただきました! さっそく中身を拝見しましたが、高度な内容でありつつも、「これから開発していくぞ」という初学者の方にも読みやすい内容になっていると感じました。加藤さん的には、どんな方に手に取って欲しいですか?

加藤:Shopifyのアプリの開発、普段は公式の英語のドキュメントを頼らざるを得なくて、日本語ではあまり情報がないのが現状です。少し開発にまつわる本など出てきてはいますが、アプリや開発のところについて、ステップバイステップで最初のところからサポートできる入門書があったらいいよね、というところから企画がスタートしています。なので、初めてShopifyのストアを構築する方とか、これからアプリを作りたい方、カスタムストアフロントをReactで書くことを勉強しようと思っている方などにも読んでもらえることを想定しています。公式のドキュメントももちろん大事なんですが、それに加えてShopify導入の最初の一冊として手に取っていただければと。

リワイア 加藤 英也

海外の大学を卒業後、サイバーエージェントにて営業からエンジニアに転向。広告の配信システムやターゲティングシステムの開発に従事。その後CDP・データ分析ビジネスの開発を担当した後、フィードフォースグループのリワイアに取締役として参画し、2022年より代表取締役。

音楽制作や動画編集、ものづくりが大好き。

 

河野:ちなみに、Shopify の構築や開発にはエンジニアの方だけでなくデザイナーさんも多いかと思いますが、そういった方々のためになる内容はありますか。

加藤:そうですね、ストアフロントですとか、実際に開発してみた部分もありますし、API や環境構築といった部分も丁寧に書きました。Shopify の開発に興味のあるデザイナーさんにも読んでいただけるとうれしいですね。

河野:最近だとデザイナーとエンジニアの境目がなくなりつつあるというか、幅広く求められるので、バイブルという名に恥じぬ、常に手元に置いておきたい内容ですね。そんな書籍の中身についてお伺いしたいです。皆さんのこだわりポイントについて、教えていただけますでしょうか。お一人ずつお願いします。

 

河野さんのナイスファシリテーション

大道:担当したのは、2章の「開発を始める前の環境構築」です。具体的に言うと、API をたたくときに有用な GraphiQL(グラフィクル)という Shopify の開発用アプリがあるんですが、その説明を丁寧に書いています。操作方法を知らないと分からないままになってしまいそうなツールだったので、Shopify で初めて GraphQL(グラフキューエル)を触る方に向けて詳しく説明しました。

フィードフォース 大道翔太

大学卒業後、物流管理、転職エージェント、採用担当などの仕事を経て2018年フィードフォース入社。フィードフォースへの転職を機にWebエンジニアにキャリアチェンジ。現在は Omni Hub というShopifyアプリの開発をしています。

プライベートでは関西圏に移住し、地方からのフルリモートワークを行っています。

大道:あとは、日本語の情報でアクセスすることについても記述しています。Shopify はドキュメントが充実しているんですが、公式のものは英語で提供されているんですね。Shopify のブログも英語版が先にあって、そのあと翻訳されて日本語版が出てきたりします。こういう事情を知らないと意外と知らないままで過ぎてしまうことがあるので、追加で書きました。

河野:GraphQL、僕もやっぱり難しいというか、とっつきにくかったので、個人的にありがたかったです。おっしゃるとおり Shopify は本国の情報にアクセスするのも大事ですので、そういったところも記載されているのは楽しみですね。

小飼:私は 6章、7章のカスタムストアフロントに関連する部分を担当しました。先ほど大道さんが言ったとおり、Shopify はドキュメントがすごく豊富で、かつ英語ですので、開発するにあたり避けて通ることはできないんですね。この本ではそのための下準備といいますか、用語の技術的な意味もそうですし、Shopify の文脈で用語をとらえて理解しやすくすることを意識して書いたつもりです。

フィードフォース 小飼慎一

エディトリアルデザイナー・Webデザイナーを経て、2017年より現職。2020年より新規事業開発の一環として複数のShopifyアプリを開発。現在はPOSとShopifyを連携させるサービス「Omni Hub」の開発全般を担当。

プライベートでは洋書専門の書店(もちろんShopifyで構築)を営んでおります。

小飼:あとカスタムストアフロントは国内だとまだ事例がそこまで多くないので、Slack で海外のコミュニティの方に「良い例ないですか」と取材したものも載せているので、よかったら読んでみてください。

河野:日本語化されていない情報ってけっこう多いなと思っています。前提知識が少しつけば「英語でも情報取りに行こう!」となりますが、初学者が自分の力のみで取りに行こうとするのはとても大変ですよね。そういうところを記載いただいているのはありがたいですね。

長岡:私は 3章の Shopify のデータ構造についてと、10章の一部を担当しました。3章については、Shopify の公式のドキュメントにもデータ構造の記載はあるものの、すべて完璧に読み解くのは正直難しいので、概要を噛み砕いて説明しています。

 

Shopifyのデータを扱う方法として REST API、GraphQL があるんですけれど、この本では GraphQL での扱い方について重点的に説明しています。GraphQL は自分も最初は慣れなくて苦労した記憶があるので、同じ環境の方のサポートになれば幸いです。ここがマスターできれば、あとは Shopify のドキュメントとにらめっこしながらで、ある程度開発を進められるようになるんじゃないかなと思っています。

ソーシャルPLUS 長岡正樹

SIerを経験したあと「働くを豊かに」という社風に共感し、2018年にフィードフォースに入社。現在は分社化した株式会社ソーシャルPLUSで Shopify アプリ「CRM PLUS on LINE」のバックエンドを開発している。

プライベートではFlutterを使ったアプリを作っている。好きなエディタはVimです。

長岡:もう一点、10章の方は、ストアフロントで使われる App Proxy を利用して、ログイン中のカスタマーからのリクエストを判断する、という内容について書きました。(※こちらの記事も参照)ソーシャルPLUSでリリースしているアプリ「CRM PLUS on LINE」の核となる機能で、弊社の佐藤も頭を抱えながら苦労して実装した部分になります。

 

ただ、もうすぐ Shopify の公式が、App Proxy を使ってログインしているカスタマーを判別できる機能をリリースするらしい(※)ので、おそらくこの記事で書いたことはもう少ししたら使えなくなってしまうようなので……ちょっと残念ではあるのですが、「昔はこんなことがあったんだな~」とあった事実を読み物として楽しんでいただけたらと思います。

こちらの記事で、2022年7月4日以降は、アプリプロキシに転送されるリクエストにlogged_in_customer_idパラメータが追加され、ログインした顧客の情報がアプリのプロキシページに追加されることが発表されました

 

河野:これだけ多くの人が使っているサービスを開発されている方の生々しいお話、とてもためになりますし、貴重ですね。まさしく今回のように「大事な実装だったものがその役割を終える」ようなことは、エンジニアとして仕事しているとしばしば遭遇しますよね。ただ「以前はこの機能がなかったから実装が大変だった」といった過去の経緯を知ることは、その後の応用を考えるうえでとても重要な示唆を与えてくれると思います。その苦労の足跡を感じながら書籍を読んでいただけると良いな、と感じています。

では、「CRM PLUS on LINE」の開発で長岡さんとともに頭を抱えていらっしゃった佐藤さん、お願いします。

佐藤:どうも、頭を抱えていた佐藤です。私は 8章と 9章、あと巻末で 2つほど記事を書いています。8章、9章は Shopifyアプリの開発に関する話が中心になっていて、8章はその前提となる知識を埋めていく内容で、9章は実際にハンズオン形式でサンプルアプリを作ってみましょう、という内容になっています。

ソーシャルPLUS 佐藤亮介

SIer、Web系スタートアップを経て2017年にフィードフォースに入社。「ソーシャルPLUS」のバックエンド開発に従事する。分社化に伴い株式会社ソーシャルPLUSの執行役員CTO。開発やチームビルディング、エンジニア採用に取り組む。

プライベートでは1歳になった娘の育児に奮闘中。

佐藤:こだわりポイントは、8章に Shopify のアプリをインストールするときの OAuth のフローの部分です。弊社のソーシャルPLUS がその OAuth を扱っていることもあり、認証フローにはもともと興味があったので、書いてて楽しかったですね。認証・認可周りは仕様が複雑なので、英語のドキュメントに慣れない中で進めている時期に自分が引っかかった箇所などはしっかり補足したつもりです。解説は丁寧にしたつもりですので、Shopify の仕様についてしっかり知りたい方には良い情報が書けているんじゃないかなと思います。

 

9章では実際にアプリを作るんですけど、アプリの開発環境を作るところから、コードを書いて、Shopify にアップロードするところまで、一通り入っています。この章で Shopify アプリ開発の一から十までを通して体験できるように意識して書いてますので、初めてアプリ開発する方にも読んでいただけたら嬉しいかな。Shopify のアプリはバージョンアップが非常に早いので、もしかしたら読んでいただいているときにはサンプルコードそのままだとバージョンによっては動かないかもしれませんが、一応動いた状態のものは GitHub でソースコードを公開しているので、確認してもらえればと思います。

 

最後に、巻末に執筆した Shopifyアプリの公開のための審査のフローについてを、自分の体験を交えて書かせていただきました。案外、生の声ってネット上に落ちていないので、既にアプリ作ったけど審査が通らないって方にも、参考にしていただけるんじゃないかなと思っています。

河野:審査が通らない、僕も経験があります。このあたりの体験談ってなかなか世間に公開されていないですよね。だからこそ、これからチャレンジする方にとって「とても心強い内容だな」と感じました。

この「心強さ」は、書籍全体を通じてすごく感じますね。Shopify でビジネスをする方、したい方にとって、時折こう……心が折れそうな壁がある瞬間ってあるじゃないですか。やりたいことがあるのに、なかなか上手くいかない時。そういうときにこの本でサポートしてもらって、皆がチャレンジして良いアプリや構築環境ができたら、マーチャントのみなさんも幸せになるので、ぜひ活用していただきたいですね。

加藤:私は 4章と 5章、テーマのところについてお話をしています。Shopify の機能の強みのひとつに、オンラインストアを構築する「テーマ」という仕組みがあります。テーマは Lliquid というプログラミングのコードで書かれていますが、テーマエディタというノーコードで編集できる画面があり、そこと連携できる仕組みがついているんですね。以前執筆した『いちばんやさしいShopifyの教本』という本では「どういう風にECサイトを作るか」という部分について焦点を定めて説明したんですが、本書はサイトを作るためのテーマ自体をどうやって作るか、というところにフォーカスを置きました。

 

冒頭で「デザイナーさんにも読んでほしい」という話をしましたが、Shopify でサイトを構築して、例えばアプリと連動させたりとか、元々あるテーマからカスタマイズを加えていくという過程で、どうしてもコードを触ることが避けられない場面があります。そういう時に参考にしていただけるよう、どこから始めていけばいいのか、どういうオブジェクトが動いていて、それを表示させるものをどうやって連動させていくのか、という説明しています。文量としては少ないですが、サイトのデザインや機能を、実際に運用する人が触る部分をどう実装するか、について書かせてもらっていますので、テーマを触ったことがない方にも読んでいただけたらうれしいです。

 

書いている途中でバージョンアップがかかって、「この検証いつ終わるんだろう」みたいなことが続いて、大変ではありました。。。ですが、開発バイブルとして、Shopifyのコアな部分をきちんと解説できたかなと思っています。

河野:テーマのバージョンアップは特に激しいですよね。少し前の Online Store 2.0 のときも「どうなっちゃうんだ?!」というくらい変化がありましたし。でもやっぱり Shopify は魅力的で、その原理や構造を理解していけばついていくことも不可能ではないので、キャッチアップして追いかけていくことがすごく大事になります。あと、日本製のテーマが増えてほしいな、と思っていて。今はまだないじゃないですか。これから先、こだわりをもったテーマが出てくれたら良いな、と期待しています。

ちなみに、non-standard world株式会社さんがテーマ周りの書籍を発売(※)されているので、そちらと合わせて読んでいただいて、テーマの開発者の方が増えたら良いなって思っています。

こちらの記事で書籍のインタビューもしています!


Shopifyアプリは開発しやすい

河野:視聴者の方から質問を受け付けたいと思います。で、まずは僕から質問です。

Shopify アプリって癖があると思いますが、エンジニアの皆さんからして、開発はしやすいのでしょうか?「めっちゃ開発しやすい」って思っている方は…?(挙手を促す)

 

5人とも手を挙げてました

佐藤:過去の経験と比べると、作りやすいなと感じています。インターフェイスであったり、制約などを見ていくと「おそらくこうなるだろうな」という予想のとおりに進むことが多く、期待通りになるというか、理にかなっていると言いますか。変な引っ掛かりが基本的なところにはほとんどないので、作りやすいと思いますね。

河野:なるほど。確かに大枠で言う開発の中には「何でこうなるんだろう?」みたいなことに直面することはありますよね。視聴者の方から質問をいただいています。

「API を触ったことがない人でも理解できそうでしょうか?」

佐藤:どういう意図で読むかで変わると思うのですが、多少は触ったことがあった方が良いかもしれません。開発することに比重を置いているので、エンジニア向けではあるかもしれないですね。

小飼:Shopifyアプリって、実態としては普通のWebアプリなんです。Webアプリの上に Shopify のAPI を使ったりとか、インストールといった挙動が被さってくる感じなので、もし読んでみて「手も足も出ないぞ」と感じるときは、「これはWebアプリである」というところに立ち返って分解して考えてもらえると、スムーズに理解が進むのではないかと思います。

河野:個人的には、かなり分かりやすく書かれていると思うんです。ただ「API ってそもそもどういうものか」ということは、別のところで少し学んでおくと読みやすいんじゃないかなと。Shopify のアプリを作ることって、実はすごく分かりやすく分解されているので、API についてはある程度インターネットなどで情報をあらかじめ確認してから見ていただくと、書籍を読んでも理解が進みやすいんじゃないでしょうか。

加藤:API そのものというよりは、Shopify をまったく触ったことがない状態のほうが大変かもしれないですね。オブジェクトの概念が分からなかったり、「フルフィルメントって何?」みたいな感じだと、なかなか理解が難しいとは思います。

河野:確かに、フルフィルメントって言葉、理解しづらいですよね。「発送済み」って言ってほしくなります(笑)。と、いう訳で、API と Shopify の情報をあらかじめ確認していただいてから、書籍を読んでみてください。個人的に、アプリを作るのはすごく楽しいので、ぜひチャレンジしていただきたいな、と思います。


保守のリソースはそこまでかからない

河野:次のご質問いただきました。

「アプリに関して機能の幅や量にもよると思いますが、Shopifyアプリをリリースした後のバージョンアップ対応など、保守的なリソースボリュームに関して是非おうかがいしたいです」

確かに、これは気になりますね。

大道:保守的なリソースボリューム……どれくらいの日数がかかるか、というイメージですかね。

河野:あとは、どれくらい人数を用意しておかなくてはいけないか、とかではないでしょうか。保守にあたって、担当者を常に1人置いておいた方が良いのか、開発時のメンバーだけで良いのか、みたいな。

大道:なるほど。私もつい最近、開発に携わっている Omni Hub のバージョンアップを担当しました。レビューは別の人にやってもらいましたが、基本は1人で、調査を含めて1週間と少しくらいかかった気がします。バージョンアップに関して言うと、Shopify はチェンジログというか、差分をドキュメントでかなり丁寧に書いてくれています。あと、GraphQL の変更に関してはそのスキーマ自体が変わるので、どこが変更になったかは分かりやすく、アップデートはしやすいかなと思います。

 

ただ、コード変更よりそのあとの動作確認周りに時間が必要です。総合して、個人的にはリソースがかかるという印象はそこまでなかったです。

河野:ちなみに大道さんお1人でバージョンアップ担当されたんですか?

大道:前回はそうですね。

河野:それは心理的に不安はないんですか?お腹が痛くなったりとか……。

大道:そこまでないですかね。普通に開発していると、それこそフレームワークのバージョンアップとか、プログラミング言語自体のバージョンアップとかがあると思うので、それと同じような感じです。

河野:これは開発あるある話ですが、後からメンテナンスしやすいように、全体像を理解した上で作っておけば、少ないリソースで保守もできるけれど、最初の作り方を誤るとその後の保守とかのコストが上がっていってしまう可能性はありそうですね。

大道:そうですね。でもやっぱりドキュメントが読みやすく書かれているので、内容の把握という意味では、かなりしやすいと思います。


申請時は日本とカナダの違いに配慮を

河野:次のご質問いただきました!

「アプリを作ってこれから初めて申請をするのですが、皆さんが初めて申請したときにはまった箇所などあればお伺いしたいです」

加藤:これは良い質問ですね。

佐藤:アプリがサポートする範囲がどの程度なのかによっても違いますが、一番はやはり、申請する相手も人間なので、コミュニケーションをいかに上手くやるか、円滑にやるか、というところでしょうか。

 

おそらくですが、レビュー担当の方ってたくさんのアプリを同時に見ていて、一個一個のメールを読み飛ばしている可能性もあるのかな、と思うんですよね。メールには書いてあるはずだけど、読み飛ばされているから話がちぐはぐになっている……ということもあるはず。なので、どこまで伝わっているのか、きっちり確認しながら、箇条書きでくる質問を一個一個つぶしていくのが大事かなと思います。

河野:確かに、相手も人間ですもんね。

佐藤:そうなんですよ。あと一番困ったのは、添付ファイルのリンクが開けなかったこと。

加藤:そんなことあるんですね!

佐藤:あるんですよ。Google Drive とかに公開していても「開かない」と言われたりして。結局、原因が分からなくて同じことを毎回説明するしかないんですが。。。

 

あと、勘違いというか、知らずに Shopify の規約に違反している状態、こちらが間違って解釈した状態で実装しちゃうと、審査はすぐ戻されるので、そういうやらかしをしないというのも大事ですね。

小飼:僕、多分フィードフォースグループで一番最初に Shopifyアプリの申請をしたんです。その時は実験的に LINE と Shopify をつなぐアプリを作ったんですが、ご存知のとおり LINE は日本をはじめ東アジアでのシェアがとても大きいです。審査担当の方っておそらくカナダ本社なんだと思いますが、そもそも LINE をご存知ない、もちろん使ったこともない、アカウントも作れない、そういうところからのスタートなんです。その辺りをぼんやりしたまま進めたら、はまりこんで何往復もすることになってしまいました。

 

そういうローカルに起因する問題、日本とカナダの事情の違いとかであれば、イメージしやすい動画をおいて「アプリは今回用意できないけれど、これを見て確認してね」とか、「確認用にアカウントを用意したから、これを使って」とか、そういう配慮をして渡してあげた方が良かったなと思いましたね。

加藤:審査側に同じ環境を作れないって、はまりポイントだったりしますよね。リワイアもアプリを申請するときに、もちろん手順は全部英語で書くんですけど、結局、管理画面が日本語なので。審査側がその日本語を読めなくて、それで「テストができない」というパターンはありました。手順書とは別に対応表があった方が良かったかもしれません。

 

また、向こうの通貨はカナダドルなので、日本円の設定のものをそのまま動かすと上手く表示ができない、ということもあって。そういう環境の違いが、はまりやすいと思います。

河野:相手の環境が必ずしも日本に準じているわけではないので、「日本の当たり前」が通じないことを考えて、相手も人間であることを踏まえて、申請するのが大事ですね。

佐藤:加藤さんがおっしゃった状況は、本当にそうなんです。私の場合は、動作確認に関係するページのスクリーンショットをすべて撮って、日本語の UI メニューは英訳をつけて送ったので、効果があったと思います。手間はかかりますが、下準備をしっかりしておくとスムーズだと思いますね。


テーマとアプリをどう連携させていくか

河野:次の質問です。

「App blocks への対応方法やベストプラクティスを知りたいのですが、その辺りは書籍に記載ありますでしょうか?」

加藤:これ、(Theme) App Extensions のことですかね。

河野:(Theme) App Extensions についての記載はありますか?

佐藤:一応書いてはありますが、たくさんはないです。最低限は書いてありますが……。

加藤:弊社では「どこポイ」というポイントアプリを出しているのですが、アプリのブロックを作って実装できているところではあります。ベストプラクティスっていうほどではないですが……そもそもドキュメントにあるように作っていけばできるのかな、と思います。

 

実装していくなかで、例えば色を変えたりとか、設定に変更を加えるところは Liquid の箇所を読んでいただいて。Schema タグを使うと、App block として、テーマ側でその設定をノーコードで変更できたりするので、合わせて進めてもらえれば実装できるんじゃないかなと思います。

小飼:アプリ開発者として見た App block 対応法について少しご紹介しますと、新しい Theme App Extensions の仕組みだと、UI パーツに「こういうパラメータを受け取ります」というのを設定しておくと、マーチャントが Shopify の管理画面で GUI を使って設定を入れられる、というかたちで活きるので、そこは使えるところは使っていった方が良いですね。

 

アプリのベンダーからすると Online store 2.0 ってすごく良い仕組みだと思うので、基本的にはそっちを使っていただきたいと思いつつ、マーチャントやテーマの状況を考えるとまだまだ旧式(1.0)から切り替わるのは先かなと想定しているので、実態としては同じものを提供するんだけど、パラメータの受け取り方とかだけ 1.0 と 2.0 を分離しておいて、同じような開発コストでできる仕組みを作っておくと良いかな、というのは感じています。

河野:ありがとうございます。Theme App Extensions はまだまだ情報が整ってないと思うので、なかなかベストプラクティスっていうところは難しいと思います。ですが、マーチャントと、その先のお客さまに対して頻繁に情報をやり取りする部分は、この Theme App Extensions が向いている気がしています。

今までは、まずマーチャントからアプリにコネクトして、アプリとマーチャントがやり取りして、さらにアプリが Shopify とやり取りする……とタイムラグが発生していたんですが、Theme App Extensions だと直接 Shopify とやり取りできるので、情報の行き来が多いところには合っていますよね。ベストプラクティスはこれから溜まっていくと思いますので、その頃に『Shopify開発バイブル part2』を期待したいところですね!

佐藤:App block とか、Shopify App CLI を使って開発するのが一般的ですが、この CLI の機能で、APP Extensions を呼び起こしてくれる機能があって、その使い方も紹介しているんですよね。サンプルに書いた雛形のコードを、そのまま Shopify のアプリの方にアップロードすると実際に動かせますし、どういうコードでどんな風に動くのかっていうのが一通り見られるので、ぜひご参考ください。この辺りは公式ドキュメントでもサラッとしか触れてなかったりするのですが、本書ではしっかり取り上げています。


アプリかカスタマイズかは、ケースバイケース

河野:はい、次の質問です。

「店舗さんが使う上でアプリが止まるって事はとてもリスクがあるので、出来るだけ使わないように…と言う部分もあるのですが、使った方が良いと思いますか? Liquidでカスタマイズで対応できるのであればその方が…と言われる事が多いのですが、変にカスタマイズしすぎて他の人が判らないと言う場合もあったりで、全体を見た時に初心者店舗さんはどちらの方が対応しやすそうかご意見うかがえましたら!」

確かに海外のアプリでよく止まっちゃうものもあったりしますよね。それでお客さまに迷惑がかかるくらいなら、Liquidでいった方が安全だ……みたいな考え方も分かります。実際はどうでしょうか?

小飼:これはもう、ご質問のコメントが正解ですね。Liquid でカスタマイズ対応できるなら基本的にその方が良いですが、Liquid だけでいい感じにやろうとするとそれはそれで大変なので、であればアプリに任せた方が良いこともありますし。

加藤:ケースバイケースかなと思います。ほとんどのアプリが Liquid だけではできないデータを持っていたりとか、何かと連動させたいということになるので、そうなると Liquid だけでっていうのは難しい部分も多いとは思います。正直、その判断も難しい。Liquid でできないのであれば、アプリでも良いかなと思っていて。

 

僕自身はテーマとアプリはある程度分けたいなと思っています。色んな意見はありますし、本書でテーマについて書いている自分が言うのもどうかと思いますが、テーマはあまりカスタマイズしすぎてしまうとアップデートについていけなくなったり、干渉してしまったりと、リニューアルのタイミングなどで大変さが顕在化してしまうリスクはやっぱりあります。極論を言うと、アプリも Liquid のカスタマイズもしないで使うのがベスト。どうしても必要であれば、アプリ側でやるのか、Liquid のカスタマイズでできるのか、その判断が必要ですね。

 

仮に Liquid のカスタマイズができるとしても、テーマのアップデートや切り替えの可能性がある場合は、アプリとかでやった方がシンプルかもしれないな、とも思います。それでもどうしようもない部分は Liquid のカスタマイズにするべきで、というのが個人的な見解ではあります。本に書いているのに変更しない方が良いですとか言っちゃいましたが(笑)

佐藤:あとは App Unity は、そういうアプリ同士の相性の問題を解消できるように活動しているので、App Unity に加盟しているアプリで揃えちゃうというのも一つの選択肢として挙げさせてもらいます。別のアプリがメインのアプリの動きを阻害してるという不具合もたまに聞きますので、確かにアプリを入れすぎないのは大事だと思います。


河野:もう一ついただきました。

「shopify app node の構成が変わったようなのですが、新しいバージョンに関する解説はありますでしょうか?」

小飼:これは JS(JavaScript) 用の構成のことですかね。

加藤:あと CLI で立ち上げたときの構成が若干変わったという話は、このあいだ聞きましたね。Shopify app のコマンドの話かもしれない。

河野:そうです、っておっしゃってくださいました。

大道:本書だと佐藤さんが書いてくれたところになりますね。Shopify App を Ruby on Rails でサンプルアプリを作るというところなので、Node のところには触れていないという回答になりますでしょうか。

佐藤:そうですね、ごめんなさい。Node.js では書いてないんです。

河野:これは、やはり『Shopify開発バイブル part2』の準備が必要ですかね……? でもこういうお話が集まるとウェブで情報を補完しようといった、次の活動につながりますので、ご質問本当にありがとうございました。


河野:ここまでありがとうございました。購入を検討されている方、これから読まれる方に向けて佐藤さん、一言お願いします。

佐藤:改めまして、書籍に関心を寄せてくださった皆さん、本当にありがとうございます。

著者一同、基本的に楽しんで開発をしています。なので、皆さんも一緒に楽しんでいただけたらと思って書きました。ぜひお楽しみいただければ幸いです。

 

いただいたご質問の中に審査の話もありましたが、Shopify には開発以外の大変な箇所もあります。本書ではそういう、道なき道を歩んできた経験を解説しました。大変だった、辛い部分を本書で解決して、Shopify の開発を楽しんでください。よろしくお願いします。

参考リンク