
Vitajte pri ultimátnom manuáli pre môj blogový systém!
Tento projekt je výsledkom snahy o vytvorenie nástroja, ktorý je pre mňa ako autora maximálne jednoduchý, no zároveň produkuje profesionálne a robustné výsledky. Dôraz na detail a prevencia chýb boli pri jeho návrhu kľúčové.
V tomto článku vás prevediem všetkými funkciami, ktoré som do systému implementoval, často s pomocou AI. Každú funkciu predstavím formou "Ukážka syntaxe" (ako to napísať) a "Výsledok" (ako to bude vyzerať), aby bol tento manuál maximálne prehľadný a užitočný aj pre mňa do budúcna.
Filozofia systému: Rýchlosť a poriadok

Hlavnou myšlienkou tohto systému je odstrániť technický chaos a umožniť mi sústrediť sa na to najdôležitejšie – na písanie.
- Prehľadná štruktúra: Každý článok má vlastný priečinok pre obrázky (
blog/img/nazov-clanku/) a texty sú roztriedené podľa jazyka (blog/posts/sk/). - Jednoduché písanie: V Markdown sa obrázky vkladajú len menom (
clanok-1), systém sa postará o zvyšok. - Flexibilita formátov: Systém si sám nájde najlepší formát obrázka (preferuje
.webp, ale funguje aj s.pngči.jpg).
Ako funguje priorita metadát (Titulok a Perex)
Pre maximálnu flexibilitu som navrhol 4-úrovňový systém zisťovania titulku a perexu článku, ktorý zaručuje, že sa vždy zobrazí ten najrelevantnejší obsah:
- Priorita č. 1: Priamo v
.mdsúbore. Ak na začiatku súboru uvediem_title:a_perex:, majú absolútnu prednosť. - Priorita č. 2: V jazykovom súbore. Ak v
.mdnič nie je, systém hľadá preklady vlang/blog/{jazyk}.php. To je ideálne pre viacjazyčné verzie, kde sa obsah nemení, len titulok a perex. - Priorita č. 3: Automaticky z obsahu. Ak zlyhajú prvé dve možnosti, systém je dosť inteligentný na to, aby použil prvý nadpis (
# Nadpis) ako titulok a prvý odsek textu akoperex. - Priorita č. 4: Posledná záchrana. Ak zlyhá všetko ostatné (napr. v článku nie je ani nadpis), ako titulok sa použije názov súboru (
slug), aby pole nikdy nezostalo prázdne.
Práca s obrázkami: Inteligentný a odolný systém
Toto je časť, na ktorej som si dal obzvlášť záležať. Každý typ obrázka má presne definovanú a poistenú logiku.
Titulný obrázok (titulka)
Tento obrázok je špeciálny, pretože plní dve úlohy: je prvým obrázkom v článku a zároveň slúži ako náhľad v zozname článkov.
- V detaile článku (
clanok.php): Je to prvý obrázok v texte, automaticky zarovnaný vpravo. - V zozname článkov (
blog.php): Slúži ako hlavný náhľadový obrázok karty.
Pre maximálnu odolnosť voči chybám má systém pre náhľadový obrázok viacúrovňovú poistku:
- Primárne hľadá:
blog/img/slug-clanku/titulka.webp(alebo.png,.jpg). - Ak nenájde (záloha): Hľadá v staršej štruktúre
blog/posts/img/slug-clanku_titulka.webppre spätnú kompatibilitu. - Ak nenájde (inteligentný fallback): Systém začne hľadať univerzálny predvolený obrázok v priečinku
blog/img/defaults/. Najprv skúsiblog_default.webp, potomblog_default.pnga nakoniecblog_default.jpg. - Absolútna istota: Ak by z nejakého dôvodu neexistoval ani jeden z predvolených obrázkov, kód napevno priradí cestu k
blog/img/defaults/blog_default.png.
Vďaka tomuto viacúrovňovému zabezpečeniu karta článku v zobrazení blog nikdy nezostane bez obrázka.
Bežné obrázky (clanok-1, clanok-2, atď.)
Tieto obrázky sa automaticky zarovnávajú striedavo vpravo a vľavo, aby dynamicky obtekali text.
Ako to funguje?
- Automatické zarovnanie: Systém ich automaticky strieda – prvý je vpravo, druhý vľavo, tretí vpravo atď.
- Záleží na poradí, nie na názve: Zarovnanie sa neriadi číslom v názve (napr.
clanok-25vsclanok-34), ale výhradne poradím, v akom sa objavia v.mdsúbore. Môžete ich teda pomenovať akokoľvek, napríkladuvodna-schema, a systém si poradie ustráži. - Názvy:
clanok-1,clanok-2sú len moja osobná konvencia pre poriadok v súboroch.
Ukážka syntaxe:


Výsledok:


Širokouhlý záber (wide)
Pre dôležitý obrázok, ktorý má vizuálne prerušiť text a upútať pozornosť na celú šírku obsahu, stačí do popisu pridať kľúčové slovo wide. Je to ideálne pre panorámy, infografiky alebo dôležité vizuály.
Ukážka syntaxe:

Výsledok:

Interaktívna galéria (gallery)
Prezentácia viacerých obrázkov naraz je vyriešená na mieru vytvorenou galériou s lightboxom.
- Ako na to: Ku každému obrázku, ktorý chcem v galérii, pridám do popisu kľúčové slovo
galleryalebogaleria. - Vlastné popisky: Text za kľúčovým slovom
gallery -sa automaticky použije ako popisok fotky v lightoboxe. - Neobmedzený počet: Neexistuje žiadny limit na počet fotiek v jednej galérii.
- Funkcionalita: Celá galéria vrátane lightboxu, navigácie šípkami a zatvárania je naprogramovaná na mieru.
Ukážka syntaxe:




Výsledok:
Formátovanie textu s Parsedown
V pozadí všetko spracováva knižnica Parsedown. Tu sú ukážky najčastejšieho formátovania.
Zvýraznenie textu
- Pre tučný text použite syntax:
**tučný text**- tučný text - Pre kurzívu použite syntax:
*kurzíva*- kurzíva - Pre
prečiarknutý textpoužite syntax:~~prečiarknutý text~~-prečiarknutý text
Zoznamy:
-
Ukážka syntaxe:
1. Prvá položka 2. Druhá položka - Odsek jedna - Odsek dva -
Výsledok:
- Prvá položka
- Druhá položka
- Odsek jedna
- Odsek dva
Citácie:
Ukážka syntaxe:
> Toto je dôležitá poznámka alebo citát. Zvýrazní sa a oddelí od zvyšku textu.
Výsledok:
Toto je dôležitá poznámka alebo citát. Zvýrazní sa a oddelí od zvyšku textu.
Horizontal rule:
Horizontálna čiara alebo horizontálny oddeľovač (v angličtine "horizontal rule").
Jej hlavným účelom je vizuálne oddeliť od seba rôzne sekcie alebo témy v texte. Vytvoríte ju jednoducho napísaním troch alebo viacerých pomlčiek (---) alebo hviezdičiek (***) na samostatný riadok.
Ukážka syntaxe:
---
Výsledok:
Bloky kódu:
Pre farebné zvýraznenie syntaxe a tlačidlo na kopírovanie stačí použiť značku jazyka (napr. php).
Ukážka syntaxe: - v mojom príklade som musel ešte obaliť kód do "" aby sa dal zobraziť kód so správnym ukončením "```" 3x "option + 1(na macu)". Miesto php môžeme dať napr. css / markdown / plaintext, čo nám príspôsobý vzhľad konkrétnemu kódu.
"```php
/*** Inteligentné hľadanie obrázka v článku.*/
function findImageWithFormat($slug, $imageName) {
$formats = ['webp', 'png', 'jpg', 'jpeg'];
// ... zvyšok kódu ...
return $path;
}
```"
Výsledok:
/*** Inteligentné hľadanie obrázka v článku.*/
function findImageWithFormat($slug, $imageName) {
$formats = ['webp', 'png', 'jpg', 'jpeg'];
// ... zvyšok kódu ...
return $path;
}
Multijazyčnosť bez námahy
Systém je od základu postavený na viacjazyčnosti.
- Každý článok má svoje miesto v priečinku podľa jazyka (
/posts/sk/,/posts/en/). - Ak si prepnete jazyk v hlavičke, systém automaticky načíta preložený obsah.
- Inteligentný Fallback: Ak si prepnete na jazyk, v ktorom preklad neexistuje, systém zobrazí najlepšiu dostupnú verziu (prioritne
SK) a hore zobrazí informačnú lištu. - Prehľad v zozname: V zozname článkov sú nepreložené články vizuálne odlíšené, stmavené a ponúkajú klikateľné vlajky pre jazyky, v ktorých sú dostupné. Tieto karty nie sú klikateľné, aby sa predišlo zmätočnému preklikávaniu.
- Prehľad v detaile: V detaile článku je hneď pod nadpisom sekcia s vlajkami, ktorá umožňuje priame prepnutie na existujúce preklady.
Pro Tip: Váš osobný AI asistent
Tento prompt je výsledkom dlhého ladenia a je navrhnutý tak, aby AI vygenerovala text presne podľa pravidiel tohto systému.
Správaj sa ako expert na tvorbu obsahu a technický redaktor pre osobný blog. Tvojou úlohou je vygenerovať kompletný blogový článok v surovom Markdown formáte, ktorý bude pripravený na skopírovanie a vloženie do súboru.
Výstup musí byť **jeden jediný blok surového textu** bez akýchkoľvek tvojich sprievodných komentárov na začiatku či na konci.
**PRÍSNE PRAVIDLÁ FORMÁTOVANIA PRE MÔJ SYSTÉM:**
1. **Front Matter:** Každý článok musí začať presne dvoma riadkami v tomto formáte:
`_title: [Titulok článku]`
`_perex: [Krátky úvod (max. 2-3 vety)]`
2. **Syntax obrázkov:** VŠETKY obrázky sa vkladajú zjednodušenou syntaxou: ``. NIKDY nepridávaj cestu ani príponu.
3. **Špeciálne typy obrázkov:**
- **Široký obrázok:** V alt texte musí byť kľúčové slovo `wide`. Príklad: ``.
- **Galéria:** V alt texte musí byť kľúčové slovo `gallery`. Príklad: ``.
4. **Kódové bloky:** Vždy použi špecifikáciu jazyka (napr. ` ```php `).
**ÚLOHA NA VYGENEROVANIE ČLÁNKU:**
- **Téma článku:** [Zadajte presnú tému]
- **Cieľové publikum:** [Napr. Začínajúci programátori]
- **Tón komunikácie:** Profesionálny, ale zároveň priateľský a osobný (písaný v prvej osobe - "ja").
- **Slug pre URL:** [zadajte-url-friendly-slug]
- **Zoznam názvov obrázkov na použitie (bez prípon):** [napr. titulka, clanok-1, clanok-2, galeria-1, galeria-2]
**Požiadavky na obsah:**
- Na základe témy vytvor pútavý titulok a perex pre Front Matter.
- Použi 2-4 hlavné nadpisy (`##`).
- Vlož obrázky podľa zoznamu.
- Použi aspoň jeden číslovaný a jeden nečíslovaný zoznam, citát a inline kód.
- Rozsah: 800 - 1200 slov.
Vygeneruj mi kompletný, surový Markdown kód pre článok.
Kompletný checklist pred publikovaním
Na záver, môj osobný checklist, ktorým sa riadim:
- [✓] Priečinok pre obrázky: Existuje
blog/img/moj-slug/? - [✓] Obrázky: Sú všetky obrázky (
titulka,clanok-1...) nahraté v tomto priečinku a ideálne vo formáte.webp? - [✓]
.mdsúbor: Je súborRRRR-MM-DD-moj-slug.mduložený v správnom jazykovom priečinku (napr.blog/posts/sk/)? - [✓] Front Matter: Sú na začiatku
.mdsúboru vyplnené_title:a_perex:? - [✓] Syntax obrázkov: Sú všetky obrázky v texte vložené správne, len pomocou názvu?
- [ ] Preklady: (Voliteľné) Ak existuje preklad, je vytvorená aj
enverzia súboru vblog/posts/en/?
Verím, že tento detailný pohľad do zákulisia bol užitočný. Systém je navrhnutý tak, aby bol radosť ho používať, a aby som sa mohol plne venovať tomu, čo je dôležité – tvorbe kvalitného obsahu.



