---
site_name: Toret dokumentace
site_url: https://documentation.toret.cz
contact_email: info@toret.cz

title: Dokumentace pluginu Toret AI Markdown
url: https://documentation.toret.cz/toret-ai-markdown/
date: 2026-02-24
modified: 2026-04-29
author: zvojacek
type: page
---

# Dokumentace pluginu Toret AI Markdown

Nacházíte se na stránkách dokumentace pluginu Toret AI Markdown, který pomáhá s technickou optimalizací webu pro AI crawlery. Plugin AI Markdown zakoupíte zde: [Toret AI Markdown](https://toret.cz/produkt/ai-markdown)

Obsah

1. 🤖 Co plugin dělá
 - Dostupné URL
2. Instalace pluginu
3. Aktivace pluginu
4. 🚀 Rychlý start
5. ⚙️ Popis nastavení
 - Obecné nastavení
 -
 - Zaznamenávání přístupů (logování)
6. ✏️ Editor Markdown
7. 🗺️ Sitemap pro AI
8. 🤖 llms.txt
9. 📄 Metabox na stránkách a produktech
10. 🗂️ Nastavení u kategorií
11. 🛒 WooCommerce
12. Pro vývojáře
 - 🪝 WordPress filtry (Hooks)
 -
 - 📌 Konstanty
 -
 - 💾 Cache logika
 -
 - ⚙️ Převodník HTML → Markdown
 -
 - 🔌 AJAX endpointy
 -
 - 🗄️ Databáze – uložené hodnoty

## 🤖 Co plugin dělá

Toret Markdown přidává ke každé stránce WordPressu alternativní výstup ve formátu **Markdown**. Ten je určen primárně pro **AI jazykové modely a agenty** (ChatGPT, Claude, Perplexity…), kteří text v Markdownu zpracovávají přesněji a efektivněji než běžné HTML.

Plugin generuje tři typy výstupů:

- Stránka / příspěvek / produkt—?format=markdown
- Sitemap pro AI—?format=markdown-sitemap
- llms.txt— instrukce a kontext na kořeni webu

### Dostupné URL

| URL | Popis |
| --- | --- |
| `https://vasedomena.cz/stranka/?format=markdown` | Markdown verze libovolné stránky nebo příspěvku |
| `https://vasedomena.cz/?format=markdown-sitemap` | Přehled všech dostupných stránek pro AI agenty |
| `https://vasedomena.cz/llms.txt` | Instrukce a kontext pro AI agenty |

## Instalace pluginu

Po zakoupení pluginu obdržíte e-mailem licenční klíč a odkaz na stažení zip souboru s pluginem. Detailní návod, jak do WordPress nainstalovat plugin z počítače, najdete [zde](https://documentation.toret.cz/instalace-pluginu/).

## Aktivace pluginu

Po instalaci pluginu si otevřete plugin Toret AI Markdown *(Toret Plugins > AI Markdown)*, do příslušného pole vložíte licenční klíč a tlačítkem Ověřit licenci aktivujte.

![Toret AI Markdown - Aktivace pluginu](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-aktivace-pluginu-2.png "Toret AI Markdown - Aktivace pluginu")![Toret AI Markdown - Aktivace pluginu](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-aktivace-pluginu-1024x309.png "Toret AI Markdown - Aktivace pluginu")

## 🚀 Rychlý start

#### 1. Zapněte plugin

V administraci WordPressu přejděte do **Toret plugins > AI Markdown** (záložka *Nastavení*) a ujistěte se, že je přepínač *Plugin je aktivní* zaškrtnutý.

![Toret AI Markdown - Aktivace pluginu](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-aktivace-pluginu-3-1024x339.png "Toret AI Markdown - Aktivace pluginu")

#### 2. Otestujte výstup

Přidejte `?format=markdown` na konec libovolné URL vašeho webu, např.:
`https://vasedomena.cz/stranka/?format=markdown`

#### 3. Nastavte llms.txt

V administraci pluginu přejděte do záložky *llms.txt* a upravte instrukce pro AI agenty. Soubor je pak veřejně dostupný na adrese `https://vasedomena.cz/llms.txt`.

![Toret AI markdown - úprava llms.txt](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-llms-1024x460.png "Toret AI markdown - úprava llms.txt")

#### 4. Zkontrolujte sitemapu

Sitemap pro AI je dostupná na adrese `https://vasedomena.cz/?format=markdown-sitemap`. Obsahuje přehled všech veřejných stránek s jejich popisem.

## ⚙️ Popis nastavení

(Toret Plugins > AI Markdown > Nastavení)

### Obecné nastavení

![Toret AI markdown nastaveni 1024x485](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-nastaveni-1024x485.png "Toret AI markdown nastaveni 1024x485")

#### Značka link v hlavičce (link tag)

Pokud je zapnuto, plugin vloží do `<head>` každé stránky tag `<link rel="alternate" type="text/markdown">`. Moderní AI agenti tento tag rozpoznají a automaticky si načtou Markdown verzi místo HTML — bez jakéhokoliv zásahu z vaší strany.

Pokud je zapnuta volba *Link tag v hlavičce*, plugin vloží do `<head>` každé stránky následující meta tagy:

```
<link rel="alternate" type="text/markdown" href=".../llms.txt" title="Site Context" />
<link rel="alternate" type="text/markdown" href=".../?format=markdown" title="Page Context" />
<link rel="alternate" type="text/markdown" href=".../?format=markdown-sitemap" title="Markdown Sitemap" />
```

#### Robots.txt

Přidá odkaz na llms.txt a sitemapu do souboru robots.txt.

#### Content negotiation

AI agenti, kteří požadují obsah přes hlavičku Accept, dostanou přímo Markdown. Běžné prohlížeče ani uživatelé nejsou ovlivněny.

#### Content signals

Přidá do robots.txt **preference využití** obsahu umělou inteligencí pro AI crawlery.

- AI search: Indexace pro vyhledávače (search=yes) je vždy povolena.
- AI input: AI nástroje mohou citovat obsah
- AI train: Obsah lze využít k trénování nástrojů

#### Widget na nástěnce

Zapne přehled přístupů AI na hlavní stráce (nástěnce) WP administrace.

#### Odkaz v admin liště

Zobrazí odkaz na zobrazení/úpravu Markdown verze v horizontální admin liště na frontendu – pro rychlý přístup.

#### Časový limit HTTP (timeout)

Plugin generuje Markdown tak, že interně načítá (fetchuje) HTML stránky a převádí ho. Timeout určuje, jak dlouho na odpověď čekat. Při pomalém hostingu nebo obzvlášť velkých stránkách doporučujeme zvýšit hodnotu na 30–60 s.

#### Mezipaměť (cache)

Zde vidíte počet stránek s vygenerovanou Markdown verzí a tlačítko pro vymazání mezipaměti.

#### Předgenerovat mezipaměť

Vytvoří a uloží Markdown mezipaměť pro všechny veřejné stránky, příspěvky a produkty. Běží na pozadí v dávkách po 5 — nebude mít vliv na výkon webu.

#### Dogenerovat chybějící

Vygeneruje Markdown cache pouze pro stránky, které ji ještě nemají. Užitečné, když bylo předgenerování přerušeno nebo byly přidány nové stránky.

#### Černá listina URL (slug)

Jeden slug na řádek. Stránky, které jsou na blacklistu, nevrátí Markdown výstup a nezobrazí se ani v sitemapě. Typicky sem patří technické stránky bez relevantního obsahu: `cart`, `checkout`, `my-account`, `thank-you`.

#### Chráněná slova

Zde můžete uvést slova, která se do Markdown přenesou přesně tak, jak jsou – bez dělení či zalamování – pro zachování jejich významu.

### Zaznamenávání přístupů (logování)

![Toret AI markdown - logování přístupů AI](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-logovani-pristupu-AI-1024x193.png "Toret AI markdown - logování přístupů AI")

Plugin loguje každý přístup na `?format=markdown` a `?format=markdown-sitemap` včetně identifikace bota (GPTBot, Claude Bot, Googlebot…). Zaznamenávání je možné vypnout/zapnout checkboxem*Zaznamenávat přístupy do databáze.*

**Max. záznamů logu** – Po překročení limitu se automaticky promazávají nejstarší záznamy. Doporučená hodnota je 500–1000 pro běžné weby.

IP adresy jsou automaticky anonymizovány. Záznamy si prohlédnete v záložce *Přístupy*.

![Toret AI markdown - logování přístupů AI](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-logovani-pristupu-AI-2-1024x274.png "Toret AI markdown - logování přístupů AI")

#### 🤖 Detekce botů

##### Rozpoznávání agenti

Detekce probíhá porovnáváním `User-Agent` hlavičky z prohlížeče (case-insensitive). Rozpoznávané typy a jejich barvy v logu jsou:

- gpt— GPTBot, ChatGPT-User, OAI-Search Bot
- claude— Claude Bot, Claude-User, Claude-Search Bot, Anthropic
- google— Googlebot, Google-Extended, Gemini, Google Other
- bing— Bingbot, Bing Preview, MSNBot
- other_ai— Perplexity Bot, Cohere-AI, You Bot, Diffbot, Byte Spider, Amazon Bot a další
- unknown— nerozpoznaný User-Agent

##### Barvy v logu přístupů

- Zelená– OpenAI / GPTBot
- Oranžová– Anthropic / Claude Bot
- Modrá– Google / Googlebot
- Modrofialová– Bing / Microsoft
- Růžová– Jiní AI roboti (Perplexity, Cohere, Amazon Search Bot, Byte Spider…)
- Šedá– Neznámý návštěvník

## ✏️ Editor Markdown

(Toret Plugins > AI Markdown > Editor)

V Editoru je možné upravovat vytvořené Markdown verze stránek.

![Toret AI markdown - editor markdown](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-editor-markdown-1024x507.png "Toret AI markdown - editor markdown")

#### Jak funguje cache

Plugin generuje Markdown automaticky při každém přístupu. Výsledek se uloží do cache (jako post meta), takže opakované požadavky jsou velmi rychlé a nevytěžují server. Cache se automaticky obnoví při jakékoliv úpravě příspěvku.

#### Ruční editace

V záložce *Editor* můžete Markdown libovolné stránky ručně upravit a uložit. Po uložení se cache **zamkne** — plugin ji už dál nebude automaticky přepisovat. Zámek lze kdykoliv odemknout tlačítkem přímo v editoru.

#### Zamčená cache

Stránky se zamčenou cache jsou v editoru označeny ikonou 🔒. Znamená to, že web AI agentům zobrazí přesně ten obsah, který jste ručně nastavili — plugin ho nepřepíše ani při následné aktualizaci příspěvku.

## 🗺️ Sitemap pro AI

#### Co sitemap obsahuje

Sitemap je přehled všech veřejných stránek, příspěvků a produktů ve formátu Markdown. Pro každou položku obsahuje název, URL, datum úpravy a krátký popis. AI agent ji použije k tomu, aby zjistil, co všechno na webu existuje, a poté si načetl detaily konkrétních stránek.

#### Ruční přepsání

(Toret plugins >AI Markdown > Mapa stránek)

V záložce *Sitemap* můžete dynamicky generovaný obsah přepsat vlastním textem a uložit ho. Tlačítkem *Obnovit dynamickou sitemapu* jednoduše vrátíte automatické generování.

![Toret AI Markdown - editor sitemap](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-editor-sitemap-1024x484.png "Toret AI Markdown - editor sitemap")

#### Limity a řazení

(Toret plugins > AI Markdown > Nastavení > Markdown Sitemap)

V záložce *Nastavení* lze pro každý typ obsahu (stránky, příspěvky, produkty) nastavit maximální počet položek a způsob jejich řazení. Hodnota `-1` znamená výpis bez limitu, 0 skrytí celé sekce.

![Toret AI markdown - sitemap Limity a řazení](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-sitemap-Limity-a-razeni-1024x337.png "Toret AI markdown - sitemap Limity a řazení")

## 🤖 llms.txt

#### K čemu slouží

`llms.txt` je standardizovaný soubor (funguje podobně jako `robots.txt`), který AI agentům říká, jak s vaším webem správně pracovat. Doporučujeme sem napsat: kdo jste, co nabízíte, jaké stránky jsou pro AI nejdůležitější a jaká pro ně platí omezení.

#### Výchozí obsah

Tlačítkem *Obnovit výchozí*v záložce *llms.txt* plugin automaticky vygeneruje základní obsah z dat vašeho WordPressu (název webu, popis, kontakt, URL sitemapy). Výsledek pak stačí jen doplnit nebo ručně upravit.

![Toret AI markdown - soubor llms](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-llms-1-1024x435.png "Toret AI markdown - soubor llms")

## 📄 Metabox na stránkách a produktech

#### Kde se zobrazí

Metabox *Toret Markdown* se zobrazuje v pravém sloupci editoru u každého příspěvku, stránky i produktu. Ukazuje aktuální stav cache (aktuální / nevygenerovaná / vyloučená) a přesné datum posledního generování.

![Toret AI markdown - metabox](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-metabox-1024x362.png "Toret AI markdown - metabox")

#### Generovat / Přegenerovat

Tlačítkem *Generovat* (nebo *Přegenerovat*) spustíte okamžité vygenerování Markdown cache pro danou stránku přímo z administrace, bez nutnosti ji navštívit. Po vygenerování se zobrazí odkaz *Náhled* pro kontrolu výstupu.

#### Vyloučit z Markdown

Stránka nebude vracet žádný Markdown výstup — místo toho se AI zobrazí běžné HTML. Zároveň se nevloží `<link>` tag do hlavičky a daná stránka se nezahrne do sitemapy.

#### Zamknout cache

Zabrání automatickému přegenerování cache při uložení stránky. Hodí se, když jste Markdown ručně upravili v editoru a nechcete, aby ho plugin omylem přepsal. Zámek lze kdykoliv zrušit nebo odemknout přímo v editoru.

#### Skrýt ze sitemapy

Stránka se sice nezobrazí v `?format=markdown-sitemap`, ale její Markdown verze zůstane plně dostupná přes `?format=markdown`. Rozdíl oproti *Vyloučit z Markdown* je ten, že obsah stále existuje, jen se neobjeví v globálním přehledu pro AI.

#### Odkaz do editoru

Odkaz *Upravit Markdown v editoru* v dolní části metaboxu vás přenese přímo do záložky centrálního Editoru s předvybranou aktuální stránkou.

## 🗂️ Nastavení u kategorií

#### Kde se zobrazí

Panel *Toret Markdown* se zobrazuje na stránce úpravy kategorie příspěvků (*Příspěvky → Kategorie*). Pokud je aktivní WooCommerce, funguje naprosto stejně i u kategorií produktů (*Produkty → Kategorie*).

![Toret AI markdown - kategorie](https://documentation.toret.cz/wp-content/uploads/2026/03/Toret-AI-markdown-kategorie.png "Toret AI markdown - kategorie")

#### Vyloučit z Markdown

Stránka kategorie nebude vracet Markdown výstup a nevloží se do ní `<link>` tag v hlavičce. Funguje stejně jako stejnojmenná volba v metaboxu u jednotlivých příspěvků.

#### Skrýt ze sitemapy

Kategorie se nezobrazí v `?format=markdown-sitemap`, ale její Markdown verze zůstane dostupná přes `?format=markdown`. Na stránce úpravy kategorie je také přímý odkaz *Náhled Markdown* pro rychlé zobrazení výstupu.

## 🛒 WooCommerce

#### Produkty v sitemapě

Pokud je WooCommerce aktivní, sitemap automaticky zahrne i produkty včetně jejich ceny, skladovosti a kategorie. V nastavení lze produkty filtrovat podle kategorie nebo omezit jejich celkový počet.

#### Frontmatter produktu

Markdown výstup produktové stránky obsahuje chytře rozšířenou YAML hlavičku s cenou (`price`), měnou (`currency`), skladovostí (`in_stock`) a SKU. AI agent díky tomu zná přesný a aktuální stav produktu bez nutnosti složitě parsovat HTML.

#### Kategorie produktů

Na stránce kategorie produktů v administraci (Produkty → Kategorie) najdete metabox pro případné vyloučení celé kategorie z Markdown výstupu a ze sitemapy.

## Pro vývojáře

### 🪝 WordPress filtry (Hooks)

| Filtr | Popis |
| --- | --- |
| `toret_markdown_post_frontmatter` | Úprava YAML hlavičky postu před uzavřením |
| `toret_markdown_post_output` | Výsledný Markdown stránky / produktu |
| `toret_markdown_term_output` | Výsledný Markdown taxonomie (kategorie, tag) |
| `toret_markdown_archive_output` | Výsledný Markdown archivu, homepage, shopu |
| `toret_markdown_sitemap_pages_args` | Argumenty `get_pages()` v sitemapě |
| `toret_markdown_sitemap_posts_args` | Argumenty `get_posts()` v sitemapě |
| `toret_markdown_sitemap_products_args` | Argumenty `wc_get_products()` v sitemapě |
| `toret_markdown_sitemap_products` | Pole produktů po načtení (filtrování objektů) |
| `toret_markdown_sitemap_output` | Celý výsledný text sitemapy |

#### `toret_markdown_post_frontmatter`

Umožňuje upravit YAML frontmatter příspěvku/stránky **před** uzavíracím `---`. Parametry: `string $frontmatter`, `WP_Post $post`.

```
add_filter( 'toret_markdown_post_frontmatter', function( $fm, $post ) {
 $fm .= 'author: ' . get_the_author_meta( 'display_name', $post->post_author ) . "n";
 return $fm;
}, 10, 2 );
```

#### `toret_markdown_post_output`

Výsledný Markdown příspěvku/stránky včetně frontmatteru. Parametry: `string $markdown`, `WP_Post $post`.

```
add_filter( 'toret_markdown_post_output', function( $md, $post ) {
 return $md . "nn---n*Generováno automaticky.*n";
}, 10, 2 );
```

#### `toret_markdown_term_output`

Výsledný Markdown stránky taxonomie (kategorie, tag). Parametry: `string $markdown`, `WP_Term $term`.

#### `toret_markdown_archive_output`

Výsledný Markdown archivní stránky (homepage, shop, archive, search). Parametry: `string $markdown`, `string $type`, `string $title`.

#### `toret_markdown_sitemap_pages_args`

Argumenty předávané funkci `get_pages()` při generování sitemapy. Parametr: `array $args`.

#### `toret_markdown_sitemap_posts_args`

Argumenty předávané funkci `get_posts()` při generování sitemapy. Parametr: `array $args`.

#### `toret_markdown_sitemap_products_args`

Argumenty předávané funkci `wc_get_products()` při generování sitemapy. Parametr: `array $args`.

#### `toret_markdown_sitemap_products`

Pole WooCommerce produktů po načtení, před jejich renderováním do sitemapy. Umožňuje filtrovat nebo libovolně seřadit objekty. Parametr: `array $products`.

#### `toret_markdown_sitemap_output`

Celý výsledný text dynamicky generované sitemapy. Parametr: `string $output`.

### 📌 Konstanty

| Konstanta | Hodnota | Popis |
| --- | --- | --- |
| `TORET_MARKDOWN_CACHE_KEY` | `_toret_markdown_cache` | Post meta klíč pro uložený Markdown |
| `TORET_MARKDOWN_META_EXCLUDE` | `_toret_markdown_exclude` | Post meta – vyloučení z Markdown výstupu |
| `TORET_MARKDOWN_META_LOCK` | `_toret_markdown_lock` | Post meta – zámek automatické regenerace cache |
| `TORET_MARKDOWN_META_SITEMAP_EXCLUDE` | `_toret_markdown_sitemap_exclude` | Post meta – skrytí ze sitemapy |
| `TORET_MARKDOWN_TERM_EXCLUDE` | `_toret_markdown_exclude` | Term meta – vyloučení kategorie z Markdown |
| `TORET_MARKDOWN_TERM_SITEMAP_EXCLUDE` | `_toret_markdown_sitemap_exclude` | Term meta – skrytí kategorie ze sitemapy |
| `TORET_MARKDOWN_LOG_OPTION` | `toret_markdown_access_log` | Options klíč pro log přístupů |
| `TORET_MARKDOWN_LOG_MAX` | `500` | Výchozí max. počet záznamů logu |

### 💾 Cache logika

#### Ukládání

Vygenerovaný Markdown se ukládá jako post meta s klíčem `_toret_markdown_cache` spolu s časovým razítkem v `_toret_markdown_generated_at`. Cache se používá pouze pro příspěvky/stránky/produkty — pro termy (kategorie) a archivy se generuje vždy dynamicky.

#### Invalidace

Cache se automaticky smaže při uložení nebo smazání příspěvku (`save_post`, `before_delete_post`), pokud na ní není nastaven zámek (`_toret_markdown_lock`). Ruční smazání celé cache pro celý web je dostupné v záložce Nastavení.

#### Generování

Plugin generuje Markdown tak, že si interně stahuje (fetchuje) HTML stránky přes `wp_remote_get()` a parsuje výsledek vlastním DOM konvertorem (`toret_html_to_markdown()`). K URL se přidává speciální parametr `_tmcb={timestamp}` pro efektivní obejití CDN cache (Cloudflare apod.).

### ⚙️ Převodník HTML → Markdown

#### Implementace

Plugin k převodu nepoužívá žádnou externí knihovnu. Převod zajišťuje nativní PHP `DOMDocument` v kombinaci s rekurzivním walkerem `toret_dom_node_to_markdown()`. Výstup na konci prochází čistící funkcí `toret_cleanup_markdown()`.

#### Zahozené tagy

Obsah tagů `<script>`, `<style>`, `<form>`, `<noscript>`, `<canvas>` a `<svg>` se zcela ignoruje a do finálního výstupu se vůbec nepřenáší.

#### Složité seznamy

Plugin automaticky detekuje „složité“ elementy `<ul>` (např. blog listing, výpis produktů). Položky delší než 100 znaků nebo ty obsahující nadpisy se pak renderují jako jasné sekce oddělené `---` místo klasických odrážek.

#### Cloudflare email

Plugin rozpozná Cloudflare email ochranu (`/cdn-cgi/l/email-protection#…`) a automaticky dekóduje skutečnou e-mailovou adresu přímo do čitelného výstupu.

### 🔌 AJAX endpointy

| Action | Nonce | Popis |
| --- | --- | --- |
| `toret_markdown_generate` | `toret_markdown_ajax_generate` | Vygeneruje nebo přegeneruje Markdown cache pro daný `post_id`. Vyžaduje administrátorské oprávnění `edit_posts`. |
| `toret_markdown_unlock_cache` | `toret_markdown_unlock_cache` | Odemkne zamčenou cache příspěvku — smaže meta `_toret_markdown_lock`. Vyžaduje oprávnění `edit_post` pro daný post. |

### 🗄️ Databáze – uložené hodnoty

| Option / Meta klíč | Typ | Popis |
| --- | --- | --- |
| `toret_markdown_options` | option | Veškerá nastavení pluginu jako serializované pole |
| `toret_markdown_access_log` | option | Log přístupů jako JSON pole (max. záznamů dle nastavení) |
| `toret_markdown_sitemap_content` | option | Ručně přepsaný obsah sitemapy (prázdné = dynamické generování) |
| `toret_markdown_llms_content` | option | Obsah souboru llms.txt |
| `_toret_markdown_cache` | post meta | Vygenerovaný Markdown obsah příspěvku |
| `_toret_markdown_generated_at` | post meta | Datum a čas posledního vygenerování cache |
| `_toret_markdown_exclude` | post/term meta | Vyloučení z Markdown výstupu |
| `_toret_markdown_lock` | post meta | Zámek automatické regenerace cache |
| `_toret_markdown_sitemap_exclude` | post/term meta | Skrytí ze sitemapy |