Международным магазинам Shopify часто нужны разные каналы поддержки по регионам. JavaScript темы может вызвать https://my.ipin.io/info и показать подходящую ссылку поддержки.
Описание API
Браузерный вызов проверяет IP посетителя и возвращает его IP, страну, регион и город. Это подходит для регионального отображения.
{"ip":"185.220.236.7","country":"TW","region":"Taiwan","city":"Taipei"}
Сценарии применения
Эти сценарии показывают ценность IP-интерфейса и четко разделяют IP сервера и IP посетителя.
- Эти сценарии показывают ценность IP-интерфейса и четко разделяют IP сервера и IP посетителя.
- Как показывать ссылки поддержки по IP в Shopify
- Описание API
- Рекомендации по SEO и UX
Логика реализации
Перед реализацией определите инициатора запроса: серверные запросы возвращают IP сервера, браузерные — IP посетителя.
- Перед реализацией определите инициатора запроса: серверные запросы возвращают IP сервера, браузерные — IP посетителя.
- Браузерный вызов проверяет IP посетителя и возвращает его IP, страну, регион и город. Это подходит для регионального отображения.
- Все примеры ниже напрямую используют
https://my.ipin.io/info, комментарии и тексты интерфейса локализованы. - Контент по умолчанию должен быть полным и читаемым, а региональный контент — улучшением. Поисковые системы получают стабильный контент, а страница остается рабочей при сбое API.
Пример кода
Все примеры ниже напрямую используют https://my.ipin.io/info, комментарии и тексты интерфейса локализованы.
theme.liquid
<a class="ipin-support-btn" href="/support">Support</a>
<script>
document.addEventListener("DOMContentLoaded", async function () {
const buttons = document.querySelectorAll(".ipin-support-btn");
const map = { TW: "/support/tw", US: "/support/us", JP: "/support/jp" };
try {
// Браузерный вызов /info определяет IP посетителя.
const info = await fetch("https://my.ipin.io/info").then(res => res.json());
buttons.forEach(btn => btn.href = map[info.country] || "/support");
} catch (e) {
// При ошибке API сохраняется значение по умолчанию.
buttons.forEach(btn => btn.href = "/support");
}
});
</script>
Рекомендации по SEO и UX
Контент по умолчанию должен быть полным и читаемым, а региональный контент — улучшением. Поисковые системы получают стабильный контент, а страница остается рабочей при сбое API.
Частые ошибки
Следующие проблемы влияют на точность статьи, применимость кода и доверие к описанию API.
- Следующие проблемы влияют на точность статьи, применимость кода и доверие к описанию API.
- Контент по умолчанию должен быть полным и читаемым, а региональный контент — улучшением. Поисковые системы получают стабильный контент, а страница остается рабочей при сбое API.
- Перед реализацией определите инициатора запроса: серверные запросы возвращают IP сервера, браузерные — IP посетителя.
- Эти сценарии показывают ценность IP-интерфейса и четко разделяют IP сервера и IP посетителя.
Итог
Браузерный вызов проверяет IP посетителя и возвращает его IP, страну, регион и город. Это подходит для регионального отображения.
Частые вопросы
Вопросы ниже подготовлены специально для этой статьи и напрямую связаны с реализацией.