2014-12-09 61 views
1

如何根據以前保存的cookie加載特定片段? 我想要做的事,如:如何根據shopify中先前保存的cookie加載特定片段?

<script type="text/javascript"> 
    var x = readCookie('cop'); 
    if (!x) { 
     createCookie('cop', 1, 10000); 
     {% assign cookie = true %} 
    }else{ 
     {% assign cookie = false %} 
    } 
</script> 

{% if cookie %} 
    {% include 'landing' %} 
{% else %} 
    {% include 'another_landing' %} 
{% endif %} 

但每一次,cookie將被賦值爲「其他」(假),即使條件進入。

我刪除了cookie的「警察」,但該變量創建的cookie後立即assignet值「假」,所以從來不值「真」。我不明白問題在哪裏。我可以澄清一下嗎?

回答

2

要清理你的困惑,當Shopify呈現模板(包括片段),它是作用於信息服務器端。設置cookie是客戶端操作。因此,您無法通過cookie影響Liquid渲染。如果你想包含一個基於cookie的片段,你應該將片段的結果渲染到DOM中(可能隱藏爲默認值),然後根據cookie的存在或缺失將其暴露給客戶端。

+0

我可以包括片段根據cookie的,但每次的cookie的值是假的,即使在某些時候它是真實的。 – marius 2014-12-09 13:54:13

+0

謝謝!我使用addClass或removeClass(顯示或隱藏),基於cookie與所有剪切包括 – marius 2014-12-09 14:12:00

相關問題