5 voordelen van Strapi in vergelijking met Wordpress

Strapi is een headless CMS (content management systeem). Een headless CMS scheidt de front-end en de back-end van elkaar. Bij een traditioneel CMS zoals Wordpress zitten de front-end en de back-end in dezelfde applicatie. De voordelen van een headless CMS, in dit geval Strapi, bespreken we hieronder.

Presentatie

Een groot voordeel van het gebruik van Strapi ten opzichte van Wordpress is dat je de presentatielaag (de front-end) volledig buiten het CMS platform om bouwt. Bij Wordpress ben je gebonden aan Wordpress thema’s en de programmeertaal PHP. Bij Strapi zit dat anders. Omdat de content van Strapi beschikbaar wordt gemaakt met behulp van een API, kun je zelf kiezen wat voor programmeertaal en/of framework je wilt gebruiken om je presentatielaag te bouwen.

CRUD API

Strapi maakt alle content die toegevoegd wordt in het CMS beschikbaar via een CRUD API. Een CRUD API is een API die het mogelijk maakt om:

- content aan te maken (Create)
- content op te halen (Read)
- content bij te werken (Update)
- content te verwijderen (Delete)

Een groot voordeel van een CRUD API is dat je hier verschillende applicaties heel makkelijk op aan kan laten sluiten. Denk aan een website, mobiele app, een bestelzuil in een winkel, kassasysteem of zelfs facturatiesoftware. Als je content aanpast of toevoegt in Strapi dan zal deze content gelijk beschikbaar zijn in al deze verschillende systemen.

Snelle opbouw van datastructuur

Het aanpassen van de datastructuur van Wordpress is vaak een tijdrovend klusje. Er moeten in de code van het Wordpress thema velden worden toegevoegd of er moet gebruik gemaakt worden van een plugin als bijvoorbeeld “Advanced Custom Fields”. Deze data wordt vervolgens opgeslagen in een platte meta tabel in de database. Dit is prima voor simpele data als tekst, datums, getallen en dergelijk, maar als de data complexer wordt kan dit enorm vertragen in Wordpress.

In Strapi heb je hiervoor de zogenaamde “Content types”. Met behulp van de “Content-Types Builder” kan er heel gemakkelijk een efficiënte datastructuur opgebouwd of aangepast worden. Deze krijgen in de database hun eigen plekje zodat deze data altijd snel en efficiënt kan worden opgehaald. Je kunt bijvoorbeeld aangeven dat een pagina een titel en een omschrijving moet hebben en dat deze een relatie met een gebruiker moet hebben. Ook relaties worden database technisch efficiënt bijgehouden zodat de database niet meerdere keren aangeroepen hoeft te worden om de benodigde data te verkrijgen.

De verschillende velden die gebruikt kunnen worden in Strapi

Dynamische zones en componenten

Een mogelijkheid in Strapi is om gebruik te maken van “dynamic zones” en “components”. Zoals de naam eigenlijk al zegt, zorgen dynamic zones ervoor dat je pagina’s heel dynamisch kunt opbouwen. In de front-end van bijvoorbeeld een website wordt vaak gebruik gemaakt van componenten. Dit zijn gedeeltes van de website die vaker terugkomen, denk bijvoorbeeld aan een CTA blok. De CTA bevat bijvoorbeeld een titel, omschrijving en een afbeelding. Deze drie elementen kun je toevoegen in een component in Strapi. Vervolgens kun je deze in een dynamic zone plaatsen en kun je zelf weten waar en op welke pagina’s je dit component wilt laten terug komen. Alleen waar je dit component toevoegt zal deze terugkomen in de front-end van je website. Zo kun je dus, zonder tussenkomst van een developer, toch de indeling van je verschillende pagina’s bepalen.

Hieronder zie je een voorbeeld van een component zoals bij ons is opgebouwd (eerste afbeelding). De velden die in Strapi zijn toegevoegd zie je ook terug aan de voorkant (laatste afbeelding).

Component in Strapi Component in de front-end

Toekomstbestendig

Je wilt je website natuurlijk altijd voorbereiden op de toekomst. Omdat de content gescheiden staat van de presentatielaag van je website en gemakkelijk te benaderen is via de CRUD API, kun je gemakkelijk een nieuw ontwerp implementeren zonder dat het hele CMS opnieuw ingericht hoeft te worden. Het maakt niet uit wat voor applicatie er in de toekomst bijkomt, je content is altijd beschikbaar wanneer het nodig is. Het vernieuwen van je website gaat een stuk sneller dan bij een traditioneel CMS als Wordpress.

Wil jij ook aan de slag met Strapi, of wil je meer informatie? Jelmer helpt je graag verder!

22 december 2020, doorJelmer Visser