Doby kdy si vlastní systém pro správu obsahu (neboli CMS) psal kdejaký vývojář, který chtěl uspět na internetu, nejsou tak vzdálenou vzpomínkou. A když pořádně uměl databáze, tak mohla vzniknout i velmi zajímavá díla. Byly to doby, kdy se mi pomalu ani nezastavil proud školení PHP a SQL :-).
Psaní vlastními silami
Pro psaní systému vlastními silami musí být hodně důvodů. Představte si, že musíte vyřešit autentifikaci správců obsahu, editovatelnost stránek (jednoduché), řazení a stromovou strukturu stránek (to už není úplně úplně jednoduché), možnosti zákaznických formulářů, zabezpečení, možnosti pro dodatečné meta-tagy
a to vše pokud možno velmi rychle. Dnes už snad jen pár programátorů bude psát vše vlastními silami, většinou budou stavět nad existujícím frameworkem (Cake, Symfony, Nette), ale přesto té práce bude mít nad hlavu.
Jednoduchý web se základními prvky, postaví kdejaký PHP junior. Aby byl web šetrný vůči systémovým zdrojům serveru, dostatečně flexibilní pro další úpravy a rozšíření, to už úplně snadné není. Psát jej od nuly se většinou nevyplatí.
Ale proč to dělat? Ve světě svobodného software existuje dostatek řešení. Podle mě je rozhodně efektivnější si jedno vybrat, to se pořádně naučit a „nepálit čas“ psaním základní funkcionality. Pokud to programátor myslí vážně, tak stejně bude potřebovat solidní znalosti PHP (nebo jiného jazyka), SQL, JavaScriptu (+ jQuery, React), HTML a CSS.
Některá CMS
Stručně alespoň těch několik nejznámějších. V abecedním pořadí, bez ohledu na jejich popularitu.
Drupal
Řadit Drupal mezi CMS je dost možná ošidné, několikrát jsem narazil na přístup k Drupalu, coby frameworku. Je mocný, nepřipadá mi úplně uživatelsky příjemný (ale to je osobní názor) a mimo jiné jej využívá třeba MTV, TV Prima, nebo administrativa Bílého Domu.
Pro Drupal existují desetitisíce hotových rozšíření. Ačkoliv Drupal sám o sobě „kamarádí“ nejen s MySQL/MariaDB, ale i třeba PostgreSQL, může být velmi ošidné je použít, vývojáři s nimi leckdy nepočítají.
Já osobně jsem se s Drupalem seznámil při zkoušení, neznám jej v dostatečné míře, ale mohu doporučit Squelle Group.
Joomla!
Starší pamětníci si možná vzpomenou na Mambo, které je již mrtvým projektem a jehož forkem je právě Joomla. Počtem instalací je to druhý nejpoužívanější CMS.
Má skvělou dokumentaci, ale pro malé weby mi připadá Joomla neohrabaná a pro velké weby by jí možná došel dech (tam bude kralovat Drupal, nebo zákaznické řešení).
WordPress
WordPress je nejrozšířenější ze všech CMS, údajně jej využívá 25 % webů. Samotný WordPress je „kostra“ nabízející základní funkčnost. Někomu to stačí, ale správnou volbou pluginů jej lze doplnit na výborný nástroj pro prezentaci. Díky vynikajícímu API je snadné napsat potřebná rozšíření i postavit velmi kvalitní šablony/layouty.
Ze všech systémů pro správu obsahu mám nejradši WordPress. Používám jej zhruba od roku 2005, zpočátku holý, ale postupně jsem si odladil sestavu pluginů, která mi skvěle slouží. Na blogu občas napíšu článek, který se WordPressu dotýká. Před několika lety jsem se naučil psát pluginy, pro dlouholetého klienta (subdodávka), a od té doby jsem několik zákaznických (dále nedistribuovatelných) napsal.
Troufám si říct, že s WordPressem umím, byť stále vidím kolik se toho mohu naučit. Jelikož s nastaveními WP a vývojem pluginů dělám dlouho, nastal pomalu čas nabídnout znalosti dále, za nutné spolupráce grafika (pokud nepřijde zákazník s designem, který potřebuje „jen“ nakódovat do šablony).
Mimo pořadí
- Concrete5 je podobně jako Drupal někde na pomezí frameworku a CMS. Má výborné recenze. Mám jej ve škatulce „někdy otestuji a možná se naučím“.
- Serendipity patří k menším CMS, osobně znám jen jednoho uživatele. Otestoval jsem a vedle extrémně liberální licence (BSD) umožňuje i snadnou rozšiřitelnost. Líbí se mi, byť nemá moc agilní vývoj a je docela raritkou.
- TYPO3 patří do „velké čtyřky“ s WP, Drupalem a Joomla! Populární je hlavně v německy mluvících zemích.
BTW:
Myslím si, že pokud si někdo vybere některé svobodné řešení a vydělává na něm, měl by část svého zisku nějakým způsobem investovat zpět do vývoje.
Napsat komentář