S nástroji jde dnes web udělat snadno a rychle (záleží na jeho složitosti). Velkou výhodou CMS, jako je WordPress, je, že na něm jdou postavit snad všechny typy webů – portfolia, designovky, blogy, e-shopy, rezervační systémy… na co si vzpomenete.
Jsou však weby, kde je CMS, případně i jiná složitější logika zbytečná a pro ně se výkonově a údržbově CMS prostě nevyplatí. Kdy má cenu WP použít? A kdy je lepší statický web?
Dynamický web
Dynamický web generuje stránky „za běhu“, protože má data uložená na více místech (a některá z nich jsou často v databázi, v dané struktuře odlišné od klasických souborů a kódu). Obsah se pak načítá dynamicky, podle různých podmínek a situací, prostě podle toho, co chce uživatel zrovna vidět.
Za dynamický web považuji i ten, který neběží na CMS, ale má data uložená např. v databázi, ale i v JSON souboru někde vedle. A v závislosti na těchto datech pak data zobrazí. Nebo je tam jiná programovací logika a jsou potřeba funkce, na které už klasický HTML kód nestačí.
Výhody:
- Snadná správa obsahu (přes administraci)
- Možnost personalizace (např. přihlášení, filtry, interakce)
- Možnost pokročilých fcí (např. nákupní košíky, kalkulačky, a pod).
Nevýhody:
- Pomalejší načítání (které lze optimalizovat)
- Vyšší nároky na bezpečnost a údržbu
- Potřebuje kvalitnější hosting
Statický web
Statický web je složený z pevných HTML souborů (+ CSS). Obsah každé stránky je „natvrdo“ napsaný – když ji někdo otevře, prohlížeč zobrazí přesně to, co je uloženo na serveru.
Výhody:
- Rychlé načítání
- Vyšší bezpečnost (není tam žádná databáze)
- Nízké nároky na hosting
Nevýhody:
- Každá úprava se dělá ručně v kódu nebo přes generátor
- Není vhodný pro blogy, e-shopy, nebo přihlašování uživatelů
Detailní porovnání
| Statický web | Dynamický web |
|---|---|
| Vhodné pro: jednostránkové prezentace, portfolia, vizitky, landing page kampaně. | Vhodné pro: firemní web s blogem, e-shopy, klientské zóny, rezervační systémy a cokoli dalšího. |
| Bezúdržbové. | Pluginy i šablony vyžadují aktualizace. |
| Častěji vznikne čistý a konzistentní kód (záleží na kvalitě vývojáře). | Různé pluginy a šablony mohou přidat nepotřebné relikty např. zbytečné CSS třídy a styly, které nejsou potřeba. Ovšem vznikají i takové, které jsou optimalizované na zdrojový kód a jsou minimalistické. |
| Obsah se mění v kódu – dělá vývojář. | Obsah se mění v administraci – zvládne kdokoli. |
| Novou stránku je potřeba přidat ručně a propojit s ostatními – dělá vývojář. | Díky šablonám je možné novou stránku vytvořit rychle a jednoduše bez programování. |
| Multijazyčnost je ruční – co překlad stránky, to nová stránka. | Překlady mohou být hodně dynamické – až na úrovni překladů jednotlivých frází. |
| Hromadné úpravy jsou složitější (např. patičku, ač je na všech stránkách stejná, je potřeba editovat ve všech souborech) | Hromadné úpravy jsou rychlejší (např. patičku je díky šablonám možné editovat z jednoho místa) |
| Na změnách se může podílet jeden vývojář (jinak je třeba je manuálně sloučit). | Obsah mohou spravovat desítky, stovky i tisíce uživatelů bez znalosti programování. |
| Stačí slabší hosting, protože obsah se nijak “nepočítá” z dat. | Potřebuje o něco silnější hosting, v závislosti na své velikosti a složitosti. |
| Není závislý na dostupných technologiích hostingu (HTML a CSS funguje všude). | Infrastrukturu je potřeba vybrat podle programovacího jazyka (PHP, Python, Java, .Net a pod). |
| Bezpečný (nemá databázi ani žádné zdroje dat, které jde napadnout) | Zdroje dat se musí dobře zabezpečit |
| Rychlý (obsah je připravený hned) | O něco pomalejší (v závislosti na velikosti a infrastruktuře) – dá se použít cache a dosáhnout velmi dobrých výsledků |
| Funkčními požadavky jsou nedostupné, protože např. i jednoduchý formulář už potřebuje programovací jazyk (jsou služby, které ho umožní vložit do webu z externího zdroje). | Je možné přidat libovolné dynamické funkce, obsah a data formátovat pomocí šablon. Web je možné jednoduše rozšiřovat o další funkce. |
| Rozšíření webu např. o blog je složité (v tu chvíli přestává být statický). | Je také lépe škálovatelný a rozšířitelný (z malého webu jde udělat e-shop, pokud se firma rozrostla). |
| Dodatečné věci je třeba vytvořit ručně např. sitemap je potřeba přegenerovat při každém přidání stránky. | Pluginy a šablony mohou přidat cokoli kamkoli i hromadně a automaticky metadata přegenerují. |
| Je jednoduché ho verzovat a deployovat (např. z Git a podobných služeb). Sloučit 2 verze do sebe je jednoduché. | Verzování je složité kvůli integritě databáze, spíš než verzování je tu zálohování jednotlivých verzí v čase. Sloučit dvě verze do sebe může být hodně složité kvůli změnám a dynamickým datům. |
| Je jednoduché ho zprovoznit offline (např. na konferencích nebo na místech, kde není internet). | Bez internetu je potřeba vytvořit lokální server, kde běží potřebná infrastruktura, což je složitější. |
Kterou variantu si vybrat?
Položte si tři jednoduché otázky:
- Jak často se bude měnit obsah?
- Velmi málo? (párkrát za rok) -> statický web
- Málo až často? -> dynamický web
- Potřebujete interaktivní funkce (např. blog, registrace, filtry)?
- Ne? -> statický web
- Ano? -> dynamický web
- Chcete si obsah spravovat sami?
- Ano? -> dynamický web
- Ne? -> statický web

