Linux E X P R E S

Facebook

Redakční systém TYPO3

TYPO3 patří mezi nejrozsáhlejší a nejkomplexnější systémy pro správu obsahu postavené na oblíbené kombinaci PHP + MySQL a šířené jako svobodný software. Zatím o něm bohužel nebylo mnoho napsáno a následující řádky mají tedy za úkol to změnit. Kdo by rád věděl, zda se pro něj systém TYPO3 hodí a jak ho zprovoznit, nechť ráčí číst dál.


Různých systémů pro správu obsahu (CMS – Content Management System) existuje téměř nepřeberné množství. Drtivá většina je postavena na skriptovací technologii PHP a využívá databázový systém MySQL. Mnoho z nich je k dispozici pod některou svobodnou licencí. Prakticky každý si najde to svoje, ať už jde o řešení pro firemní web, osobní blog nebo třeba elektronický obchod. Otázka zní tedy celkem jasně: proč si vybrat právě TYPO3?

Vzhledem k licenci GNU GPL je systém samozřejmě k dispozici zdarma a lze s ním nakládat podle podmínek licence. Kdo by měl zájem o placenou podporu, věnují se jí konzultantské firmy, několik jich je i u nás.

Stejně jasná jako otázka je i odpověď. Systém TYPO3 je totiž velice silný, a to v celé řadě ohledů. Důkladně odděluje vzhled, obsah a jeho správu. Správa obsahu je snadná a intuitivní. Pro TYPO3 existuje víc než 1500 doplňků a rozšíření, kterými lze přidat nejrůznější funkce (od různých obsahových modulů, přes reklamní systémy, fotogalerie, kalendáře, ankety a hlasování, e-mailové nástroje, diskusní fóra, zvýrazňovače kódu až po komponenty pro integraci s jinými systémy). Velmi důležitou vlastností je vlastní skriptovací jazyk systému (TypoScript, TS), podobně jako možnost snadného propojení s vnějším PHP kódem.

Některá rozšíření mohou vyžadovat konkrétní verze TYPO3. Buď ve smyslu „4.0.2 a novější“, nebo dokonce přímo určité verze. Totéž se týká i PHP a MySQL. Kontrolu verzí při instalaci lze explicitně ignorovat, ale není to dobrý nápad. Naopak je lepší se takovým doplňkům vyhýbat, případně si u autora zjistit podrobnosti.

Již z výše uvedeného je zřejmé, že takový systém nemůže být jednoduchý. A také není. Ale to se týká spíš pokročilejšího použití, s využitím TypoScriptu a dynamických šablon. Nainstalovat TYPO3 a vytvořit jednoduchý web není vůbec složité, ale o tom až za chvíli.

Systémové požadavky

Základní požadavky pro běh TYPO3 nejsou nijak zvláštní. Potřebujeme webový server (nejlépe Apache, ale není podmínkou), nainstalované PHP verze 4 nebo 5 a samozřejmě databázový server MySQL, opět 4 nebo 5. Toto je minimum pro fungování systému. Pokud chceme využívat něco z dalších funkcí, požadavky se logicky stupňují.

Například pro rozšíření RealURL (pro tvorbu „hezkých“ URL) je nutná možnost přepisu adres (nainstalovaný a povolený modul mod_rewrite). Velmi užitečné jsou funkce pro manipulace s obrázky, vyžadující knihovnu GD a její podporu v PHP; některé operace vyžadují ImageMagick. Pokud bychom chtěli využívat vykreslování TrueType fontů, je potřeba knihovna FreeType.

Bezpečný režim (safe mode) není problém, pozor ovšem, že deaktivace určitých funkcí PHP (typicky třeba vzdálených souborů) se projeví tím, že některé méně důležité věci v TYPO3 nebudou fungovat (např. poloautomatická instalace rozšíření). Použití open_basedir je velice žádoucí, protože webový server musí mít právo k zápisu do některých adresářů s instalací TYPO3 (viz dále). PHP musí mít povoleno použít aspoň 16 MB paměti.

Instalace systému

K instalaci TYPO3 je ideální mít přímý (shellový) přístup na server, i když to jde i bez něj. Pokud přístup máme, stačí si stáhnout dva balíky – samotný systém a balík „dummy“ obsahující prázdnou adresářovou strukturu plus pár souborů pro snadnou instalaci. První z balíků lze na server nainstalovat centrálně pro více různých webů (a pak jednoduše aktualizovat pouze tuto jednu instalaci) a přes symbolické odkazy prolinkovat do kořenu konkrétního webu. Není ovšem problém instalovat i místně do kořenového adresáře webového prostoru. Druhý balík se instaluje vždy lokálně.

Jestliže máme pouze přístup přes FTP, lze si balíky rozbalit v počítači a přenášet soubory jeden po druhém. Pozor však na správné naložení se symbolickými odkazy a také na to, že přenášených souborů je opravdu velké množství, proto to může chvíli trvat.

Po instalaci souborů první nebo druhou metodou následuje druhý krok – instalace přes webový prohlížeč. Jednoduše se zadá adresa, vloží se výchozí přihlašovací jméno a heslo, a pak už se postupuje krok za krokem podle instrukcí na instalačních stránkách. Databázi je nejlépe vytvořit předem ručně (u webhostingů bývá již vytvořena), případně ji může vytvořit i instalátor, ale musí pracovat pod databázovým uživatelem s dostatečnými právy.

Součástí instalačního procesu je ověření podmínek pro instalaci. Instalátor řekne, do kterých konkrétních adresářů potřebuje zapisovat a tam tedy musí být nastavena odpovídající práva. Dále se dozvíme, které technologie chybějí a co v důsledku toho nebude fungovat. Po dokončení instalace je potřeba smazat instalační adresář nebo přinejmenším změnit heslo, aby ho případný útočník nemohl zneužít.

TYPO3 je systém relativně náročný na výkon. V některých případech (složitější generování) může mít poněkud delší odezvu. Proto se využívá cache, kam se ukládají vygenerované dokumenty, a následně se používají, pokud nenastala změna obsahu nebo není takové ukládání zakázáno. Po změně provedené mimo prostředí TYPO3 (například po úpravě souboru statické šablony) se musí obsah cache vymazat.

Jak to funguje

Samozřejmě nemá smysl detailně popisovat fungování tak rozsáhlého systému. Jde hlavně o základní principy. V TYPO3 se důsledně rozlišuje front-end (to, co vidí návštěvník webu) a back-end (systém jako takový včetně webové sekce pro správu). Front-end se generuje na základě šablon. Obecně může mít každá stránka vlastní šablony, ale typicky se stejné šablony používají pro více stránek. Šablony mohou být statické (pevně definované) a dynamické (tvořené skriptem).

Obrázek:  1.jpg

Vytváření webu v prostředí systému TYPO3

Proces generování vypadá tak, že systém vezme šablonu, na definovaná místa vloží vygenerovaný obsah (např. načtený z databáze) a výsledek odešle do prohlížeče. Systém jako takový generuje vždy validní kód (podle nastavení buď HTML, nebo XHTML), u některých rozšíření to ale bohužel neplatí. Při tvorbě webu pro TYPO3 jsou poměrně jednoznačně vyznačeny tři role:

  • programátor/správce – připravuje šablony, instaluje a konfiguruje moduly, spravuje uživatele a jejich práva;
  • grafik – vytváří grafický vzhled, který programátor – např. formou CSS – vloží do šablon;
  • autor obsahu – vkládá texty a obrázky, může vytvářet nové stránky, překládat do jiných jazyků apod.

Dobré rozdělení je umožněno mj. i rozsáhlými možnostmi v nastavování práv, takže může být například více redaktorů a každý má práva pouze pro svoji sekci. To však není vše – TYPO3 podporuje také využití toku dokumentů, takže se pak publikuje zrevidovaný a schválený obsah, předem připravený mimo aktivní web (ovšem s možností náhledu). Užitečná je také správa verzí, včetně možnosti jejich vzájemného porovnávání.

TYPO3 obsahuje již v základní instalaci sadu šablon pro rychlé použití, lze samozřejmě získat nebo vytvořit další. Pokud chceme rychle vytvořit plně funkční web, stačí vložit jednu stránku (budoucí kořenovou) a vytvořit pro ni šablonu na základě některé z dostupných statických šablon. Obsažené šablony sice krásou rozhodně nepřekypují a k použitelnému vzhledu bude tedy potřeba získat/vytvořit nějaké lepší, ovšem ve fázi přípravy struktury webu poskytnou dobrou službu. Následně již totiž stačí vytvářet jednotlivé stránky a přidávat do nich obsah – hned vidíme, jak bude výsledný web vypadat.

Obrázek:  2.jpg

Výsledný web v TYPO3

Co se týká práce s obsahem stránek, možnosti jsou značné. U jednoduchých stránek si lze většinou vystačit s textovými objekty, které mohou obsahovat i obrázky. Text se dá upravovat jak klasickým editorem (se vkládáním HTML značek), tak i pomocí WYSIWYG editoru, který však funguje jen v některých prohlížečích (např. Opera mezi nimi není). Obrázky mohou být ze dvou zdrojů – buď se uploadují na server (přes FTP nebo funkce TYPO3) a použijí podle potřeby, nebo je lze ukládat jednotlivě pro každé použití.

Najde si své příznivce

TYPO3 je systém vhodný pro webové stránky malého i velkého rozsahu. Lze v něm snadno a rychle začít tvořit, k dokonalému využití všech poskytovaných možností ale vede dlouhá a náročná cesta. Množství dostupných rozšíření je impozantní, na druhou stranu ne všechna jsou opravdu kvalitní.

TYPO3 je cesta – cesta k efektivní webové tvorbě s využitím svobodného softwaru. Komu stačí pouze a jen tvořit weby, ať si raději zvolí některý z jednodušších CMS. Kdo však touží po komplexním řešení a neváhá obětovat relativně hodně času získávání zkušeností, určitě TYPO3 ocení.

Diskuze (12) Nahoru