1.1. Alapfogalom: a Drupal tartalomkezelő
Tulajdonképpen minden olyan szoftveres eszközt, aminek a segítségével a felhasználók tartalmakat hozhatnak létre, szerkeszthetnek, tehetnek közzé vagy törölhetnek egy webhelyről, pusztán egy asztali vagy mobilos webböngésző használatával, tartalomkezelő rendszernek (angolul Content Management System) nevezhetünk. Ezek a CMS-ek leggyakrabban valamilyen szkriptnyelven íródnak, majd egy olyan számítógépen futtatják őket, amin egy webszerver is fut a háttérben, valamint egy adatbázisprogram is elérhető. Ez utóbbira azért van szükség, mert a webhely valamennyi tartalma és beállítása általában ebben van tárolva, hogy kérés esetén gyorsan elő lehessen őket hívni. Ilyenkor a webszerver fogadja a bejövő kérést, és továbbítja a CMS-nek, aminek a szkriptjei értelmezik azt, és megkezdik a feldolgozását. Kikérik a szükséges információkat az adatbázisból, és azt az előre meghatározott építőelemek (pl. oldalsablonok, CSS- és JavaScript-fájlok, képek stb.) felhasználásával egy kész weboldallá „csomagolják” össze, amit válaszként visszaadnak a webszervernek, ez pedig továbbítja a kérést küldőnek.
Az ebben a folyamatban részt vevő szoftvereket egymásra épülő szintenként is elképzelhetjük: legalul van az operációs rendszer (leggyakrabban Linux), ezen fut a webszerver (szintén gyakori az Apache), mellette az adatbázis-kiszolgáló (például MySQL), legfelül pedig a szkriptnyelv értelmezője, a PHP. Ezek kezdőbetűit összeolvasva kapjuk a sok helyen említett LAMP mozaikszót, amivel ezt a szoftverkombinációt (angolul stack-et, azaz „rakást”) szokták jelölni.
A Drupal egy rugalmas, sok különböző fajta webhely megvalósítására alkalmas tartalomkezelő rendszer, ami egy ilyen LAMP-stacken futtatható. Legnagyobb erőssége a csereszavatos elemekből (ún. modulokból) való felépítése, aminek köszönhetően a webhely teljes funkcionalitása könnyen testreszabható a felhasználói felületen keresztül, a forráskód ismerete nélkül is. A webhely funkcióinak kialakításához hasonlóan egyszerű a látványvilágának beállítása is a kompatibilis sminkek révén. A kiinduló csomag a Drupal magját képező PHP-szkripteket tartalmazza csak, ezért alaprendszernek is nevezzük magyarul. Ez önmagában még csak a működéshez leginkább szükséges funkciókat tartalmazza, és a Drupal.org címen szintén ingyenesen letölthető több ezer modullal és sminkkel igényeink szerint bővíthetjük tovább.
Bár a leggyakoribb eset a LAMP alapokra való telepítés, a Drupal több más rendszerrel is együttműködik:
- Az operációs rendszer lehet Windows vagy MacOS is, nem csak Linux.
- A webszerver lehet Nginx vagy IIS is, nem csak Apache.
- Az adatbázis-kiszolgáló lehet PostgreSQL vagy SQLite is, nem csak MySQL. Tulajdonképpen bármilyen MySQL-kompatibilis rendszer alkalmas, mint például a MariaDB vagy Percona.
A fentieken kívül más operációs rendszerek, webszerverek és adatbázis-kiszolgálók is működhetnek alatta, egyetlen dolog azonban semmiképp sem változtatható meg: mivel a Drupal forráskódja PHP-ben van írva, ezért ennek a szkriptnyelv-értelmezőnek a szerveren mindenképp telepítve kell lennie.
Ha egy webhely felépítésére adjuk a fejünket, választhatunk egyet az interneten elérhető számos tartalomkezelő szoftver közül, bérelhetünk egy előre feltelepített szolgáltatást, belevághatunk saját CMS-program megírásába, de akár felépíthetjük leendő webhelyünket CMS rendszer nélkül is. Az alábbiakban felsorolunk pár nyomós érvet arra, hogy a Drupal választása vezethet minket sikerre:
- Egy kicsi, csak egy vagy pár oldalból álló webhely felépítése statikus HTML-ben nem bonyolult, és egyszerűségétől függően viszonylag gyorsan elérhető cél. Ehhez képest rögtön egy CMS-ben elkezdeni felépíteni talán kicsit több időt vehet igénybe az elején, viszont azzal a felbecsülhetetlen előnnyel jár, hogy a későbbiekben sokkal könnyebben alakítható egy online szerkesztőfelületen keresztül. Ehhez jön még hozzá a jobb áttekinthetőség (ami segítség a kevésbé járatos felhasználóknak) és az egységesség, amit egyre több HTML-oldal esetén szinte lehetetlen fenntartani egy idő után. Nem beszélve az olyan bonyolultabb képességek megvalósításáról, amikhez már adatbázis-kapcsolat használatára van szükség.
- Néhány CMS célszoftverként készült: vannak például olyan csomagok és előtelepített szolgáltatások, amiket készítőik kifejezetten egy blog vagy webáruház működtetésére szabtak. A Drupal ellenben mindig a multifunkcionalitásra törekszik. Ha már pontosan tudjuk, hogy milyen kategóriájú webhelyet tervezünk felépíteni, akkor egy célszoftver, bár ígéretesnek tűnhet, magában rejti azt a komoly veszélyt, hogy nagyon hasonló lesz sok versenytársunk webhelyéhez. Ha ezt szeretnénk elkerülni, és valami újszerűt találtunk ki, amit más eddig még nem csinált, akkor összeválogathatjuk a szükséges funkciókat egy bőséges webhelyépítő készletből – ez a Drupal.
- Ha kicsit is értünk a programozáshoz, vonzónak tűnhet belevágni egy saját CMS fejlesztésébe, hiszen így izgalmas, új dolgokat valósíthatunk meg, mivel semmi sem köti a kezünket. Azonban egyedül maradunk, és csak magunkra számíthatunk az olyan funkciók elkészítésében, tesztelésében, kijavításában és biztonsági ellenőrzésében, amit sok ezer ember együttes erővel hosszú évek alatt már elvégzett – lássuk be őszintén – nálunk valószínűleg jobban.
- Néhány tartalomkezelő szoftver licencének az ára megfizethetetlenül magas, amit egy éppen induló webhely mint üzleti vállalkozás nem tud finanszírozni a költségvetéséből. Néhány más rendszernek vannak ugyan ingyenesen kipróbálható, csökkentett képességű változatai, de ezek éppen a továbbfejleszthetőséget áldozzák fel az olcsóság oltárán. Ehelyett létezik a Drupal, amelyet jogi licence mindenki számára hozzáférhetővé, tetszés szerint módosíthatóvá és szabadon terjeszthetővé tesz, tehát senkinek nem kell fizetni a használatáért. Minderről bővebben az 1.6. szakasz - Alapfogalom: a Drupal világa témakörnél olvashatunk.
- The Drupal overview, azaz a „Drupal áttekintése” a Drupal.org-on angol nyelven.
- FAQ, azaz „Gyakran ismételt kérdések” (GyIK) a Drupal.org-on angol nyelven.
- Case Studies, azaz „Esettanulmányok” a Drupal.org-on angol nyelven.
- Tartalomkezelő rendszerek szócikk magyarul a Wikipédián.
- Modular design, azaz „Moduláris dizájn” szócikk a Wikipédián angol nyelven.
Közreműködők
Írta és szerkesztette: Kristof van Tomme (Pronovix), Jennifer Hodgdon és Michael Lenahan (erdfisch). Fordította: Balu Ertl (Brainsum)
Source file: understanding-drupal.asciidoc
Help improve this page
You can:
- Log in, click Edit, and edit this page
- Log in, click Discuss, update the Page status value, and suggest an improvement
- Log in and create a Documentation issue with your suggestion