Shopifyのテンプレート「liquid」で、商品販売期間を設定するために表示有効期限を設ける方法

最近Shopiryをいじってます。
どこかでなんとなく「Shopifyが良い」という話を聞きつけて
「うちもShopifyでネットショップを開きたい」という方が増えていますね。

個人的にはカスタマイズできる範囲も広くて面白くいじれるのですが
・カートまわりのカスタマイズは上位プランじゃないとできない
・配送日指定が出来ない(対応する場合は有料のアプリが必要)
など、何も知らないクライアントには先に伝えておかないと
後から揉めそうな部分がいくつかあるので、提案時には気を遣います。。

さて、掲題なのですが、クライアントからある商品を
「〇月〇日の〇時から販売を開始したい」
といったご要望を受けまして、ちょっと調べたところ

とか

といった記事を参考にすれば対応できそうなので
「良いですよ~!対応しておきます!」
と軽く返事をしたのですが、これが災いのもとでした。。
上記の記事をもとに

って感じで実装してみたところ、指定した時間になってもカートが表示されない。。
よくよく調べてみたところ、

このコードが原因で、これだと
「テンプレートが編集された日時」を取得するのみで
「ユーザーがアクセスした日時」を取得するわけでは無い
ようです。

ではliquidで「ユーザーがアクセスした日時」を取得する方法があるか調べてみたのですが。。

分かりませんでした泣

さて、どうしたものかと思ったのですが、
ふと「jQueryで出来んじゃね?」と思いつき、調べてみたところありました。

jQueryだと、現在の日時も簡単に取得できますね。

こんな感じで実装して、とりあえず対応しました。
厳密にいうと、カートのコードは残っているので、強引に買えちゃう人もいないわけじゃないんだけど。。。
とりあえずこれで勘弁してもらいました。。

本当はバシッとliquidだけで対応したかったのだけど。。
もし、もっと良い方法があったらアップデートします。

それでは。。

役に立った 6

役に立ったボタン設置してみました。是非押していってくださいm(__)m(2020年4月設置)

この記事を書いた人

mako110

原宿でWEBディレクターをやっています。
WEB業界に携わって約15年。独立して7年目です。
自分らしく、働きやすく、周りの人の役に立つ。
そんな仕事をゆるゆるとやっています。