Tvorba prezentačních webů představuje 1 z 3 našich hlavních činností. Věnujeme se jí od roku 2008, přičemž od zhruba 2010 jsme začali zkoušet různé redakční systémy (neboli CMS – Content Management System), pak jsme psali vlastní, až jsme v roce 2012 zakotvili u WordPressu.

Na WordPressu jsme postavili ke stovce webů a strávili s jeho používáním tisíce hodin práce. Máme ho tedy poměrně dobře „najetý“, přesto jsme ho na prakticky všechny prezentační weby přestali nasazovat. Proč?

V roce 2021 jsme totiž objevili redakční systém Kirby CMS, který nás nadchnul.

Pro koho je Kirby CMS?

  1. Pokud si chcete naklikat web pro své vlastní potřeby i bez jakékoli znalosti programování, tak si objednejte webhosting s předinstalovaným WordPressem a nečtěte dál. WordPress je suverénně nejpoužívanějším redakčním systémem, nabízí 60 000 pluginů, kterými lze rozšířit funkcionalitu webu a je zdarma (až na některé pluginy).
  2. Pokud tvorbu webu raději zadáte někomu jinému nebo sami ovládáte PHP, mělo by vás Kirby zajímat.
Kirby CMS vs WordPress

Hlavní rozdíly mezi WordPressem a Kirby CMS

WordPress byl vyvinut jako blogovací systém pro širokou veřejnost. I když ho autoři čím dál víc přibližují obecnému CMS, jeho architektura bohužel háže klacky pod nohy při rozšiřování funkcionality.

Kirby CMS byl vyvinut primárně jako flexibilní a modulární redakční systém, který si každý vývojář/kodér bude přizpůsobovat svému procesu vývoje a danému projektu. Představte si LEGO.

Pro vývojáře: Kirby bychom definovali jako dobře napsané flat-file CMS (4800 testů pokrývajících 95 % kódu) s integrovaným REST API, takže se dá CMS použít jako headless, MVC architektura umožňuje snadné rozšiřování a mnoho integrovaných nástrojů usnadňuje vývoj. Sami se přesvědčte na webu Kirby CMS.

Stručně řečeno, vývojář se musí přizpůsobit WordPressu, kdežto Kirby CMS se přizpůsobuje vývojáři.

V čem se konkrétně Kirby a WordPress liší z primárně uživatelského a zadavatelského pohledu? Bude lepší volbou než WordPress pro váš projekt?

Jednoduchost instalace

  • WordPress ✔
    Nejsou potřeba technické znalosti. Mnoho webhostingů umožňuje instalaci na 1 klik, pluginy lze také naklikat a vzhled do jisté míry taktéž.
  • Kirby CMS
    Potřeba alespoň základních znalostí PHP. Nicméně díky přehledné dokumentaci a eleganci systému to není nic složitého.

Množství pluginů a šablon

  • WordPress ✔
    60 000 pluginů v oficiálním katalogu. Desítky tisíc šablon k zakoupení.
  • Kirby CMS
    Přes 200 pluginů v oficiálním katalogu, několik desítek šablon.

Komunita a množství vývojářů

  • WordPress ✔
    Na WordPressu staví weby ohromné množství webdesignérů a kodérů. Vždy na práce na svém webu někoho seženete, jen si musíte ohlídat kvalitu. Kvůli výše zmíněnému množství šablon a pluginů funguje mnoho samozvaných WordPress kodérů tak, že naklikají šablonu a nalijí do ní vaše texty. Je to špatně? Pokud vám šablonový web stačí a web vydělává, tak vůbec ne. Ale pokud budete chtít web rozšiřovat a upravovat na míru, takovému klikači WordPressů brzy dojdou síly. Proto je potřeba si dopředu ujasnit očekávání a mezi dodavateli WordPressů pečlivě vybírat.
  • Kirby CMS
    Relativně neznámé a modulární Kirby nepřitahuje klikače, ale alespoň trochu znalé vývojáře. Ti právě často nadávají na WordPress, jehož architektura připomíná klubko smotaných drátů, na kterém klienti chtějí postavit svůj online byznys. I vývojář, který Kirby nikdy neviděl, se dokáže díky skvělé dokumentaci poměrně rychle zorientovat a funkcionalitu změnit. A pokud ne, autoři Kirby reagují na fórech podpory rychle. Rozhodně se vývojář s Kirby naučí rychleji, než pokud by neznal WordPress.

Rozšíření o vlastní entity

Skoro žádný rozsáhlejší web se neobejde bez vlastních entit (např. produkty v eshopu, referenční zakázky, události, kurzy, kontaktní osoby, …). Jak snadno jde redakční systém rozšířit o nové entity?

  • WordPress
    Potřeba instalace pluginů jako ACF nebo Pods Framework. Využívání těchto pluginů může web výrazně zpomalovat.
  • Kirby CMS
    S vlastními entitami se počítá už v jádru. Vlastně i obyčejné stránky lze strukturovat dle vlastních potřeb. Díky přehledné dokumentaci a eleganci systému si vývojář nastuduje základní koncepty raz dva a naprogramuje funkcionalitu rychleji než v případě WordPressu. Vytvoření administrace pro vlastní entitu je totiž otázkou zápisu pár řádků do konfiguračních souborů (tzv. blueprintů), na kterých Kirby CMS stojí.

Jednoduchost administrace

  • WordPress
    Často nepřehledné, mnoho skrytých nebo naopak nepotřebných políček a tlačítek. Níže je ukázka administrace našeho webu. Na rozhraní WordPressu si musíte zvyknout.
  • Kirby CMS
    Pouze nutné položky v administraci, které lze snadno definovat na míru každému webu. V čisté instalaci Kirby dokonce zeje administrace prázdnotou, protože veškerý obsah definuje vývojář/kodér. Administrace koneckonců ani není potřeba, můžete si upravovat soubory stránek v oblíbeném textovém editoru a obsah psát v markdownu.

Jazykové mutace

  • WordPress
    Přes pluginy, typicky Polylang zdarma nebo placené WPML. Mohou se objevit problémy s dalšími pluginy.
  • Kirby CMS
    Podpora jazykových mutací v základu.

Rychlost načítání

Jak dlouho trvá odpověď serveru při načtení stránky (time to first byte) na webu obvyklého rozsahu (grafika na míru, několik vlastních entit)?

  • WordPress
    Bez optimalizace přes 500 ms, s optimalizací 200–500 ms.
  • Kirby CMS
    Bez optimalizace 100–200 ms.

Jednoduchost nakódování vlastního designu a změn ve funkcionalitě

  • WordPress
    Pomalejší a méně spolehlivé – míchání HTML šablon s funkcionalitou, zastaralá architektura, horší práce s obrázky.
  • Kirby CMS
    Rychlejší a spolehlivější – robustní šablonovací systém, soudobá flexibilní architektura. Jakýkoli do administrace nahraný obrázek si může kodér v šabloně vyžádat v libovolném rozlišení a ořezu pomocí volání jedné funkce.

Editor obsahu

  • WordPress ( pro články)
    Výchozí WP editor Gutenberg obsahuje v základu více typů bloků (text, galerie, tabulka, videa, kalendář, …) a psaní jednoduše strukturovaných článků je v něm rychlé a autosave pomáhá. Page buildery jako např. Elementor nebo WPBakery podporují ještě více druhů bloků a umí měnit i vzhled stránky, ale editace v nich je pomalá, nepřehledná a obsah pak víceméně nelze migrovat do jiného editoru. My jsme snad nepotkali klienta, který by editaci v Elementoru nebo WPBakery bez problémů zvládal a už vůbec uměl využít všechny jeho možnosti.
  • Kirby CMS ( pro vlastní strukturu)
    Výchozí layout editor umožňuje obsah lépe strukturovat a to i do sloupců. V základu obsahuje méně bloků a nejde v něm tak plynule přecházet mezi editací různých bloků jako ve výchozím WordPress editoru Gutenberg. To může znepříjemňovat psaní delších článků. Daleko snáz se v něm ale rozšiřuje funkcionalita jakéhokoli bloku nebo vytváří nový typ bloku (např. kartička s kontaktními údaji osoby, mapa a koneckonců i klasický WYSIWYG editor jako TinyMCE). Mrkněte níže na video, jak se vytváří obsah obecné stránky v našem redakčním systému postaveném na Kirby CMS:

Správa obrázků

  • WordPress
    Obrázek lze nahrát na web a vložit do stránky pouhým přetažením souboru přímo do editoru (drag-n-drop). S obrázky lze provádět základní úpravy jako ořez, přidávání alternativních popisů, titulků apod. Všechny soubory lze najít jedné mediální knihovně, takže je lze používat na více místech. Pokud soubor smažete, tak se ale nezkontroluje, zda se někde nepoužívá.
  • Kirby CMS
    Obrázek lze nahrát pouze do bloku obrázek nebo galerie. Každá stránka (článek atd.) má soubory oddělené, smazání obrázku ze stránky vám nemůže rozbít jiné stránky. Načítat obrázky z jednotné galerie à la WordPress lze změnou jedné řádky v konfiguraci stránky (v blueprintu se nastaví jako zdroj souborů např. všechny podstránky nějaké vybrané stránky galerie).

Historie obsahu

  • WordPress
    Automatické ukládání verzí při každém uložení, verze dostupné z administrace. Bohužel verze velmi zvětšují a mohou i zpomalovat databázi.
  • Kirby CMS
    Verze se automaticky neukládají, my jsme ale ukládání verzí docílili verzováním do externího Git repozitáře.

Správa a udržitelnost

Jak se dají testovat změny před nasazením? Jak spolehlivě web běží? Dá se web provozovat tak, aby byl předatelný i jiným vývojářům?

Každý softwarový projekt, který nemá být závislý na jediném vývojáři nebo hostingu, musí být zaverzovaný, typicky v Git repozitáři (systém, který zaznamenává změny v souborech, aby umožnil práci více lidí zároveň a umožnil se ke starším verzím souborů vrátit). Projekt si pak jakýkoli vývojář s přístupem k tomuto repozitáři může rozběhnout na svém stroji, provést změny, otestovat je a poté nahrát na produkční server s minimálním výpadkem. U větších projektů se změny nejdřív nahrávají na testovací server, aby si klient mohl novou funkcionalitu sám vyzkoušet.

  • WordPress
    V základu WordPressu se výše popsaného postupu docílí obtížně. Je potřeba verzovat skoro celý projekt vč. pluginů. Projekt pak zabírá hodně místa, hůře se s ním pracuje a i tak ho může uživatel rozbít instalací pluginu z administrace webu. Jelikož jsou nějaká data webu uložena v souborech a nějaká v databázi (obvykle v jediné tabulce), dost zdržuje (tedy prodražuje) při jakékoli změně nejdřív stáhnout celý web s daty, upravit funkcionalitu, zaverzovat a opět nasadit na web. Přijde vám to složité a zbytečné? Možná, ale co budete dělat, pokud byste o web nenávratně přišli? A jste také smířeni s větší šancí výskytu chyb a výpadky webu při nasazování? Mnoho těchto problémů řeší WP boilerplate Bedrock, se kterým se ale web musí začít stavět, případná pozdější migrace už je složitější.
  • Kirby CMS
    Celý projekt lze snadno zaverzovat do malého repozitáře a rozběhnout pro lokální vývoj. Lze zaverzovat i veškerá data, díky čemuž může vývojář dobře otestovat změny na webu před jejich nasazením a navíc existuje další záloha celého webu.

Bezpečnost

Jak bude web odolný vůči hackerům nebo vymazáním z hostingu? Dokáže se vzpamatovat z incidentu?

Důležitost této otázky se odvíjí od toho, jak je pro Vás web důležitý a co byste dělali, kdybyste o něj úplně přišli.

  • WordPress
    Nejpopulárnější CMS je pochopitelně nejčastějším terčem hackerů. My jsme za 10 let vývoje webů na WordPressu řešili cca 5 zavirovaných webů, bohužel nebylo vždy možné web odvirovat napoprvé. Vždy šlo o neaktuální verze WP, ale realita je taková, že většina klientů si nechce platit za průběžnou aktualizaci a neinvestuje do webu nic, dokud funguje. Existují sice pluginy pro větší zabezpečení, které ale můžou kolidovat s jinými pluginy a web zpomalovat. Automatická aktualizace malých bezpečnostních záplat je však užitečná.
  • Kirby CMS
    Malý redakční systém nebývá terčem útoků. Kirby CMS bylo vyvinuto už s dobrý zabezpečením v základu a průběžně ho auditují specialisté na bezpečnost.

Cena

  • WordPress
    Open-source redakční systém, který je zdarma.
  • Kirby CMS
    Open-source redakční systém, který lze pro testování a vývoj webu používat zdarma. Pro ostré použití na 1 doméně stojí licence 100 EUR. Když uvážíme, že vytvořit kvalitní web je otázka desítek nebo stovek tisíc Kč, tak se cca 2 500 Kč za flexibilní redakční systém se rozhodně vyplatí. Náš redakční systém stojí na Kirby CMS, díky čemuž ho s každým dokončeným projektem ho vylepšujeme o užitečnou funkcionalitu. Každý nový projekt tak čerpá ze zkušeností a vylepšení předchozích projektů (viz dále).

Pro koho je Kirby určeno?

Sečteno a podtrženo, dle našich letitých zkušeností s WordPressem i jinými CMS se pro prakticky všechny námi vytvářené prezentační weby hodí použít Kirby CMS. A nejen ty, dá se na něm relativně snadno postavit třeba i e-shop se speciální funkcionalitou (viz naše dílo Přáníčkomat).

Velmi ho ocení agentury, které si na něm můžou postavit vlastní CMS, což je přesně náš případ.

Jak ho používáme my?

Na Kirby CMS jsme si postavili vlastní redakční systém. Ten průběžně vylepšujeme s tím, jaké dostáváme požadavky na úpravy klientských projektů.

Například jsme Kirby CMS rozšířili o:

  • nové obsahové bloky (nastavení ořezů pro galerii a obrázky, blok responzivní tabulky, souborů ke stažení, videa, …)
  • články a reference
  • SEO prvky
  • úzké propojení s analytikou
  • správu globálních informací (kontaktů, odkazů na sociální profily, …)
  • import dat z XLS
  • automatizované nasazování a verzování obsahu

Kdy je lepší zůstat u WordPressu?

  • Potřebujete čistě blog.
  • Stačí Vám vzhled šablon a funkcionalita pluginů ve WordPressu a víte, že spolu nebudou kolidovat.
  • Potřebujete střední až větší informační portál s mnoha uživateli, rolemi a tisíci podstránkami. Musíte ale vědět, že web na míru by pro vás nebyl a WordPress váš projekt zvládne. I tak se nějaké úpravě funkcionality a zejména optimalizaci rychlosti nejspíš nevyhnete.

A jaký máte na WordPress nebo Kirby názor vy? Pište do komentářů, rád se podělím i o naše zkušenosti.

Tomáš Kouba

Jednatel Net Magnet s.r.o.