売切れボタンが上手く動作しない

Topic summary

Shopifyテーマ「symmetry 2.0」で、バリエーションの一部が在庫切れの場合に「売切れ」ボタンが押下可能になり、在庫切れのバリエーションまでカートに追加されカートページへ遷移してしまう不具合。両方が在庫切れの場合はボタンは非活性で遷移しない。

技術的背景: 売切れボタン押下時も /cart/add.js(カート追加API)を呼ぶ設計で、本来は在庫切れならAPIが失敗して追加されない想定。今回は在庫切れでも追加が成功してしまっている点が異常。

確認事項と試行:

  • 「在庫切れの場合でも販売を続ける」設定が原因の可能性が指摘されたが、対象商品で当該設定はOFFを確認。
  • アプリやカスタマイズのない開発環境でも再現。混在(在庫あり/なし)バリエーション時にのみ、在庫なしがカート投入される挙動を確認。
  • 設定確認手順のスクリーンショットが提示され、手順自体は実施済み。

現状と今後: 解決には至らず。テーマ開発者およびShopifyサポートへ問い合わせ予定。問題は未解決・継続中。

Summarized with AI on February 11. AI used: gpt-5.

現在、symmetryのtheme2.0を利用しています。

商品を登録したさいに、複数のバリエーションがあり、片方が在庫0の場合、売切れボタンがアクティブになってしまいます。

例えば、Tシャツの「赤」「青」のバリエーションを登録し

「赤」は在庫あり、「青」は在庫なしの場合、Tシャツの「赤」を選択すると「カートへ追加する」

「青」を選択すると「売切れ」とボタンが切り替わります。

ここまではいいのですが、その「売切れ」ボタンを押すとカートページへ遷移し、かごに売り切れの商品が追加されてしまいます。

仮に、Tシャツの「赤」「青」どちらも売切れだった場合は、ボタンはアクティブにはならず、カートページには遷移しません。

商品のバリエーションの中に一つでも購入できるアイテムがあると、売り切れの商品までページ遷移してしまうのです。

コードを書き換えて、遷移しないようにできるのが一番なのですが、どこをいじったらいいか見当がつかないため

ご教授いただければ幸いです。

よろしくお願いします。

symmetryが有料のテーマである都合、

コード編集画面を開けず、

具体的な編集箇所をお伝えることが難しいため、

その点についての回答ではないことご容赦ください。

symmetryを開発ストアに、

Tryモードでインストールし、

少し触ってみました。

symmetryを特別にカスタマイズされていない場合、

「SOLD OUT(売り切れ)」ボタンをクリックすると、

/cart/add.js へのAPIコールが行われ(商品をカートに追加する処理とお考えください)、

在庫切れの商品の場合は、そのAPIコールが失敗する、

という流れのようです。

/cart/add.js へのAPIコールが行われ(商品をカートに追加する処理とお考えください)、

symmetryでは(他のテーマもそうかもしれませんが)、

「SOLD OUT(売り切れ)」ボタンであってもクリック時に、

カート投入しようとするのが正常な動作のようです。

(カート投入しようとしても、在庫切れであれば、カート投入処理が、

失敗することを前提に作られているようです。)

そうしますと、

「SOLD OUT(売り切れ)」ボタンをクリックした際に、

カートに追加しようとする動きそのものが異常なわけではなく、

カートに追加できてしまうこと、が異常、ということになるかと思います。

こういった挙動が発生する原因として私が思いつくのは、

商品在庫の設定にて、

「在庫切れの場合でも販売を続ける」

という項目をOnにしている、

ことです。

しかし、この場合、

「SOLD OUT(売り切れ)」ボタンが表示されることがないため、

それはそれで不可解なのですが、

とはいえ思いつくのがそこだけなため、

「在庫切れの場合でも販売を続ける」

という項目をOnになっていないかご確認いただき、

OnになっていればOffにしていただくと良いかもしれません。

手順は下記です。

上記の手順で、チェックを外していただいた後、

「保存」していただき、

しばらくしてからもう一度、

カートに投入されるかどうかをお試しください。

(サーバキャッシュの影響で変更がすぐには反映されません。

保存後、1分以上時間をおいてお試しください。)

「在庫切れの場合でも販売を続ける」がOffになっているにも関わらず、

カート投入ができてしまっている場合は、

Shopifyサポートにお問い合わせいただくか、

テーマ開発者にお問い合わせいただくのが、

良さそうです。

ご参考まで。

(キュー田辺)

アドバイスとご教示ありがとうございます!

「在庫切れの場合でも販売を続ける」について各商品を確認しましたが

チェックは入っておらず、販売を続ける状態ではありませんでした。

アプリやカスタマイズをしていない開発環境で試してみましたが、

バリエーションが複数あり、その中で在庫ありと在庫なしが混在している場合にのみ

在庫なし商品がカートに追加されてしまうみたいでした。。。

テーマ開発者とshopifyセンターに問い合わせてみます。

1 Like