Liquid、JavaScriptなどに関する質問
初めての質問ですので文章が拙かったりするかと思いますがご助力いただけると幸いです。
こちらのアプリではセール商品・売り切れ商品の取得はできるみたいですが新商品というタグをつけることは難しそうでした。
ですので、こちらで記述を付け加えようと思ったのですが商品の販売開始日時をJS側で取得できずに困っています。
liquid側では「product.published_at | date: "%s"」の記述で持ってこれたのですがJSでも取得できるのでしょうか?
取得できるのであれあば取得のやり方、サンプルコードなどを教えていただけると幸いです。
情報不足等している場合は教えていただけると追記します。
解決済! ベストソリューションを見る。
成功
LiquidはJSファイルに書いても動作しないので、liquidファイルのどこかでJSの変数にLiquidのobjectの内容を渡して、それを利用するJSの関数にパラメータで渡すアプローチが良いかと思います。
以下のようなイメージです。
xxx.liquid (collection.liquid など)
<script>
var d = '{{ product.published_at | date: "%s"}}';
fuctionA(d);
</script>
xxx.js (ご指摘のJSファイル)
function functionA(d) {
if (d > ....)
.....
};
単純に、
var d = '{{ product.published_at | date: "%s"}}';
で、画面表示でJSの変数にLiquidの内容を代入するではどうでしょうか?
ご回答ありがとうございます。
var d = '{{ product.published_at | date: "%s"}}';
画面表示でJSの変数にLiquidの内容を代入
上記の部分がよくわからなかったのですが画面表示で代入ということはJS側に記述するということで合ってますでしょうか?
JS側に記述したところ文字列として変数に代入されてしまっているようでして期待通り実行できませんでした。
最初に記載できておりませんでしたが
この記述を入れることで今回対応したいことは商品に「新着」のタグの表示です。
下記をJSで再現することはできるのでしょうか?
成功
LiquidはJSファイルに書いても動作しないので、liquidファイルのどこかでJSの変数にLiquidのobjectの内容を渡して、それを利用するJSの関数にパラメータで渡すアプローチが良いかと思います。
以下のようなイメージです。
xxx.liquid (collection.liquid など)
<script>
var d = '{{ product.published_at | date: "%s"}}';
fuctionA(d);
</script>
xxx.js (ご指摘のJSファイル)
function functionA(d) {
if (d > ....)
.....
};
Shopifyのチェックアウトは世界一コンバージョン率が高いチェックアウトです。2023年4月に実施された世界3大手マネジメントコンサルティング会社の共同調査によると、Sho...
By Minami_ Apr 11, 2024Shopifyのルーツ Shopifyは、スノーボードをオンラインで販売したいという夢を叶えるために2004年に誕生しました。当時は大企業だけがインターネットで販売す...
By JapanGuru Apr 7, 2024リエンゲージメントの自動化で売り上げ向上へ!素敵なオンラインストアを作成し、見込み顧客の携帯へ広告を直接に送信する、またはSNSなどで宣伝すると、お客様がストアに行き着...
By Mirai Mar 24, 2024