Jquery 找不到访问者';s在液体代码中的位置,Shopify

Jquery 找不到访问者';s在液体代码中的位置,Shopify,jquery,ajax,geolocation,shopify,liquid,Jquery,Ajax,Geolocation,Shopify,Liquid,我一直试图通过调整Shopify主题的液态代码,根据国家过滤我的产品。但是,我面临一个问题,我想用我的流动代码访问访问者的国家,但无法做到这一点 我可以使用AJAX/JQuery获取位置,但它在客户端运行,在此之前,liquid已经在服务器端处理,这使得过滤变得不可能 我已经成功地尝试使用AJAX获取位置,但不知道如何在液态代码中使用它 $.getJSON("https://ipinfo.io", function(data) { console.log(data.country); }

我一直试图通过调整Shopify主题的液态代码,根据国家过滤我的产品。但是,我面临一个问题,我想用我的流动代码访问访问者的国家,但无法做到这一点

我可以使用AJAX/JQuery获取位置,但它在客户端运行,在此之前,liquid已经在服务器端处理,这使得过滤变得不可能

我已经成功地尝试使用AJAX获取位置,但不知道如何在液态代码中使用它

$.getJSON("https://ipinfo.io", function(data) {
    console.log(data.country);
});
您需要使用和

您还需要首先检查客户是否已登录:

{% if customer and customer.default_address %}
    Country: {{ customer.default_address.country }}
{% endif %}
您需要使用和

您还需要首先检查客户是否已登录:

{% if customer and customer.default_address %}
    Country: {{ customer.default_address.country }}
{% endif %}

你不能用液体来确定一个国家。首先,在这个VPN时代,它是不可靠的;其次,Shopify将记录限制在分配给订单的客户IP地址上


使用客户的建议是您的最佳选择。如果他们没有登录,太糟糕了,你会显示一般的东西。如果他们已登录,则您可以根据地址决定向他们显示什么。请注意,即使这样,也可能会给你带来一些痛苦。

你不能用液体来确定一个国家。首先,在这个VPN时代,它是不可靠的;其次,Shopify将记录限制在分配给订单的客户IP地址上


使用客户的建议是您的最佳选择。如果他们没有登录,太糟糕了,你会显示一般的东西。如果他们已登录,则您可以根据地址决定向他们显示什么。请注意,即使这样,也可能会给你带来一些痛苦。

这是不可能的。我不能等待客户登录,以便根据客户的国家/地区筛选产品。如果您不能等待客户,则检查用户国家/地区的唯一方法是使用其IP进行地理定位,这不是Shopify问题。你可能会使用第三方地理定位服务,这是不可能的。我不能等待客户登录,以便根据客户的国家/地区筛选产品。如果您不能等待客户,则检查用户国家/地区的唯一方法是使用其IP进行地理定位,这不是Shopify问题。您可能会使用第三方地理定位服务。