Drupal és WordPress – hasonlóságok és különbségek
A Drupal és a WordPress is tartalomkezelő rendszer (CMS), és így sok a hasonlóság bennük, ám sok a különbség is, amelyek elsősorban a rugalmasságban és a bővíthetőségben gyökereznek.
A WordPress a legnépszerűbb tartalomkezelő rendszer, aminek az az oka, hogy könnyű létrehozni vele egy egyszerűbb website-ot, mert minden előre meg van határozva benne.
Ezzel szemben a Drupal rugalmas, a Drupalban nem „készen” kapjuk a dolgokat, hanem minden funkcionalitás és a tartalomfelvitel módja is testreszabható.
Ha alternatívát keres a WordPressre, az alábbi összehasonlításunk segíthet.
Hasonlóságok
Programozási nyelv
Mindkét tartalomkezelő rendszer PHP programozási nyelven alapul, és mindkettő nyílt forráskódú, ami azt jelenti, hogy bárki ingyenesen letöltheti, használhatja, valamint hozzáférhet a forráskódhoz is, és szabadon szerkesztheti. Mindkét tartalomkezelő rendszert közösség készíti, így gyorsabban fejlődik, mintha egy ember vagy egy cég készítené.
Modulok és pluginok
Mindkét tartalomkezelő bővíthető funkciókkal, kiegészítő szoftverekkel, amelyeket letölthetünk és telepíthetünk a platformra. Ezeket a Drupalban moduloknak, a WordPressben pluginoknak nevezik. Ezeket a kiegészítőket, akár magát a platformot mindkét CMS esetében karban kell tartani és rendszeresen frissíteni kell.
Különbségek
A Drupal mindent tud, amit a WordPress – és még többet is. Ám lehetséges, hogy ugyanazt a funkcionalitást több munkával lehet Drupalban megvalósítani, viszont a végeredmény is stabilabb és testreszabottabb lesz.
A leggyakrabban említett különbség és az elsődleges érv a WordPress mellett az szokott lenni, hogy könnyebb elkészíteni egy WordPress-, mint egy Drupal-website-ot.
Igaz ugyan, hogy egy WordPress website elkészítése és beüzemelése kevesebb tanulást igényel, mint egy Drupal-website-é, de ennek megvan az ára.
A tartalom kezelése (feltöltése, szerkesztése) pedig egyformán könnyű mindkettőn.
Tartalomtípusok
Wordpress
A WordPress eredetileg blogolásra tervezett platform, és ennek megfelelően kétféle fix, beépített tartalomtípusa van: a poszt és az oldal. A poszt tartalomtípussal blogposztokat (híreket) lehet létrehozni, amelyek címkézhetők és kategóriaoldalon listázhatók, az oldal tartalomtípus pedig például az ászf, a kapcsolat és egyéb oldalakhoz használatos.
Ha azonban valamilyen egyéb, speciális tartalomtípusokra van szükség – például állásajánlatok vagy „munkatársaink” oldalakra –, a WordPress-szel korlátokba ütközünk. Ilyenkor ugyanis erre a célra kialakított felületre van szükség, a megfelelő mezőkkel (pl. állás megnevezése, fizetés, munkaidő, munkavégzés helye stb.; vagy épp név, titulus, specializáció, önéletrajz, közösségimédia-elérhetőségek, céges elérhetőségek, telefon…), úgy, hogy ez a felület sablonként is működik.
A teljesítmény terén is korlátokba ütközünk ilyen esetekben a WordPress-szel. A WordPressben az adatszerkezet előre meg van határozva, és a beépített tartalomtípusok adatait jól is tudja kezelni, azonban ha plugin segítségével létrehozunk további tartalomtípusokat mezőkkel, azoknak az adatoknak a kezelése már nem olyan hatékony, mivel nem erre van kitalálva, ezt a funkciót a pluginnal „beleerőltetjük”.
Drupal
A Drupalban az alapértelmezett telepítéssel szintén kapunk blogolásra alkalmas funkcionalitást. Viszont ez a CMS úgy van megtervezve, hogy igény szerinti tartalomtípusokat, és minden tartalomtípushoz saját adatszerkezetet hoz létre az adatbázisban.
A Drupalban is megvan alapból a poszt és oldal tartalomtípus, de létrehozhatunk bármilyen más tartalomtípust is, igény szerinti mezőkkel, például „csapattag” tartalomtípust, név, beosztás, profilkép, bemutatkozószöveg mezőkkel, és már hozhatjuk is létre hozzá az oldalakat, úgy, hogy egyszerűen csak kitöltjük ezeket a mezőket egy űrlapon. A csapattagoldalakból pedig létrehozható egy automatikusan frissülő nézet, amit behívhatunk bármilyen oldalra, például a Rólunk vagy a Csapat oldalra.
A Drupalt arra tervezték, hogy egyedi igényeknek megfelelő tartalomtípusokat lehessen készíteni vele, és ezért az adatokat is hatékonyan kezeli, vagyis az adatszerkezetet mi határozzuk meg azáltal, hogy mezőket és tartalomtípusokat hozunk létre.
Ráadásul megvan a lehetősége, hogy bármelyik elem (entitás) bármelyikre tudjon hivatkozni, kapcsolatokat hozzunk létre köztük. Így megoldható például, hogy ha van egy csapattag, aki a blogra is írt bejegyzéseket, akkor az adott csapattag oldalán egy nézetben automatikusan ki legyenek listázva az általa írt blogposztok.
Kiegészítők (pluginok és modulok)
WordPress
A WordPressben a funkcionális kiegészítő szoftverek, a pluginok nagyon egyszerűen, egy gombnyomással hozzáadhatók a weboldalhoz, és máris használatra készek, vagy minimális konfigurációt igényelnek.
Ez igen vonzóvá teszi a platformot, ám nem árt óvatosnak lenni: ezek a pluginok ugyanis nem mindig kompatibilisek minden más pluginnal vagy a rendszerünkkel, és ezért nem mindig működnek megfelelően, vagy nem úgy működnek, ahogyan várnánk, sőt rosszabb esetben a weboldal is összeomolhat tőlük.
Azt sem szabad elfelejteni, hogy sok pluginnak az alapváltozata ingyenes csak, a fejlettebb funkciókért fizetni kell.
Drupal
A Drupalhoz is rengeteg funkcionális kiegészítő szoftver, azaz modul letölthető. A Drupal moduljainak 99%-a azonban teljes mértékben ingyenes, vagyis a telepítés után a teljes funkcionalitásuk rendelkezésre áll, nincs külön ingyenes és fizetős verziójuk.
A modulok nem annyira „konyhakészek”, mint a pluginok, nem annyira „plug and play” elven működnek, vagyis nem az az elsődleges szempont a készítésük során, hogy minél egyszerűbbek legyenek, hanem a funkcionalitás rugalmassága és a kompatibilitás.
Így komplexebb a működésük, és az igazán célszerű módon való telepítésük bonyolultabb, mint a pluginoké, viszont jobban is konfigurálhatók, testreszabhatóbbak, és valóban és pontosan azt fogják csinálni, amire szeretnénk használni őket.
Bár a Drupalban ez is több hozzáértést igényel, a körültekintő, professzionális telepítés és beállítás, testreszabás viszont azt is jelenti, hogy biztosan működni fognak, és nem lesz interferencia az egyes modulok között, nem fogják blokkolni egymást vagy más problémát okozni a website működésében.
A Drupal 8-as és magasabb verziószámánál a modulok erőforrásigénye is optimalizált, így egyszerre sok modul telepítése és használata sincs kifejezetten negatív hatással a teljesítményre, az oldalak betöltési sebességére.
Az oldalak vizuális fel építése, oldaldizájnok
WordPress
A WordPressben a népszerű oldalépítő pluginokkal (pl. Elementor vagy WP Bakery) létre lehet hozni különféle oldalelrendezéseket (layoutokat), amelyekben szinte minden oldalelemnek egyedileg lehet alakítani a stílusát, formázását. Ez vonzó lehet azok számára, akik szeretnek egyedi, kreatív oldalakat készíteni, de nincsenek CSS-ismereteik.
Itt is igaz azonban, hogy bár az alapverziója ezeknek a pluginoknak ingyenes, ha bármilyen, az alapverzióban nem megtalálható oldalelemre van szükségünk, fizetnünk kell.
Ezenkívül ügyelni kell rá, hogy a desktopon jól mutató oldalelrendezés tablet és mobil képernyőméreten is használható legyen és jól mutasson, aminek a tesztelése és megigazgatása sokszor elég időigényes, és nem is mindig lesz 100%-os a végeredmény.
Az oldalak betöltési sebességét is lassítják sokszor ezek az erőforrás-igényes pluginok, és az is, hogy az egyedi felépítés és formázás miatt az oldal forráskódjához gyakran nem kevés extra kód adódik hozzá.
Drupal
Ma már a Drupallal is létrehozható oldalépítő funkció, amellyel hasonló eredményt érhetünk el, mint az Elementorral. Például kialakíthatunk többoszlopos elrendezést, beállíthatunk háttérszínt vagy háttérképet szekcióknak, slideshow-t helyezhetünk el az oldalakon, abban képet, szöveget…
Így Drupallal is létrehozhatók egyedi layoutok és oldaldizájnok – nálunk a Flexi Build weboldalnak van ilyen oldalépítő funkciója, de a legtöbb egyedi fejlesztésű weboldalhoz is kérnek a megrendelőink oldalépítő funkciót.
A Drupalban az oldalépítő funkciót és az oldalelemeket fejlesztők készítik elő, az egyedi oldal dizájnjához illeszkedve (például egy slideshow-t, annak kinézetét, formázását, működését), aminek van legalább három nagy előnye.
- Egyrészt ezeket az előkészített, megformázott oldalelemeket egyszerűbb hozzáadni az oldalakhoz (akárcsak a tartalomtípusok esetében, egyszerűen csak ki kell választani a layoutelem típusát, majd ki kell tölteni egy “űrlapot” a tartalommal).
- Másrészt a fejlesztők által előkészített oldalelemek, amelyeket kombinálni lehet egy-egy oldalon belül, már eleve optimalizálva vannak a különféle képernyőméretekre, vagyis az oldal elkészítése után nem kell ellenőrizni mobilon és tableten, és megigazgatnia őket az oldal kezelőjének.
- Továbbá, mivel nem egyedi kód jön létre minden oldalhoz, hanem professzionálisan, az adott célra megformázott elemeket használunk, az egyes oldalak kódja is tiszta marad, nem lesznek benne felesleges elemek, így a betöltődési sebességük sem lassul.
+1 Bónusz, hogy mivel az elemek stílusa meg van írva, biztosan egységes marad a website dizájnja is, attól függetlenül, hogy milyen egyedi layoutokat alkot a felhasználó az oldalelemekből.
Keresőoptimalizálás (SEO)
WordPress
A WordPress egyik legnagyobb vonzereje abban rejlik, hogy laikusként is össze tudunk rakni vele egy egyszerűbb website-ot, a különféle pluginokkal pedig rengeteg kiegészítő funkcionalitást is tudunk telepíteni egy gombnyomással.
Azonban a sok plugin használata erőforrás-igényes, így hat a teljesítményre, ami újabb plugin(ok) telepítésével és megfelelő konfigurálásával javítható (vagy egyedi fejlesztéssel eleve jobb teljesítményű WordPress-website építhető).
A gyors oldalbetöltődésnek döntő szerepe lehet a SEO terén, ám a WordPressben a cache-elés beállításának módosításához külön plugint kell telepíteni.
A technikai SEO-n kívül a tartalom optimalizálásához is letölthetők pluginok.
Drupal
A Drupal platformnak beépített funkciója az intelligens és hatékony cache-elés, ami óriási hatással van a website teljesítményére, oldalbetöltési sebességére.
Az egyedileg konfigurált, hozzáértő által testreszabott modulok használata mellett szintén megmarad a teljesítmény.
Ezenkívül a Drupalhoz is elérhető minden, a tartalmi optimalizáláshoz szükséges modul (ezeket mi minden weboldalunkra telepítjük és beállítjuk az átadásra).
Biztonság
WordPress
A pluginok gyakran biztonsági rést jelentenek, hiszen rengeteg elérhető belőlük, és a kódolásuk sem mindig professzionális, így megfelelő elővigyázatossággal érdemes telepíteni és használni őket. Nem árt meggyőződni róla, hogy a plugin megbízható forrásból származik, kompatibilis a legfrissebb WordPress-verzióval, és van támogatása, karbantartják. Elég csak egy, rosszul elkészített vagy nem frissíthető plugin, vagy egy elmaradt frissítés, akár a pluginokon, akár a platformon, akár a szerveren, és máris feltörhető az oldal.
Ha a programozáshoz, webhelyek karbantartásához nem értő, a WordPresst éppen az egyszerű beüzemelése miatt választja valaki, és nem fordít kellő figyelmet a platform és az összes plugin rendszeres biztonsági frissítésére, ezzel is komoly biztonsági rést teremt a webhelyen, és könnyen meglehet, hogy az oldalt feltörik és/vagy ellopják az adatokat róla.
Sőt, egy olyan website, ami nem tárol személyes adatokat is használható adatlopásra – például láttunk már olyat, hogy a feltört oldalra feltettek egy banki bejelentkező felületet, majd az oldalt elküldték e-mailben egy címlistára. A címzettek beléptek a „bankba”, és már meg is történt a jelszólopás.
Gyakori az is – minket is kerestek már meg ilyen esetekkel –, hogy feltört WordPress-site-ra feltöltöttek felnőtt-tartalmakat vagy reklámot. Ez szintén nem tesz jót egy üzletnek.
Drupal
Az egyik dolog, ami miatt a Drupal hírnévre tett szert, az a biztonságossága.
A Drupalnak van egy dedikált, biztonságért felelős csapata, amely a világ különböző pontjain található vállalatok, szervezetek szakembereiből áll. Ez a csapat felelős a CMS biztonságosságáért, ők azonosítják és javítják a biztonsági réseket.
A modulok erre a biztonságos alapra épülnek, és ugyanolyan szigorú vizsgálaton esnek át, mint az alapkódbázis, mielőtt elérhetővé válnak a szélesebb közönségnek. Azután pedig a felhasználók küldhetnek hibajelentéseket, amelyeknek a fejlesztő csapat utánajár, és javítja a hibákat. Mindez nyilvánosan zajlik.
A jelszavak is többféleképp titkosítva kerülnek az adatbázisba, és maga az adatbázis (vagy annak egy része, pl. egyes tartalomtípusok, űrlapok, felhasználói fiókok) is titkosítható.
A Drupal folyamatosan értesít a CMS és a modulok újabb verzióiról.
Mi is gondoskodunk róla, hogy az ügyfeleink Drupal-webhelyei biztonságban legyenek, csak biztonságos modulokat telepítünk. A nálunk hostolt oldalak esetében pedig nemcsak a tartalomkezelő rendszerre és a modulokra, hanem a szerverre is rendszeresen telepítjük a biztonsági frissítéseket.
Összefoglalás
Drupalra specializálódott fejlesztő csapatként nyilvánvaló, hogy számunkra a Drupal kerül ki győztesen az összehasonlításból, de elfogultságunk nem alap nélküli. Nem titkoljuk, hogy a Drupal-alapú website-ok elkészítése több tanulást igényel, ám a remek teljesítmény, a megbízható működés és a stabil technikai alapok bőven megérik ezt a befektetést.
Míg egy egyszerű webhelyhez vagy bloghoz teljes mértékben megfelelő lehet a WordPress, meggyőződésünk, hogy egy komolyabb, egyedi funkcionalitású webhelyhez, amelynél számítunk a kimagasló teljesítményre, amelyre hosszútávon szeretnénk építeni és amelytől hosszútávon várunk bevételt, a Drupal jobb választás.