WordPress se stal za dobu svého existence jednou z nejpoužívanějších technologií na webu a pro spoustu use-casů je dobrým řešením. Kde je tedy problém?
Nedostatky WordPressu
Jelikož tu s námi je již několik let, WordPress vznikl v době, kdy byl standardem webových technologií jazyk PHP, který se podle dat společnosti GitHub stává čím dál tím méně populární, což ale jeho běžného uživatele nemusí moc trápit.
Důležitým faktorem je ale jeho těžkopádnost, která způsobuje často pomalé načítání výsledného webu. Rychlost webu je však v dnešní době jedna ze zásadních metrik zejména na mobilních zařízení. Hlavními příčinami je to, že WordPress je monolitický systém (jeden velký systém, který řeší všechno) a zároveň pro dosažení určitých funkcí je nutné mít nainstalovaných mnoho pluginů, které zvětšují velikost stránky. Typicky jsou také stránky vykreslovány na serveru (server side rendering), což nemusí být v určitých případech ideální.
Pokud uživatel nepoužívá již zmíněné pluginy, je navíc poměrně omezen strukturou dat. Tím je myšleno to, že máte na výběr mezi publikováním příspěvků a stránek, přičemž příspěvek se skládá z titulku, obsahu, náhledového obrázku a tak dále. Co když byste chtěli náhledových obrázků vícero nebo podnadpis nebo cokoliv dalšího?
Neméně důležitým nedostatkem je pak jeho bezpečnost. Hackerům se velmi dobře útočí na systém, jehož obranu zná prakticky každý.
Budoucnost správy digitálního obsahu
Jedním z trendů, které prostupují světem IT jsou headless CMS, které v mnoha případech spolehlivě nahradí WordPress. Pojďme si tedy vysvětlit, o co se jedná. Zkratka CMS znamená Content Management System, tedy systém pro správu obsahu. Pojem headless je poměrně složitější na pochopení. Znamená to, že součástí takového systému není žádný web (front-end), který se zobrazuje koncovému uživateli, ale zaměřuje se čistě na obsah jako takový a jeho poskytování prostřednictvím API.
To zní poměrně nevýhodně, tak v čem tkví ta skvělá inovace? Máte naprosto volné ruce v tom, kde a jak svůj obsah zobrazíte. Můžete mít například web i mobilní aplikaci a obsah zadávat jen do jednoho systému, ze kterého si jej natáhnete přes API. Web si díky tomu můžete postavit na některé z moderních technologií, jako je například Next.js.
Co se struktury dat týče, tak u headless CMS si typicky můžete zvolit prakticky jakoukoliv. Můžete například evidovat seznam svých business partnerů, kdy každý bude mít pole název, logo, odkaz na web, rok založení apod. Nebo vlastně téměř jakýkoliv druh obsahu vás napadne.
Mezi populární headless CMS patří například Prismic, StoryBlock, Contentful, Sanity a další. Zejména zajímavé je pak Strapi.
Strapi
Jedním z nejpoužívanějších headless CMS je Strapi, které vyniká oproti ostatním obdobným řešením převážně tím, že je open-source (kód je veřejný a každý si jej může upravit dle libosti). Jeho velkou výhodou je také to, že je napsáno plně v JavaScriptu (podpora i TypeScriptu), který je dle již zmíněných dat nejoblíbenějším programovacím jazykem na světě.
JavaScript je navíc také používán na front-endu, tudíž jeden šikovný člověk je pak schopný naprogramovat výslednou webovou prezentaci a v případě potřeby zároveň upravit Strapi. Samozřejmostí je také podpora REST API i GraphQL, výběr z několika podporovaných databází, možnost hostovat si systém svépomocí, nebo na optimalizovaném cloudu a další vymoženosti moderní doby.
Dost už ale bylo technických detailů. Jak to funguje prakticky? Je to jednoduché. Po nainstalování Strapi si stačí vytvořit kolekci dle vlastní potřeby. Představme si modelovou situaci, kdy mám několik e-learning kurzů a každý kurz obsahuje několik lekcí.
Ve Strapi si tedy vytvoříme kolekci Kurz, která bude mít strukturu dat název, popis, cena, lekce. Dále si vytvoříme také kolekci Lekce se strukturou dat – název, popis, délka, video. Tyto dvě kolekce pak lze jednoduše propojit pomocí relací, které se nastavují také pouze klikáním. Zde by byla vhodná relace, která říká, že kurz má více lekcí.
Teď už stačí do Strapi pomocí intuitivního uživatelského rozhraní doplnit data. Jakmile je vše přichystáno, tak už jen stačí si data natáhnout prostřednictvím automaticky vygenerovaného API a je možné je zobrazit, kdekoliv jen chceme.
Pravděpodobně vám jako nevýhoda stále připadá to, že si se Strapi nevytvoříte pomocí šablony hotový web za 2 hodiny a potřebujete minimálně pomoct někoho technicky zkušeného. To je pravda a nemusí to být řešení pro každého. Pro někoho však právě řešení naprosto geniální. Navíc jakmile si člověk projde počáteční technickou fází, spravovat obsah v administraci již zvládne každý.
Další alternativy
Žijeme v době, kdy si již můžeme web jednoduše naklikat nebo nám jej dle naší představy během několika vteřin vygeneruje umělá inteligence. Přesně to nabízí CMS či platformy typu Webflow, Wix, 10Web, Framer a další.
Důležité je však zmínit, že pomocí těchto nástrojů přijdete k novému webu sice opravdu rychle a počáteční náklady jsou takřka nulové, avšak s těmito výhodami se pojí i jisté nevýhody.
Klíčovou nevýhodou je, že se takto prakticky upíšete jedné platformě, které musíte platit často nemalé měsíční či roční poplatky. Pokud se společnost rozhodne tyto poplatky zvýšit, migrace je obvykle skoro nemožná. Setkáte se pravděpodobně s tím, že se některé věci nedají upravit přesně dle vašich potřeb.
Každému může vyhovovat něco jiného
Závěrem by mělo také zaznít, že každý projekt má svá technická finanční či jiná specifika a priority při volbě toho správného CMS se tedy mohou lišit. Žádné ze zmíněných řešení není absolutně nejlepší ve všech oblastech a je tedy nutné zvažovat, které funkce jsou pro nás nejvhodnější.
Nicméně se zdá, že se digitální svět transformuje do prostoru mnoha systémů navzájem propojených přes API, což headless CMS rozhodně hraje do karet.
TZ