drupal 8 main menu twig

Over Drupal

Drupal is een opensource (php) framework voor het bouwen van websites en (online) applicaties. Je kan het zien als het fundament en het constructiemateriaal, als de basis voor een degelijk bouwwerk.


Community

screenshot issue queue / patching
Adding a patch to fix open issues.

De omvangrijke Drupal community is een plaats voor constante samenwerking tussen (web)ontwikkelaars van over de hele wereld die gezamelijk een kwalitatief hoogstaand Content Management Systeem (CMS) voortdurend blijven ontwikkelen. Dit heeft erg veel voordelen. Het systeem is blijvend actueel, de code wordt door vele developers gezien en gecontroleerd. Hierdoor is de software zo veilig als mogelijk is. Fouten en mogelijke veiligheidslekken worden doorgaans snel gefixed en gesloten. Overigens wil dit niet zeggen dat er nooit fouten in zitten. Elk systeem heeft af en toe een zwakke plek. Het is daarom ook bij Drupal van belang om de software steeds te updaten. Deze updates zijn over het algemeen snel beschikbaar.


Modulair

Drupal is een modulair systeem. Dit wil zeggen dat de core functionaliteit kan worden uitgebreid d.m.v. modules. Deze modules kunnen maatwerk zijn voor een specifiek project maar de ontwikkelde modules worden ook binnen de community met elkaar gedeeld en gezamelijk ontwikkeld. Voor bijna elke functionaliteit van een website bestaat wel een module. Hoewel de configuratie per site kan verschillen bespaard de beschikbaarheid van al deze modules over het algemeen veel tijd en geld. Zodoende kunnen ook complexe websites relatief snel en voordelig gerealiseerd worden. Er zijn voor drupal 8 momenteel bijna 5000 modules.

screenshot drupal.org
Bijna 5000 Drupal 8 modules

Het kiezen van de juiste modules is van cruciaal belang. Ze zijn lang niet allemaal even goed. Omdat Drupal een open project is komen de modules overal vandaan, iedereen kan een module ontwikkelen. Er zijn welliswaar coding standards maar dit garandeerd nog niet altijd een foutloze werking. Over het algemeen is het raadzaam om te kijken naar het aantal gebruikers en je te verdiepen in de open issues.


Site beheer

Drupal is opgesplitst in een 'voorkant' en een 'achterkant'. De achterkant - het beheer gedeelte - is alleen toegankelijk voor ingelogde gebruikers met de juiste permissies. Deze permissies kunnen op een zeer gedetailleerd niveau worden toegekend. Zo kunnen verschillende rollen worden aangemaakt die ieder hun eigen mogelijkheden hebben voor het toevoegen van content en het aanbrengen van wijzigen. Denk hierbij aan bijvoorbeeld een hoofdredacteur en verschillende redacteuren of auteurs.

De 'achterkant' kan per rol volledig verschillen, afhankelijk van het doel. Zo wordt voorkomen dat men geconfronteerd word met allerlei opties die niet van toepassing zijn op de betreffende functie of rol van de gebruiker.

screenshot inline editing
Via 'Quick Edit' kan je inline snel wijzigingen aanbrengen.

De 'voorkant' is de weergave voor de 'gewone' bezoeker. De grafische weergave hiervan is meestal totaal verschillend van de achterkant. Het is zelfs mogelijk om dit ook per taal of zelfs, wanneer een site op meerdere domeinen beschikbaar is, per domein te laten verschillen.


Inline Editing

Sinds Drupal 8 is het beheren van een site op allerlei vlakken een een stuk eenvoudiger geworden. Wat ik zojuist beschreef is daarmee voor een deel onjuist. Zo is het nu bijvoorbeeld mogelijk om - mits ingelogd uiteraard - binnen de pagina direct wijzigingen aan te brengen aan de tekst of om een afbeelding te vervangen. Handig! In dit geval is het dus mogelijk om vanaf de 'voorkant' sommige beheertaken uit te voeren.


Waarom Drupal?

Een paar jaar geleden waren er duidelijke(re) verschillen tussen de verschillende 'grotere' open-source systemen. De bekendste concurrenten van Drupal waren (en zijn nog altijd) Wordpress en Joomla. Wordpress is het meest gebruikte cms ter wereld. Wordpress is altijd meer gericht geweest op de eindgebruiker dan op de ontwikkelaar. Gebruiksgemak heeft altijd veel aandacht gekregen. Ze waren daar aanvankelijk een stuk beter in dan de ontwikkelaars van Drupal en Joomla. Daaraan hebben ze ook hun gigantische populariteit te danken. Drupal en Joomla werden veel meer vanuit het perspectief van de programmeurs ontwikkeld. Ze waren bedoeld om de ontwikkeling van complexe websites en applicaties te vereenvoudigen. Wordpress daarentegen was veel meer een blog systeem. In de loop der jaren zie je dat ze allemaal goed naar elkaar hebben gekeken. Zo is Drupal een stuk gebruiksvriendelijker geworden en Wordpress verder ontwikkeld tot een all-round systeem. Joomla blijft op beide vlakken nog altijd een beetje achter. Het voordeel dat Drupal heeft ten opzichte van Wordpress is dat het vanuit een kwalitatief goede en brede basis steeds gebruiksvriendelijkere features toevoegd, terwijl Wordpress -voor een deel vanwege de backwards compatibillity- moeite heeft om de initiele structuur flexibeler te maken voor andere toepassingen dan een eenvoudig blog. Hierover zullen de meningen overigens behoorlijk uiteenlopen, dat mag. Het is een voor een deel ook een kwestie van smaak en gewenning.

wordt vervolgd...