logo

Extra Block Types (EBT) - Nieuwe Layout Builder ervaring❗

Extra Block Types (EBT) - gestileerde, aanpasbare bloktypes: Slideshows, Tabs, Cards, Accordions en vele andere. Ingebouwde instellingen voor achtergrond, DOM Box, javascript-plugins. Ervaar vandaag al de toekomst van layout building.

Demo EBT-modules Download EBT-modules

❗Extra Paragraph Types (EPT) - Nieuwe Paragraphs ervaring

Extra Paragraph Types (EPT) - analoge op paragrafen gebaseerde set modules.

Demo EPT-modules Download EPT-modules

Scroll

PHP-lessen - Deel 3 - Het maken van je eigen CMS

07/10/2025, by Ivan

Het maken van websites met een CMS beperkt zich niet alleen tot Drupal, Joomla en Wordpress. Wereldwijd is het merendeel van de websites gebouwd op maatgemaakte CMS’en. Ondanks dat er al enorm veel code in PHP is geschreven, gebruiken programmeurs nog vaak hun eigen oplossingen. Laten we proberen te begrijpen waarom het zinvol kan zijn om je eigen CMS te ontwikkelen.

Ja, er bestaat Drupal — een krachtig systeem met een groot aantal modules, hooks en functies om je eigen modules te maken. Veel ontwikkelaars weten hoe ze modules moeten schrijven, maar laten we eens kijken hoeveel mensen daadwerkelijk aan de ontwikkeling van Drupal zelf werken. Je hebt vast gelezen dat Drupal het werk is van honderden of zelfs duizenden programmeurs. Maar laten we toch eens kijken wie Drupal echt maakt.

Op de downloadpagina van Drupal is er een blok met een lijst van programmeurs die aan de kern van Drupal werken — dat wil zeggen, aan de CMS zelf.

drupal.org/node/3060/committers?sort=desc&order=Commits

En op deze pagina vind je een lijst van programmeurs met hun bijdragen aan de kern. Dus, de lijst:

Ontwikkelaar Laatste wijziging Eerste wijziging Aantal wijzigingen
Dries 3 dagen geleden 11 jaar geleden 10501 wijzigingen
webchick 5 dagen geleden 3 jaar geleden 3108 wijzigingen
Gábor Hojtsy 2 dagen geleden 4 jaar geleden 1635 wijzigingen
Steven 4 jaar geleden 11 jaar geleden 1156 wijzigingen
drumm 1 jaar geleden 5 jaar geleden 764 wijzigingen
killes@www.drop.org 4 jaar geleden 6 jaar geleden 506 wijzigingen
Kjartan 5 jaar geleden 11 jaar geleden 383 wijzigingen
catch 2 dagen geleden 21 weken geleden 329 wijzigingen
Jeroen 10 jaar geleden 11 jaar geleden 101 wijzigingen
Git Migration 1 jaar geleden 10 jaar geleden 38 wijzigingen
jhodgdon 2 dagen geleden 3 dagen geleden 3 wijzigingen
quicksketch 16 weken geleden 16 weken geleden 3 wijzigingen
pillarsdotnet 23 weken geleden 23 weken geleden 2 wijzigingen

Laten we de lijst doornemen:

Dries

Dries (10k wijzigingen) — volledige naam Dries Buytaert, oprichter van het Drupal-project. Zoals je kunt zien, bestaat het project Drupal al meer dan 11 jaar. Dries richtte het bedrijf Acquia op, dat zich bezighoudt met technische ondersteuning van Drupal-websites (niet gratis, in tegenstelling tot Drupal zelf), evenals met de ontwikkeling van Drupal en zijn modules. In een interview zei Dries dat hij zelf niet meer direct programmeert aan Drupal, maar vooral leiding geeft aan Acquia. Het grote aantal wijzigingen verklaarde hij doordat hij vaak reeds afgewerkte patches ontvangt en die enkel toevoegt aan de kern.

Webchickwebchick (3k wijzigingen) — volledige naam Angie Byron, ontwikkelaar van Drupal 7. Ze werkte (of werkt) bij het bedrijf Lullabot, hoewel haar profiel op drupal.org vermeldt dat als je haar wilt inhuren voor werk aan je site, je contact moet opnemen met Acquia. Angie ontwikkelde ook Drush, een set scripts voor het beheren van Drupal via de commandoregel. Tegenwoordig is Angie een van de belangrijkste ontwikkelaars van Drupal.

GaborGábor Hojtsy — volledige naam Gábor Hojtsy, een van de hoofdontwikkelaars van Drupal 6. Hij werkte ook aan de internationalisatie en vertaalmogelijkheden van Drupal in versie 7.

Er zijn natuurlijk ook andere kernontwikkelaars die zich met specifieke onderdelen van Drupal hebben beziggehouden. Maar dit zijn de belangrijkste ontwikkelaars. Dus, ook al wordt vaak gezegd dat Drupal het werk is van duizenden programmeurs, de kern van Drupal is in feite het werk van slechts enkele mensen. Dat betekent dat zelfs grote CMS’en door een klein aantal mensen worden ontwikkeld.

Laten we terugkeren naar de oorspronkelijke vraag: waarom je eigen CMS ontwikkelen? Herinner je je nog hoeveel tijd je hebt besteed aan het leren van Drupal? Sommige programmeurs besteden minder tijd aan het bouwen van hun eigen CMS dan aan het leren van een systeem zo groot als Drupal.

PHP is een eenvoudige taal (in vergelijking met andere talen). Iedereen kan erin programmeren zonder veel kennis (althans voor eenvoudige taken). Natuurlijk zul je na verloop van tijd meer moeten leren om een schaalbare CMS te bouwen, maar laten we voorlopig naar de voordelen van een eigen CMS kijken:

1. Je weet precies waar alles zich bevindt. Hoe vaak bekijk je de code van taxonomy.module of comment.module? Niet vaak, toch? De code is geschreven, functies zijn gedocumenteerd, sjablonen kunnen worden overschreven — wat heb je nog meer nodig? Maar wat als er een probleem of fout optreedt? Moet je dan op drupal.org schrijven en wachten tot overbelaste kernontwikkelaars antwoorden? Dat is volgens mij geen oplossing.

2. Hoge werksnelheid. Het is geen geheim dat Drupal traag kan zijn en veel databaseverzoeken doet. Een zelfgeschreven CMS zal veel sneller werken. Maar er is ook een keerzijde: Drupal heeft al modules voor optimalisatie en caching, dus dit probleem geldt vooral bij gedeelde hosting.

3. Je bent je eigen baas. Je kunt het principe “raak de kern niet aan” negeren en direct in de kern wijzigingen aanbrengen. Dat is erg handig — je hoeft niet te wachten op de release van een nieuwe versie van de kern om je aanpassingen te gebruiken.

Er zijn natuurlijk ook nadelen, maar... laten we het daar niet over hebben. Het is duidelijk dat Drupal goed is — daar hoeven we niet nog eens over uit te weiden, dat weet iedereen.

Dus, je hebt besloten je eigen CMS te schrijven — laten we beginnen.