GUARDLABS · SHOPIFY Наш стенд, зібраний для демонстрації

Liquid тема + AI-search SEO

Shopify, який читають AI

Покупці дедалі частіше питають про товар у ChatGPT і Perplexity, а не в Google. Ми зібрали живий стенд: одна сторінка товару у двох рендерах, з повною JSON-LD розміткою та без неї, плюс скрипт-аудитор, який доводить різницю фактом, а не словами.

Живий стенд Справжній Liquid, не мокап Product + Offer + FAQ + Breadcrumbs llms.txt для AI-краулерів

Де болить

Чому магазин втрачає покупця ще до кліку

01

Покупець питає в AI, а не гуглить

Агент не рендерить вітрину, він читає структуровані дані. Якщо в картці товару немає Product і Offer, агенту нема чого цитувати, і він радить конкурента з розміткою.

02

Тема з коробки мовчить

Стандартний head ставить голий title і все. Без schema Google не показує ціну, наявність і зірки у видачі, сніпет виглядає бідно і CTR просідає.

03

SEO-апки замість одного сніпета

Магазини вішають кілька платних апок, які дублюють одна одну і сповільнюють стор. Та сама розмітка пишеться в темі одним Liquid-сніпетом: без абонплати і без зайвих запитів.

Що зроблено

Кастомна тема: 7 файлів, кожен можна відкрити

  • jsonld-product.liquidProduct, Offer, AggregateRating: назва, ціна, наявність, бренд, рейтинг
  • jsonld-faq.liquidFAQPage: готові пари питання і відповідь, які AI цитує напряму
  • jsonld-breadcrumbs.liquidBreadcrumbList: структура каталогу для пошуку
  • ai-meta.liquidtitle-формула, description, canonical, Open Graph product, robots
  • main-product.liquidсекція товару: галерея, ціна зі знижкою, акордеони, видимий FAQ
  • llms.txtменю магазину для AI-краулерів простим текстом
  • render.py + audit.pyрендер стенду через python-liquid і аудит обов'язкових полів
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": {{ product.title | json }},
  "image": [ {{ image.abs_src | json }} ],
  "sku": {{ product.sku | json }},
  "brand": { "@type": "Brand",
    "name": {{ product.vendor | json }} },
  "offers": {
    "@type": "Offer",
    "price": {{ product.price | money_amount | json }},
    "priceCurrency": {{ shop.currency | json }},
    "availability": "https://schema.org/InStock"
  }
}
</script>

Фрагмент jsonld-product.liquid, повний файл відкривається за посиланням

Живий результат

Одна сторінка, два рендери

Лампа ARBOR на письмовому столі, версія сторінки без розмітки
До: тема з коробки

Голий head, нуль JSON-LD

Людина бачить нормальну картку товару. Пошук і AI бачать тільки title. Ні ціни, ні наявності, ні FAQ.

Відкрити before.html
Дубова лампа ARBOR на світлому фоні, оптимізована версія сторінки
Після: наша тема

Product, Offer, FAQ, Breadcrumbs

Той самий вигляд для людини. Для машин: три JSON-LD блоки, canonical, OG product і посилання на llms.txt.

Відкрити optimized.html

Різниця фактом

Що саме бачать машини

Сигналbefore.htmloptimized.html
Titleголий, без ціни й наявностіформула: товар + ціна + наявність + бренд
Meta descriptionнемаєє, 155 символів з опису
Canonicalнемаєє
Open Graph productнемаєog:type, ціна, валюта, наявність
JSON-LD Product + Offerнемаєвсі обов'язкові поля Rich Results
JSON-LD FAQPageнемає4 питання з відповідями
JSON-LD BreadcrumbListнемає3 рівні каталогу
llms.txt для AI-краулерівнемаєзлінкований у head
Ціна повної розмітки0 байт і 0 сигналів+4.7 КБ на сторінку, без жодної апки

Джерело таблиці: audit.json, згенерований скриптом audit.py по обох рендерах

Як перевірити

Три перевірки, кожна за хвилину

  1. Порахувати JSON-LD блоки в обох версіях

    У before має бути 0, в optimized рівно 3.

    curl -s https://guardlabs.online/demo/shopify-ai-seo/store/before.html | grep -c 'ld+json' # 0 curl -s https://guardlabs.online/demo/shopify-ai-seo/store/optimized.html | grep -c 'ld+json' # 3
  2. Прогнати сторінку через Google Rich Results Test

    Вставити адресу optimized.html: тест бачить Product, FAQ і Breadcrumbs. Вставити before.html: порожньо.

    https://search.google.com/test/rich-results
  3. Відкрити машинний звіт аудиту

    Скрипт audit.py перевіряє обов'язкові поля Product і Offer та пише результат у audit.json. Обидва файли лежать поруч зі стендом.

    curl -s https://guardlabs.online/demo/shopify-ai-seo/audit.json | python3 -m json.tool

Чесно про цей стенд

Це наш власний демо-стенд, а не клієнтський магазин: бренд ARBOR і товар вигадані, рейтинг і відгуки теж демонстраційні. Стенд показує підхід і якість коду, який ми ставимо в реальні Shopify-теми. Комерційні кейси на Shopify ми чесно позначаємо окремо.