Linux E X P R E S

Facebook

Mambo 4.5.1, 1. část

Svatopluk Vít - všechno co jste chtěli vědět o tomto systému pro správu obsahu.


Když jsem se před několika lety začínal učit používat Internet, hned vzápětí jsem toužil zjistit jak vlastně vytvořit nějakou stránku, aby ji mohli navštěvovat lidé z celého světa, a měl jsem možnost ji vytvářet jednoduše. Začal jsem studovat jazyk HTML a k tomu používat různé pomůcky v podobě HTML editorů. Samozřejmě, že jsem vystřídal všechny možné i nemožné WYSIWYG editory (tedy programy, umožňující vytvářet stránky vizuálně, bez nutné znalosti jazyka HTML) a nakonec usoudil, že nejlepší je stejně klasický textový editor.

Pro vytvoření osobních stránek vám stačí textový editor, nebo můžete používat pokročilé HTML editory jako QuantaPlus, BlueFish nebo Nvu. Časem jsem se však dopracoval ke stavu, kdy jsem vytvořil jen jakousi šablonu, s jejímž využitím jsem začal přidávat jen obsah. Pak jsem objevil kouzlo tzv. CMS systémů (z anglického Content Management Systems čili systém správy obsahu). Programátoři přišli na to, že vzhled již hotové prezentace měníte jen výjimečně, důležitý je obsah. Každý web portálového typu už dnes tyto systémy využívá. Základem systémů CMS je webový a databázový server s nainstalovanou podporou skriptovacího jazyka, jako je PHP nebo ASP. Asi nejvíce CMS je založeno na PHP.

Základními parametry tedy bylo využití CMS, který lze provozovat na Apache serveru a MySql jako databázovém stroji s využitím PHP jazyka. Všechny tyto předpoklady nabízí valná většina hostingových firem provozujících linuxové servery. Do mého užšího výběru nakonec prošly tři produkty: PHP-Nuke, Typo3 a Mambo. Ve svém zkušebním prostředí jsem postupně nainstaloval všechny tři.

Systém mne překvapil svou propracovaností v detailech. Naprosto jednoduchá instalace, prakticky po pěti minutách od stažení instalačního balíčku jsem měl k dispozici fungující web, do kterého stačilo již jen vyplnit obsah. Navíc vás hned od začátku nezachrlí funkcemi, je spíše střídmější, ovšem vše je možno postupně rozšířit pomocí dodatečných komponent a modulů. Ten, kdo dává přednost balíku funkcí, bude po instalaci Mamba zklamán, musí se toho doinstalovat celkem dost, aby se dostal funkcemi k výchozím funkcím PHP-Nuke. Mně to ovšem vyhovuje, protože s sebou nemusím táhnout zbytečné moduly a nástroje, které třeba nikdy nepoužiji.

Srovnám-li všechny tři produkty (viz. rámečky, pozn. redakce), PHP-Nuke je velmi dobrý, snadno rozšiřitelný a funkcemi nabitý, ovšem nahání mi strach s všemožnými licencemi a nejednoznačností výkladu GPL licence přímo autorem (někteří považují za spornou povinnost uvádět text o tom, že vámi vytvořený web provozujete na PHP-Nuke). Jeho modulová "všeobsažnost" může mít vliv na jeho rychlost. Typo3 je také velmi dobrý, působí profesionálním dojmem, ale na rozhraní bych si musel chvíli zvykat. Mambo jsem pochopil ihned a rychle si mne získalo, i když bylo zapotřebí některé věci doinstalovat. Samozřejmě, že jsem zkoušel i jiné např. Drupal (www.drupal.org) nebo phpRS (www.phprs.cz), žádný už však nedokázal překonat první dojem z Mamba. Další text berte jako shrnutí zkušeností se zhruba ročním používáním CMS Mambo.

PHP-Nuke

PHP-Nuke (phpnuke.org) je nástroj, který dokáže přesně to, co byste od takového systému očekávali. Snadno se nainstaluje (i s využitím FTP) a ještě lépe rozšiřuje. Obsahuje totiž možnost použití tzv. zásuvných modulů, které umožňují přidávat nové a nové funkce prakticky donekonečna. Rázem se stal favoritem, protože jeho konfigurace netrvala moc dlouho a šlo to velmi dobře. Celý projekt od začátku vyvíjí jeden vývojář a dnes je kolem tohoto projektu silná celosvětová komunita. Jedná se o open-source projekt, je ovšem poněkud komerčněji zaměřen (což je logické, pokud věnujete vývoji jistý čas). Pro postavení komerčního webu byste se také měli zaregistrovat (pokud nechcete uvádět text ve smyslu "Tento web byl vytvořen programem PHP-Nuke"), registrační poplatek je ve stovkách dolarů. PHP-Nuke je velmi rozšířen a existuje v mnoha jazykových mutacích. I u nás se hojně používá. Jeho zvláštností je to, že existuje mnoho odnoží. Původně existoval jen PHP-Nuke, dnes se však setkáte ještě s PostNuke, eNvolution nebo ryze českým klonem United-Nuke (samozřejmě je i spousta dalších). Vývojáři si prostě vytvořili svou vlastní verzi, kterou dále rozvíjejí. Stává se z toho ale trošku chaos. PHP-Nuke je poněkud větší bumbrlíček a ze začátku bych určitě všechny funkce nevyužil. Chtělo by to něco odlehčenějšího.

Mambo

V říjnu roku 2003, kdy jsem se s Mambem seznámil, byla na světě nová verze označená číslem 4.5, která přinesla mnoho revolučních změn. Naskočil jsem do rozjetého vlaku a učil se za pochodu. Spousta skalních uživatelů popisovala, že některé funkce nechodí tak, jak by měly a že jim nová koncepce nevyhovuje. Mambo má trochu odlišnou filozofii než ostatní CMS systémy. Vývojový tým se soustředí jen a pouze na vlastní jádro celého CMS a nevyvíjí žádné dodatečné komponenty. I tak ovšem v základní verzi nějaké funkce najdete. Můžete vést komunitu uživatelů (tzn. jejich registrování), pořádat hlasování a ankety, vytvořit si databázi odkazů na jiné stránky nebo používat komponentu na výměnné reklamní bannery. Ale například komponentu k poskytování souborů ke stažení si však už musíte stáhnout.

Původně byl Mambo vyvíjen jako komerční aplikace firmou Miro International Pty Ltd., v jisté době byl však kód otevřen a uvolněn pod GPL licencí. Vývoj se zrychlil (přece jenom je komunita mocnější) a přibylo mnoho vylepšení. Na jeho vzhledu a vybavení je to znát, protože produkt je velmi promyšleně koncipován. Pokud vám nějaká komponenta schází, můžete se pokusit vybrat si z několika stovek dalších tzv. "produktů třetích stran" (většinou zdarma).

Typo3

CMS, který najdete na typo3.org. Jedná se velmi propracovaný CMS projekt, který je nabízen ke stažení v mnoha předinstalovaných balících s Apache a MySQL serverem. Nainstalujete a funguje to. Potíž nastává při překládání do rodného jazyka. Osobně mne však Typo3 nenadchlo, necítil jsem se při práci s ním dobře. Je sice dle mne intuitivnější než PHP-Nuke, problém je ovšem s dokumentací (zvláště začátečnickou), protože ta ještě není plně napsána, a tak můžete tápat. Také mi moc nevyhovuje stromově řešené rozhraní. Ukázku použití Typo3 můžete najít na blender3d.org, který opravdu vypadá skvěle a zároveň můžete vidět, že se s ním dá vytvořit opravdu rozsáhlý web, jakým blender3d.org určitě je. Typo3 je subjektivně lepší než PHP-Nuke a působí jaksi učesanějším a profesionálnějším dojmem.

Image

I když je Mambo původem z Austrálie, není postaveno na hlavu. Komerční model je využit velmi zajímavě. Systémy, které se rozšíří do světa, postupem času začnou nějakým způsobem shánět finanční prostředky. Původní tvůrce firma Miro International dále nabízí Mambo v komerční sféře. Není to ovšem prodávání licencí, ale balíku služeb kolem něj, přesněji hostingu a konzultací kolem provozu Mamba. Mambo je jinak samozřejmě zdarma. Velké firmy, které chtějí Mambo implementovat do svých informačních systémů tak mají jistotu, že se o ně někdo (tedy nějaký existující subjekt) postará, což bývá častým protiargumentem k tomu, proč nepoužívat open-source projekty - komunita není jasně definovaná a na koho si pak budeme stěžovat a u koho budeme sjednávat nápravu, když vlastně neexistuje?

Prostor pro nezávislé programátory je hodně široký a mnoho z nich nabízí své služby. Můžete si tak nechat na míru ušít modul, který vám schází nebo nevyhovuje a v cenách, které se s komerčním vývojem nedají srovnávat. Nemusí to totiž nutně znamenat, že když je to levné, je to automaticky nekvalitní.

Image

To, co dělá každý CMS systém, jsou vzhledové šablony. Máte k dispozici desítky kvalitních šablon zdarma, které můžete upravit k obrazu svému. Vývojářů je však dost a vždy je možno někoho kontaktovat, s kým se dohodnete na zakázkové práci. Například zakázková výroba šablony s grafickým návrhem vychází někde kolem 100 Euro, což je cena velmi příznivá. Hotové, ale placené šablony se dají sehnat již od 20 Euro za licenci na jeden web. Samozřejmě s plnou podporou autora.

Další prostor nabízí firmám vývojáři modulů a komponent. Když budujete internetový obchod, přijde vám třeba vhod, když vám někdo udělá speciální modul na platby nebo import a export dat z vašeho účetního programu. A právě zde je první velmi pozitivní výhoda nezávislých modulů. Můžete si je nechat naprogramovat a nemusí být nutně zveřejněny pod GNU GPL licencí, pokud samozřejmě nepřepisujete již nějakou hotovou komponentu (s GNU GPL).

Síla komunity semknuté kolem CMS Mambo je obrovská. Pokud řešíte nějaký nezvládnutelný problém, vždy se najde někdo, kdo pomůže. Fórum je opravdu živé. Trošku snad mrzí, že musíte vládnout světovými jazyky, česká komunita není natolik silná, aby mohla aktivně vyvíjet nějakou činnost. Ale blýská se na lepší časy. Na druhou stranu jsem jako začátečník nikdy neměl pocit méněcenného, vždy mi bylo vše vysvětleno a hlavně rychle.

Image

Co tedy můžete od Mamba čekat? Především velmi jednoduchou instalaci na jakékoliv platformě (osobně jsem vyzkoušel instalaci na Linux a Windows) a bezproblémový chod. Instalace dodatečných modulů je také bezproblémová. K provozu je zapotřebí web server Apache s nainstalovanou MySQL databází a podporou PHP. Mambo se pak dá provozovat na FreeBSD, MacOS X, Linuxu a Windows. Jediným specifickým požadavkem je tak již pouze verze PHP, a to 4.1.2 a vyšší.

Horkou novinkou je vypuštění nové verze 4.5.1 (v září 2004), která je opět propracovanější a přináší mnoho nových prvků, které ve verzi 4.5 vůbec nejsou. Má to celé jeden háček, protože se změnila struktura a logika některých dříve používaných postupů, je zapotřebí, aby se některé moduly přizpůsobily nové struktuře. A nejvíce se to týká šablon vzhledu. Situace ze začátku testování beta verzí byla dost kritická, protože spousta věcí nefungovala, ale s vydáním nové a stabilní verze se vše obrátilo a tvůrci postupně přicházejí s upravenými verzemi svých produktů. Na druhou stranu to vyvolalo trošku zmatek, protože musíte sledovat, jestli je komponenta/modul/šablona pro verzi 4.5 nebo 4.5.1 a ta jednička na konci je opravdu důležitá.

Instalace

Instalace se provádí ve dvou krocích. Prvním je vytvoření databáze pro provoz Mambo serveru na vašem hostingovém serveru. Tu musíte vytvořit sami. Mně se osvědčil PHP MyAdmin, s jehož pomocí jsem si vytvořil databázi Mambo. O zbytek se postará instalační program, jen si poznamenejte jméno databáze, heslo a jméno uživatele, který k ní má přístupová práva. Je to výrazně jednodušší než u PHP-Nuke, protože tam si musíte databázi vytvořit sami pomocí spuštění příslušného SQL skriptu na serveru. Nic takového není s Mambo nutné. Pro instalaci na serveru pak už jen stačí použít FTP klienta a nakopírovat strukturu z rozbaleného archivu na FTP do nějakého adresáře. Veškerá další nastavení se pak již provádějí s využitím internetového prohlížeče.

Do prohlížeče zadáte adresu svého Mambo serveru, který pozná, že ještě nebyl nainstalován a provede vás několika kroky instalace, kde si od vás zjistí jméno databáze, se kterou má pracovat, uživatelské jméno s přístupem k databázi, jméno vaší prezentace a jméno administrátora s příslušným heslem pro přístup. Máte také možnost nechat si vytvořit demonstrační databázi, která vám pomůže v začátcích pochopit jak konfigurovat a vytvářet obsah. Instalace je opravdu velmi jednoduchá, takže se o ní nebudu podrobněji rozepisovat.

Image

Ještě bych se rád zmínil o tom, jak je prováděno rozšiřování funkčnosti celého CMS Mambo. Děje se tak za použití tzv. modulů a komponent, v nové verzi 4.5.1 jsou zde ještě boti. Pokud jsou však některé vlastnosti "natvrdo" zapsány v tzv. core (jádro) a potřebujete je změnit, musíte provést tzv. hack. Zatímco novou funkčnost získáte velmi jednoduchou instalací s využitím administrátorského rozhraní (instalace se provede výběrem souboru na disku a jeho odesláním na server do určené adresářové struktury), hack musíte zpravidla zapsat přímo do specifického PHP souboru přímo ve struktuře adresářů Mamba. Najdete příslušný řádek a změníte řádek kódu nebo někdy i celý blok). Licence GPL toto samozřejmě umožňuje a někdy prostě neexistuje jiný způsob jak požadovanou změnu provést.

Příště se vrhneme na administraci a práci s Mambem.

Diskuze (0) Nahoru