CMS kiezen: Waar kun je zoal op letten?

WordPress, Joomla en Drupal gaan al heel lang mee, maar de sleet zit er wel een beetje in. Er zijn tegenwoordig veel moderne alternatieven, gebouwd met de laatste technologieën. Wil je een eigen site opzetten en ga je daarvoor een cms kiezen, waar kun je dan zoal op letten? We zetten wat tips uiteen.

Een content management systeem (cms) helpt je om snel een website op te zetten en de structuur en inhoud daarvan te beheren. WordPress is veruit het bekendste en populairste systeem, maar heeft niet bij iedereen de beste reputatie. Zo verdient de codebase niet de schoonheidsprijs, hoewel een eindgebruiker daar niet veel last van heeft.

Ook wordt het systeem soms onderuit gehaald door slecht geschreven thema’s en plug-ins. En door zijn populariteit is het een populair doelwit onder hackers. Je moet dus zowel het platform als de plug-ins goed onderhouden. De aanpassingen in versie 5.0 vallen ook niet bij iedereen in de smaak.

De opvallendste verandering in WordPress 5.0 is de compleet andere editor die de naam Gutenberg draagt. Hiermee kun je ‘blokken’ content toevoegen waar nu vaak shortcodes, page builders of widgets voor nodig zijn. De oude editor heet nu Classic Editor en kun je gelukkig voorlopig ook nog gebruiken. Er is namelijk enorm veel kritiek op de nieuwe editor, al zijn er ook positieve geluiden.

Vooral de gebruiksvriendelijkheid wordt als zwaar onder de maat ervaren, vergeleken met de vertrouwde Word-achtige classic editor.

CMS kiezen

© PXimport

Van alle websites die met een cms worden beheerd gebruikt volgens W3Techs zo’n 60 procent WordPress! Joomla en Drupal volgen met 5,5 en 3,6 procent op bescheiden afstand. Alle andere cms’en hebben een aandeel van minder dan 0,1 procent.

Dat neemt niet weg dat de nieuwe pakketten die de afgelopen jaren het licht zagen erg interessant zijn. Qua architectuur en veiligheid zijn ze een stuk moderner en ze hoeven niet compatibel te blijven met talloze oudere versies, zoals bij WordPress het geval is.

Framework als basis

Aan de basis van cms’en ligt een programmeertaal als php, python, perl, ruby, go of javascript (node.js) of – steeds vaker – een framework voor zo’n programmeertaal. Door zo’n framework profiteren ze meteen van een groot aantal standaardcomponenten en een goede structuur. Zo hoeven ze het wiel niet opnieuw uit te vinden.

Bij php is dat framework bijvoorbeeld Symfony (onder andere Drupal, Joomla, Bolt, Grav en Pagekit gebruiken dat) of Laravel (October CMS en PyroCMS). Je kunt ook zelf een framework voor je website of toepassing gebruiken maar daar is veel programmeerervaring en tijd voor nodig. Een cms is een veel snellere start. En als er een degelijk framework achter zit kun je daar evengoed op verder bouwen.

Vrijwel alle hostingproviders bieden hosting op basis van php aan omdat het door veel software waaronder WordPress, Joomla en Drupal wordt gebruikt. Het is wel fijn als php 7.2 wordt ondersteund, of op zijn minst 7.0 of 7.1, want de snelheidswinst is aanzienlijk. Veel cms’en kunnen daarmee vanaf zo’n anderhalf tot wel drie keer meer verzoeken (transacties) per seconde verwerken in vergelijking met php 5.6. Er kunnen extra php-modules nodig zijn, zoals pdo, curl, gd, xml en zip, maar die zal een provider op verzoek wellicht toevoegen.

Voor cms’en die geen php gebruiken, maar bijvoorbeeld python (django CMS), ruby (Jekyll), go (Hugo) of node.js (Ghost), wordt het vinden van geschikte hosting uitdagender. Zo kun je voor node.js-hosting in Nederland maar bij enkele partijen terecht, waaronder bHosted (vanaf 12 euro per jaar). Soms zul je verder moeten kijken dan traditionele hostingpartijen. Zo breng je bij Digital Ocean binnen 55 seconden en vanaf 5 dollar per maand een server met Ghost in de lucht. Het makkelijkst is een dedicated server of vps onder eigen beheer, dan kun je alle kanten op.

CMS kiezen

© PXimport

Databases, thema's en templates

Traditioneel gebruiken cms’en, waaronder WordPress, Joomla en Drupal, MySQL als database of de evenknie MariaDB. Bij de alternatieven is dat soms ook sqlite of PostgreSQL. Er zijn er ook die gewoon een structuur van losse bestanden (flat-file cms genoemd) gebruiken en helemaal geen database nodig hebben. Dat heeft het voordeel dat je met een Git-repository kunt werken.

En dan zijn er ook nog cms’en zoals Jekyll en Hugo, die een geheel statische site genereren die uit losse html-bestanden bestaat. Die kennen natuurlijk wel enkele beperkingen, maar de meeste zijn goed te omzeilen. Wil je bijvoorbeeld een commentaarveld dan kun je dat met Disqus toevoegen. En voor zoekfunctionaliteit kun je Google Aangepast zoeken gebruiken.

Om de artikelen die je met het cms beheert uiteindelijk in je website vorm te geven heb je natuurlijk een ontwerp nodig. Zo’n ontwerp is meer dan alleen de visuals. Het bestaat uit een geheel van html-code, stylesheets, scripts en afbeeldingen en wordt doorgaans een thema genoemd. Bijna elk cms biedt kant-en-klare – soms gratis – thema’s voor een snelle start, maar je kunt ook je eigen thema maken of aanpassen.

Vroeger waren websites en cms’en veel simpeler en werden er eenvoudige templates gebruikt als basis. Tegenwoordig wordt de term template gebruikt voor een enkel (soms zelfs virtueel) structuurgevend bestand dat onderdeel uitmaakt van de cms-core, van een plug-in, of van een thema. Een thema kan bestaan uit honderden of zelfs duizenden losse bestanden, waaronder dus templates.

Wil je de templates aanpassen dan moet je je verdiepen in de bijbehorende templatetaal. Zo’n templatetaal bestaat meestal uit html, programmeercode en specifieke tags en variabelen. Die van WordPress is vastgelegd in de WordPress Codex. Andere bekende voorbeelden zijn Twig (Drupal, Bolt en October CMS) en Handlebars (Ghost).

Deel dit artikel
Voeg toe aan favorieten