我一直在尝试通过调整Shopify主题的流动代码来按国家/地区过滤产品。但是,我遇到了一个问题,我想用我的Liquid代码访问访问者所在的国家/地区,但无法执行此操作。
我可以使用AJAX / JQuery来获取位置,但是该位置在客户端运行,在此之前,已经在服务器端处理了液体,这使得无法进行过滤。
我已经成功尝试使用AJAX提取位置,但是不知道如何在Liquid代码中使用它。
$.getJSON("https://ipinfo.io", function(data) {
console.log(data.country);
});
答案 0 :(得分:0)
您需要使用customer object和customer_address object。
您还需要检查客户是否首先登录:
{% if customer and customer.default_address %}
Country: {{ customer.default_address.country }}
{% endif %}
答案 1 :(得分:0)
您不能使用Liquid来确定国家。首先,在这个VPN时代,它是不可靠的;其次,Shopify将记录限制为分配给订单的客户的IP地址。
使用客户的建议是最好的选择。如果他们没有登录,那就太糟糕了,您会看到普通的东西。如果已登录,则可以根据地址决定要显示的内容。请注意,即使那样也可能会给您带来一些痛苦。