Redakčné systémy (1) - Drupal

V prvej časti sa zoznámime s redakčným systémom Drupal. Ako ho nainštalovať, nakonfigurovať a pridať zopár užitočných modulov.

11.11.2004 08:00 | Peter Marcely | přečteno 18822×

Pár slov na úvod

Každý z nás sa už určite niekedy zamyslel nad tým, že by chcel mať vlastnú stránku. Ambície niektorých siahajú vyššie a chceli by mať rovno systém s pridávaním a administráciou článkov, komentárov, hodnotení, atď. Nie každý však má dostatok času a odhodlania, aby takýto prepracovaný systém vymyslel a naprogramoval. Našťastie máme môžnosť využiť niektorý z OpenSource CMS (content management system). Rozhodne máme z čoho vyberať. Patria sem napríklad PHPNuke, PostNuke, Plone, Xoops, alebo tiež český PHPRS a slovenský DEV. O tých si napíšeme možno niekedy nabudúce.

Jeden z najviac používaných redakčných systémov je nepochybne Drupal, ktorému sa dnes budeme venovať. Drupal okrem už spomínanej administrácie článkov, komentárov a hodnotení zahŕňa tiež podporu zmeny rôznych tém, jazykov, logovania, zoskupovania článkov do kategórií, importu a exportu dát cez RSS/RDF, administráciu užívateľov a veľa daľšieho. Nedostatkom je zatiaľ nedokončený preklad do češtiny, ale to sa dá našťastie vyriešiť.

Inštalácia

Skôr než sa pustíme do samotnej inštalácie, musíme sa uistiť, že máme spustený webserver s podporou PHP a MySQL/PostgreSQL.
Na debiane nám stačí spustiť apt-get install drupal, drupal potom nájdeme v /usr/share/drupal. V iných distribúciach musíme ísť na to zložitejším spôsobom.

Stiahneme najnovší drupal $ wget http://drupal.org/files/projects/drupal-4.5.0.tar.gz
Rozbalíme ho $ tar -zxvf drupal-4.5.0.tar.gz
Premiestnime ho podľa konfigurácie apache do DocumentRoot $ mv drupal-4.5.0 /var/www/drupal
Vytvoríme datábazu $ mysqladmin -u uzivatel -p create drupal
Prihlásime sa do databázy $ mysql -u uzivatel -p
a zadáme tieto príkazy:
GRANT ALL PRIVILEGES ON drupal.* TO drupal@localhost IDENTIFIED BY 'heslodrupal';
flush privileges;

Do databázy vložíme tabuľky $ mysql -u nobody -p drupal < /var/www/drupal/database/database.mysql

Poslednou fázou je konfigurácia. V súbore include/conf.php nastavíme tieto riadky:
$db_url = "mysql://drupal:heslodrupal@localhost/drupal";
$base_url = "http://www.mojastranka.sk/drupal";

Nakoniec nastavíme práva adresáru drupal/ užívateľovi, ktorý používa webserver
$ chown -R nobody drupal/;chgrp -R nobody drupal/
Keďže drupal potrebuje aktualizovať činnosť niektorých modulov (napríklad RSS feedy), pridáme do crontabu tento riadok:
0 * * * * wget -O - -q http://www.mojastranka.sk/drupal/cron.php

Konfigurácia

Teraz už len zadáme do browsera www.mojastranka.sk/drupal a mali by sme vidieť úvodnú stránku. Prvý účet, ktorý si zaregistrujeme, bude mať administrátorské práva. Tu sa nám zobrazí administrárske menu, cez ktoré všetko spravujeme. Konfigurácia samotného nastavenia redakčného systému nie je nič zložitého, celý drupal sa dá nastaviť doslova za chvíľu. Nebudeme si preto ukazovať všetky jednoduché nastavenia, ukážeme si len zopár najdôležitejších.

Základom pre výzor našej stránky sú v menu položky Themes a Blocks. V Themes, ako ste sa určite dovtípili, môžeme meniť témy. Máme možnosť vyberať zo 4 základných, ďaľšie sa dajú stahovať z drupal.org. Stiahnuť ich musíme do adresára drupal/themes. V Blocks nastavujeme rozmiestnenie objektov (navigácia, prihlásenie, rss feedy apod.) na hlavnej stránke. V Modules môžeme zapnúť/vypnúť jednotlivé moduly. Opäť možno pridávať nové moduly, ktoré nájdeme na oficiálnej stránke Drupalu. Vďaka nim môžeme Drupal nastaviť od jednoduchého weblogu až po obrovský internetový portál.

Meníme jazyk

V súčasnosti je preklad Drupalu do češtiny hotový zhruba na 50%. Ten si stiahneme a v modules aktivujeme modul locale. V menu sa nám objaví položka localization. Tu jednoducho zvolíme import a vyberieme lokalizáciu.

Lokalizácia do slovenčiny žial neexistuje. Drupal však ponúka skvelú možnosť prekladať priamo za behu. V localization > add language pridáme slovenčinu, zvolíme manage strings a dáme vyhľadávať reťazec, ktorý chceme preložiť. Ak máme chvíľu času, nie je problém preložiť všetko, čo uvidí bežný užívateľ.

Vytvárame kategórie

Je samozrejmosťou, že články musíme triediť do kategórií. Presvedčíme sa, že máme v modules aktivovaný modul taxonomy. Zvláštnosťou je, že sa v defaultnej inštalácií nenáchadza modul taxonomy_menu, ktorý nám umožní pridať kategórie priamo do menu Navigation. Nezostáva nám teda nič iné, len ho stiahnuť a aktivovať. V menu vyberieme categories (v starších verziách taxonomy) > add vocabulary. Tu zadáme názov, popis, vyberieme typ hierarchie. Drupal nám tiež ponúka povoliť príbuzné príspevky. Multiple select nám umožní umiestniť článok do viacerých podkategórií. Máme dve možnosti ako zobraziť kategórie. Ak teda stiahneme a aktivujeme modul taxonomy_menu, kategórie sa nám pridajú do menu Navigation. Druhou možnosťou je umiestniť samostatné menu Categories pomocou Blocks. Teraz môžeme smelo začat triediť články do kategórií.

Importujeme a exportujeme dáta(RSS)

Ak chceme mať na stránke najnovšie správy z iných serverov, pustíme sa do nastavovania. V modules povolíme aggregator, pribudne nám položka aggregator v administrátorskom menu. Tu môžeme vytvárať kategórie, do ktorých združíme jednotlivé RSS feedy. V prípade, že vytvárame nový RSS Feed a chceme ho mať umiestnený ako objekt na hlavnej stránke, vyberieme v Latest items block toľko nových správ, koľko chceme mať zobrazených na hlavnej stránke. Potom už len umiestnime feed v blocks a najnovšie správy z iných serverov sa nám zobrazia na stránke.

Export je veľmi jednoduchý, stačí povoliť položku Syndicate v blocks a na stránke sa nám objaví ikona RSS.

Nastavujeme práva užívateľov

Každý redakčný systém stojí na rozdelení užívateľov. Bežní používatelia bez registrácie nemusia mať možnosť písat komentáre, registrovaní užívatelia nemusia mať právo písať články, privilegovaní užívatelia síce majú možnosť písať články, ale ten musí byť schválený od administrátora... Drupal našťastie ani v tejto oblasti nezaostáva. V administrátorskom menu môžeme nájsť položku user, kde nám configure>roles ukáže funkcie užívateľov. V defaultnej konfigurácií sa nachádza len anonymous user a authenticated user, to nám ale zrejme stačiť nebude. Preto si podľa potreby popridávame jednotlivé funkcie a práva týchto užívateľov nastavíme v permissions.

Hlasujeme a hodnotíme

Niekedy potrebujeme na stránku umiestniť anketu. Na to nám stačí aktivovať modul poll a v create content nájdeme aj poll, v ktorom okrem otázky a odpovedí môžeme nastaviť dĺžku trvania ankety. Umiestnime ho opäť cez blocks.

Ďaľšia základná vec pre redakčný systém je aj hodnotenie článkov. Poslúži nám modul Node Moderation, ktorý aktivujeme a cez administrátorske menu nastavíme v Node Moderation > Moderation votes hodnotenia a ich poradie, v ktorom sa budú hodnotenia zobrazovať(Skvelé-1,Pekné-2,Priemerné-3...).

Množstvo ďalších modulov

Nie je v mojích silách vymenovať všetky moduly, ktoré je možné pridať do Drupalu. Preto by som vám dal do pozornosti len zopár z nich. V prípade, že chceme umiestniť na stránke reklamu, budeme potrebovať modul Banner. Ten dokáže zobrazovať rozličné bannery, koľkokrát bol daný banner zobrazený a koľkokrát sa naňho kliklo. Ak si chceme otvoriť internetový obchod, môžeme stiahnuť a nakonfigurovat modul E-Commerce. Modul Image nám ponúka možnosť vkladať obrázky priamo cez Drupal. Smileys nám nahradí písaných smajlíkov obrázkami, Mail nám umožní posielať emaily, Privatemsg umožní posielať správy medzi jednotlivými užívateľmi, Weather nám na stránku pridá stav počasia. Odporúčam prejsť si drupal.org a pridať všetky moduly, ktoré sa vám hodia.

Inšiprácia

Na záver pár ukážok Drupalu v akcii:

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=495