Shopifyの商品ページを下までスクロールするとカートボタンがいなくなってしまうので、何もせず離脱されてしまうのを防ぐため、「カートに入れる」ボタンを追従させたい!と画策しました。
定期商品もあるため、「カートに入れる」ボタンを押すと、1回購入と定期購入をそれぞれ選べる詳細ポップアップを表示させるという仕様にしたので、追従ボタンの設置と、詳細画面作成についてお話しします。
完成イメージ
以下クリックで詳細画面に定期プランと1回購入を両方表示させた例のデモ画面をご確認いただけます。
カートに入れる

商品名
定期便 初回 1,600円 20% OFF |
|
---|---|
※ 2回目以降毎月お届け: 10% OFF |
1回購入 2,000円 |
|
---|
用意するもの
- カートマーク(なくても良し)
- 定期購入商品のBuy Link(定期プランがある場合のみ※ここでは「定期購買」アプリを使用)
例)https://bizmatcha.website/apps/subscription/buy?id=1234567890&selling_plan=1234567890&quantity=1&is_cart=1
※Buy Linkは、「定期購買」アプリのプラン設定から該当プランを選択して、「Buy Linkの作成」ボタンから簡単に作成できます。
仕様の整理
追従ボタン
- 「カートに入れる」というテキストの右にカートマークを設置
- クリックしてポップアップ画面を表示させる
ポップアップ詳細画面
- 定期プランがある場合は、定期プランと1回購入でそれぞれ数量ボックスと「カートに入れる」ボタンを表示
- 定期プランがない場合は、1回購入のみで数量ボックスと「カートに入れる」ボタンを表示
※定期プラン内でも商品ごとに割引有無や割引率など内容が異なる場合には、条件分岐を設置する必要があるので要注意。
では、早速作っていきましょう!
追従ボタンと詳細画面の設定方法
今回はliquidファイルにcssもjavascriptも含めてしまったので、やり方は2ステップで、追従カートボタン用にliquidファイルを新設し、商品ページに埋め込むだけです。
- 設置したいテーマのコード編集からスニペットを新しく作成
(名称はわかりやすいものでOK。ここでは「fixed-cart.liquid」としました。 - main-product.liquidの任意の場所に{% render ‘fixed-cart’ %}と記述
1.スニペットの新設
- 以下の該当コードをコピー
- ★箇所は該当の情報を入れてください。
- 最上部にCSSを入れているので、お好みのスタイルに変えてください。
定期プラン商品がある場合
以下は、デモ同様定期プランがある場合のコードです。定期便では2個まで選べるようにしています。
定期プラン商品なしの場合
以下は1回購入のみの場合のコードです。
まとめ
shopfiyの商品ページに「カートに入れる」ボタンを追従で設置する方法を紹介しました。
色やテキスト、ボタン設置位置や詳細画面の見栄えなどはお好みでカスタマイズしてくださいませ。