Schema.org dla AI Search: ChatGPT, Perplexity i Google AI Mode

Schema.org dla AI Search: ChatGPT, Perplexity i Google AI Mode

Ostatnio zweryfikowano: 22 września 2026
9 min czytania
Przewodnik
500+ projektów WP
Techniczne SEO

Rynek wyszukiwania w Polsce zmienia się u podstaw. Użytkownicy nadal ufają Google, ale w 2026 coraz częściej czytają odpowiedzi generatywne: Google AI Overviews, Perplexity, ChatGPT z wyszukiwaniem oraz wewnętrzne asystenty wiedzy w firmach.

Dla strony oznacza to, że pozycja na pierwszej stronie nie gwarantuje już ruchu organicznego. Jeśli model językowy nie rozłoży Twojej treści na weryfikowalne fakty, marka znika z odpowiedzi, którą użytkownik faktycznie czyta. Schema.org w JSON-LD to kod maszynowy, który tłumaczy niestrukturyzowany polski tekst na jawne fakty dla AI.

Ten przewodnik jest praktyczny i developerski: jak zbudować na WordPressie spójny graf danych, który wzmacnia autorytet i cytowania w silnikach generatywnych.

AEO celuje w bycie wybranym jako odpowiedź. GEO celuje w bycie cytowanym jako źródło w odpowiedziach generowanych. Oba potrzebują tego samego fundamentu: encji czytelnych dla maszyn, jasnych bloków odpowiedzi i stron crawlable. Schema.org to nie opcjonalna ozdoba rich results - to wspólny język tych systemów, opisany w specyfikacji Schema.org i w przewodnikach Google o danych strukturalnych.

#1. Dlaczego semantyka ma znaczenie na polskim rynku

Polski to mniejszy obszar językowy niż angielski w globalnych korpusach treningowych. Modele radzą sobie z językiem, ale lokalne firmy, NIP/KRS, VAT i branżowy żargon nadal generują niejednoznaczność, gdy wszystko jest tylko freestyle’owym tekstem.

Ta sama logika interoperacyjności, którą stosuje się do danych publicznych, dotyczy dziś stron komercyjnych:

  • Od słów kluczowych do encji: Modele nie liczą powtórzeń w H2. Szukają węzłów w Knowledge Graph. Firma to nie ciąg znaków, tylko Organization z identyfikatorem, lokalizacją, osobami odpowiedzialnymi i certyfikatami.
  • Gęstość faktów i bezpieczeństwo cytowania: Gdy Perplexity odpowiada o WooCommerce albo dostępności cyfrowej (WCAG), wybiera źródła ze strukturalnymi, jednoznacznymi twierdzeniami. Schema.org obniża koszt parsowania.
  • Dostępność i czytelność dla maszyn: Semantyczny HTML plus precyzyjne JSON-LD wspiera wymagania dostępności i crawlerów LLM.

W praktyce: sklep z 30+ wtyczkami i TTFB 1,8 s oraz witryna Elementora padająca pod Black Friday to dwa różne problemy - ale oba stają się niewidoczne dla AI, jeśli brak spójnego grafu Organization → Person → TechArticle. Na polskim rynku dochodzi trzeci wzorzec: mocny opis usług w HTML, a schema generowane przez wtyczkę SEO bez about/sameAs do Wikidata - wtedy model „widzi” tekst, ale nie potrafi zakotwiczyć encji.

#2. Architektura JSON-LD @graph w WordPressie

Częsty błąd: fragmentaryczne schema. Wiele wtyczek wypisuje trzy osobne bloki <script type="application/ld+json"> dla witryny, autora i artykułu. Każdy blok to wyspa; wyszukiwarka zgaduje, czy autor A należy do organizacji B.

Podejście profesjonalne: jeden graf przez klucz @graph. Każda encja ma stabilne @id, a relacje idą przez te ID.

#Przykład powiązanego grafu WordPress

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Organization",
      "@id": "https://wppoland.com/#organization",
      "name": "WPPoland",
      "url": "https://wppoland.com",
      "logo": {
        "@type": "ImageObject",
        "@id": "https://wppoland.com/#logo",
        "url": "https://wppoland.com/images/logo.png",
        "caption": "WPPoland Logo"
      },
      "sameAs": [
        "https://www.wikidata.org/wiki/Q13166",
        "https://github.com/wppoland"
      ]
    },
    {
      "@type": "Person",
      "@id": "https://wppoland.com/#author-mariusz",
      "name": "Mariusz Szatkowski",
      "jobTitle": "Lead WordPress Architect",
      "worksFor": {
        "@id": "https://wppoland.com/#organization"
      }
    },
    {
      "@type": "TechArticle",
      "@id": "https://wppoland.com/pl/schema-org-ai-search-aeo-geo-przewodnik-2026/#article",
      "isPartOf": {
        "@type": "WebSite",
        "@id": "https://wppoland.com/#website",
        "name": "WPPoland",
        "url": "https://wppoland.com"
      },
      "headline": "Schema.org dla AI Search: ChatGPT, Perplexity i Google AI Mode",
      "inLanguage": "pl-PL",
      "datePublished": "2026-03-21T18:00:00+00:00",
      "dateModified": "2026-09-20T18:00:00+00:00",
      "author": {
        "@id": "https://wppoland.com/#author-mariusz"
      },
      "publisher": {
        "@id": "https://wppoland.com/#organization"
      },
      "mainEntityOfPage": "https://wppoland.com/pl/schema-org-ai-search-aeo-geo-przewodnik-2026/"
    }
  ]
}

Silnik AI od razu widzi: zweryfikowana osoba, ustalona organizacja, datowany artykuł fachowy. To wzmacnia sygnały E-E-A-T.

#3. Kotwiczenie encji wobec źródeł autorytatywnych

Właściwości about, mentions i sameAs usuwają niepewność. To Entity Disambiguation.

Gdy tekst mówi o “hostingu w chmurze” albo “dostępności cyfrowej”, znaczenia dryfują. Stałe URI w rejestrach autorytatywnych mówią modelowi, o co chodzi:

  • Wikidata: globalne ID encji obecne w zbiorach treningowych dużych modeli.
  • Rejestry firmowe: NIP/KRS lub stabilny profil w polu identifier / sameAs, gdy to ma sens prawny.
  • Dokumentacja Schema.org i Google Structured Data: źródła implementacji, nie wymyślone procenty cytowań.
"about": [
  {
    "@type": "Thing",
    "name": "Schema.org",
    "sameAs": "https://www.wikidata.org/wiki/Q3475322"
  },
  {
    "@type": "Thing",
    "name": "Sztuczna inteligencja",
    "sameAs": "https://www.wikidata.org/wiki/Q11660"
  }
],
"mentions": [
  {
    "@type": "SoftwareApplication",
    "name": "WordPress",
    "sameAs": "https://www.wikidata.org/wiki/Q13166"
  }
]

Oficjalne odniesienia: dokumentacja Schema.org oraz dane strukturalne Google. To są źródła implementacji - nie blogowe podsumowania z nieudokumentowanymi procentami.

#4. Kluczowe typy schema dla AEO i cytowań

AEO dostarcza gotowe bloki odpowiedzi. Trzy typy szczególnie działają na stronach eksperckich:

#FAQPage: struktura pod bezpośrednie cytowanie

Silniki generatywne szukają wzorców pytanie-odpowiedź, np. o upgrade WordPressa albo błędy checkoutu WooCommerce.

Zasady skutecznego FAQ pod AEO:

  1. Pytanie w name jak realne zapytania użytkowników.
  2. Odpowiedź w acceptedAnswer.text zaczyna się od wniosku w pierwszym zdaniu (Answer-First).
  3. Bez floskuł marketingowych; metodologia, ramy czasowe lub kryteria mierzalne.

#SpeakableSpecification: głos i streszczenia

speakable oznacza akapity nadające się do odczytu ustnego przez asystentów multimodalnych.

"speakable": {
  "@type": "SpeakableSpecification",
  "cssSelector": [
    "#introduction",
    ".executive-summary"
  ]
}

#HowTo: instrukcje krok po kroku

Przewodniki techniczne z HowTo da się pokazać w czacie jako numerowaną listę z narzędziami i czasem. W tematach WordPress modeluj migracje, warming cache, audyty bezpieczeństwa albo pipeline wdrożeń jako prawdziwe kroki - nie jako akapity marketingowe. Każdy krok potrzebuje jasnego name i text wykonywalnego bez wcześniejszej wiedzy. Jeśli wymieniasz narzędzia (WP-CLI, Composer, Redis), trzymaj nazwy stabilne, żeby entity linking i Speakable trafiały w ten sam leksykon.

#5. Handel i dane transakcyjne: PLN i VAT

Dla sklepów WooCommerce na rynku PL precyzyjne dane produktu są kluczowe dla asystentów zakupowych. Oczekiwania wobec płatności, dostawy i VAT powinny znaleźć się w obiekcie Offer - bez wymyślania cen katalogowych w tekście redakcyjnym.

{
  "@type": "Product",
  "name": "Audyt bezpieczeństwa WordPress dla przedsiębiorstw",
  "image": "https://wppoland.com/images/sikkerhetsrevisjon.avif",
  "description": "Techniczny audyt bezpieczeństwa i wydajności złożonych instalacji WooCommerce i WordPress.",
  "sku": "SEC-AUDIT-2026",
  "offers": {
    "@type": "Offer",
    "url": "https://wppoland.com/pl/kontakt/",
    "priceCurrency": "PLN",
    "priceSpecification": {
      "@type": "PriceSpecification",
      "valueAddedTaxIncluded": true,
      "priceCurrency": "PLN"
    },
    "availability": "https://schema.org/InStock",
    "acceptedPaymentMethod": [
      "https://schema.org/CreditCard"
    ]
  }
}

Zawsze ISO (PLN), jawny VAT i - gdy dotyczy - hasMerchantReturnPolicy. Kwoty należą do oferty i koszyka, nie do artykułu blogowego jako “statystyka”.

#6. Implementacja techniczna w WordPressie bez zbędnych wtyczek

Wiele wtyczek SEO blokuje własne relacje @graph i linki Wikidata. Lekkie rozwiązanie: funkcja pomocnicza na wp_head albo generacja przy buildzie frontendu (np. Astro).

#Snippet PHP do dynamicznego JSON-LD

/**
 * Wstrzykuje czysty graf JSON-LD do nagłówka witryny.
 */
function wppoland_render_semantic_jsonld(): void {
    if ( is_admin() ) {
        return;
    }

    $graph = array(
        '@context' => 'https://schema.org',
        '@graph'   => array(),
    );

    $org_node = array(
        '@type' => 'Organization',
        '@id'   => home_url( '/#organization' ),
        'name'  => get_bloginfo( 'name' ),
        'url'   => home_url( '/' ),
    );
    $graph['@graph'][] = $org_node;

    if ( is_singular( 'post' ) ) {
        global $post;

        $article_node = array(
            '@type'            => 'TechArticle',
            '@id'              => get_permalink( $post->ID ) . '#article',
            'headline'         => get_the_title( $post->ID ),
            'datePublished'    => get_post_time( 'c', true, $post->ID ),
            'dateModified'     => get_post_modified_time( 'c', true, $post->ID ),
            'inLanguage'       => 'pl-PL',
            'publisher'        => array( '@id' => home_url( '/#organization' ) ),
            'mainEntityOfPage' => get_permalink( $post->ID ),
        );

        $graph['@graph'][] = $article_node;
    }

    echo "\n" . '<script type="application/ld+json">' . "\n";
    echo wp_json_encode( $graph, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT );
    echo "\n" . '</script>' . "\n";
}
add_action( 'wp_head', 'wppoland_render_semantic_jsonld', 2 );

Bez zewnętrznych zależności, małe obciążenie, pełna kontrola nad grafem. Jeśli jedziesz headless na Astro albo Next.js, ta sama logika @graph należy do pipeline builda zamiast wp_head - ale identyfikatory encji muszą być identyczne po stronie CMS i frontendu, inaczej graf znów rozpadnie się na wyspy. W projektach PL często widać też rozjazd między polskim HTML a angielskim inLanguage w schemacie; trzymaj locale zgodne z kanonicznym URL.

#7. Strategia crawlerów LLM i robots.txt

Schema.org niewiele da, jeśli jednocześnie blokujesz agentów indeksujących AI w robots.txt. Strach przed scrapingiem skłonił wiele witryn do blokady wszystkich botów - i zniknięcia ze źródeł Perplexity oraz ChatGPT Search.

Zrównoważona konfiguracja rozróżnia agentów wyszukiwania od czystych scraperów treningowych:

User-agent: *
Allow: /

User-agent: GPTBot
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: ClaudeBot
Allow: /

Disallow: /wp-admin/
Disallow: /search/

Sprawdzaj logi serwera pod kątem tych user-agentów i utrzymuj stabilne czasy odpowiedzi. Jeśli blokujesz scrapery treningowe, zrób to świadomie - i nie stosuj tej samej reguły do agentów wyszukiwania.

#8. Walidacja i typowe błędy

Dane strukturalne działają pod AEO dopiero wtedy, gdy opisują tę samą treść, którą człowiek widzi w przeglądarce. Workflow ma być krótki i powtarzalny:

  1. Otwórz podgląd strony i sprawdź, czy FAQ, autor oraz dane organizacji są widoczne - nie tylko w markupu.
  2. Przetestuj URL w Google Rich Results Test; od razu popraw brakujące pola obowiązkowe i konflikty typów.
  3. Zderz JSON-LD ze Schema Markup Validator, szczególnie przy relacjach @graph.
  4. Po aktualizacjach wtyczek testuj ponownie: Rank Math, Yoast i rozszerzenia checkoutu często dopisują drugie węzły Offer lub Organization.

Typowe wpadki na polskim rynku: odpowiedzi FAQ tylko w schemacie; Person bez worksFor; mieszane priceCurrency (PLN/EUR) na jednej domenie; selektory Speakable bez pasujących ID w CSS; NIP/KRS w stopce inne niż w węźle Organization. Każdy z tych przypadków obniża pewność cytowania, bo model dostaje sprzeczne sygnały.

Dla sklepów z BLIK i wieloma bramkami płatności warto raz zinwentaryzować: które szablony emitują JSON-LD, kto pilnuje konwencji @id (/#organization, /#website, #article) oraz gdzie staging i produkcja się rozjeżdżają. Bez tej dyscypliny kolejna zmiana motywu znów zostawi trzy wyspy.

#9. Mierzenie widoczności bez wymyślonych wskaźników

Nie ma publicznej, uniwersalnej „stopy cytowań” dla Schema.org. Możesz mierzyć: ręczne próby w ChatGPT Search, Perplexity i Google AI Overviews na kluczowe pytania; ruch referral z tych powierzchni; wrażenia w GSC na zapytaniach bliskich FAQ; różnice w raporcie rich results po zmianach markupu. Zapisuj datę, zapytanie i zaobserwowany cytat - to bardziej wiarygodne niż zmyślone procenty.

#Checklist dla polskich witryn WordPress

Przed produkcją: Rich Results Test, stabilne absolutne @id, brak podwójnych węzłów Offer z wtyczek płatności. Jeden czysty graf bije trzy wtyczki z osobnymi wyspami.

  1. Przejdź na spójne @graph: połącz organizację, osobę i artykuł stałymi ID.
  2. Podłącz encje zewnętrzne: sameAs i about wobec Wikidata.
  3. Ustrukturyzuj bloki odpowiedzi FAQPage: precyzyjne pytanie, wniosek w pierwszym zdaniu.
  4. Waliduj względem standardów: Google Rich Results Test i Schema Markup Validator.
  5. Otwórz właściwe crawlery: robots.txt zezwala agentom AI ukierunkowanym na wyszukiwanie.

Potrzebujesz technicznej oceny widoczności w nowych powierzchniach wyszukiwania? Zobacz optymalizację GEO i LLMO albo napisz przez kontakt po bezpłatną wstępną ocenę zakresu. Sprawdzamy spójność grafu, uprawnienia crawlerów i strukturę FAQ - bez generycznych slajdów audytowych i bez wymyślonych wskaźników cytowań.

Następny krok

Przekuj artykuł w realne wdrożenie

Pod tym wpisem dokładam linki, które domykają intencję użytkownika i prowadzą dalej w strukturze serwisu.

Chcesz wdrożyć ten temat na swojej stronie?

Jeśli zależy Ci na widoczności w Google i systemach AI, mogę przygotować architekturę treści, FAQ, schema i linkowanie pod GEO, AEO i SEO.

Powiązany klaster

Sprawdź inne usługi WordPress i bazę wiedzy

Wzmocnij swój biznes dzięki profesjonalnemu wsparciu technicznemu w kluczowych obszarach ekosystemu WordPress.

Jaka jest największa różnica między klasycznym SEO a AEO/GEO?#
Klasyczne SEO optymalizuje kliknięcia na liście niebieskich linków. AEO (Answer Engine Optimization) i GEO (Generative Engine Optimization) optymalizują pod to, by modele językowe wyciągały fakty z Twojej strony i cytowały markę jako źródło w zsyntetyzowanych odpowiedziach.
Dlaczego JSON-LD @graph zamiast osobnych skryptów?#
Struktura @graph ustanawia relacje między węzłami. Mówi wyszukiwarce, że artykuł napisała konkretna Person powiązana z Organization, a treść dotyczy encji zdefiniowanej w Wikidata. Osobne tagi tworzą rozproszone wyspy danych.
Które typy schema dają największy zysk cytowań w Perplexity i ChatGPT?#
FAQPage z wnioskiem w pierwszym zdaniu, TechArticle ze szczegółowymi metadanymi autora i datami oraz SpeakableSpecification wskazująca kluczowe akapity.
Jak oddać polskie wzorce płatności i VAT w schemacie Product?#
W obiekcie Offer ustaw priceCurrency na PLN, priceSpecification z valueAddedTaxIncluded zgodnym z Twoim rozliczeniem VAT oraz acceptedPaymentMethod dla metod, które realnie przyjmujesz (karta, przelew, BLIK gdy dotyczy).
Czy nadmiar Schema.org może skończyć się karą od Google?#
Tak. Jeśli dane strukturalne nie odzwierciedlają treści widocznej dla użytkownika, to mylące dane strukturalne - ryzyko działania ręcznego i utraty rich results.

Potrzebujesz FAQ dopasowanego do branży i rynku? Przygotujemy wersję pod Twoje cele biznesowe.

Porozmawiajmy

Polecane artykuły

Czyszczenie treści AI-slop

Diagnostyka YMYL dla WordPress: fałszywe statystyki, zmyślone cytowania, zduplikowane strony AI, błędne daty i wymyślone biogramy zespołu, zanim zniszczą zaufanie, zgodność lub cytowania w AI.