# websitedevelopment.biz — volledige tekst > De volledige tekst van elke gids in deze taal, zodat een antwoordmachine de catalogus in één verzoek kan lezen. Niets hiervan ontbreekt op de zichtbare pagina’s. ## Wanneer je je website moet vernieuwen — en wanneer niet https://websitedevelopment.biz/nl/guides/wanneer-website-vernieuwen Bijgewerkt op 2026-08-07 · Onderhoud Vernieuwingen worden vaker gedreven door verveling dan door gegevens. Een site voelt gedateerd voor het team dat er dagelijks naar kijkt, en dat gevoel wordt een project van tienduizenden euro's dat de cijfers zelden verbetert. Deze gids behandelt de redenen die een vernieuwing werkelijk rechtvaardigen, de redenen die dat niet doen, en het alternatief dat meestal beter presteert. ### Redenen die een vernieuwing rechtvaardigen Deze zijn structureel: ze zijn niet op te lossen met een nieuw kleurenpalet of een paar nieuwe pagina's. - De site is niet bruikbaar op mobiel, en dat is waar het merendeel van je verkeer vandaan komt. - Het onderliggende platform wordt niet meer ondersteund of kan niet veilig bijgewerkt worden. - Je team kan geen inhoud wijzigen zonder een ontwikkelaar — dit verlamt alles. - Het bedrijfsmodel is werkelijk veranderd en de sitestructuur weerspiegelt niet meer wat je verkoopt. - Prestaties zijn structureel slecht op een manier die niet zonder herbouw op te lossen is. - De site voldoet niet aan toegankelijkheidseisen die voor jou wettelijk gelden. - Je hebt functionaliteit nodig die de huidige opzet fundamenteel niet aankan. ### Redenen die het niet rechtvaardigen Deze komen vaker voor dan de bovenstaande en leiden tot de duurste projecten met de minste opbrengst. | «Hij voelt gedateerd» | Jij ziet hem dagelijks; bezoekers niet | Typografie, ruimte en afbeeldingen opfrissen | | «De concurrent heeft een nieuwe» | Vergelijking, geen probleem | Kijk wat hun site oplost dat de jouwe niet doet | | «Het verkeer daalt» | Meestal SEO of inhoud, niet ontwerp | Diagnosticeer voordat je herbouwt | | «Nieuwe marketingmanager» | Verandering van eigenaar | Meet eerst wat er nu werkt | | «Conversie is laag» | Kan aan één pagina liggen | Test gericht op die pagina | | «We hebben een nieuw logo» | Merkupdate | De huisstijl toepassen, niet herbouwen | Een vernieuwing zonder gediagnosticeerd probleem levert vaak een site op die er beter uitziet en slechter presteert, omdat de dingen die wel werkten onbedoeld verdwenen. ### Het alternatief: gericht verbeteren Voor het merendeel van de gevallen die als «we hebben een vernieuwing nodig» beginnen, levert dit meer op tegen een fractie van de kosten en het risico. - Bepaal met analyse welke pagina's het meeste verkeer en de meeste conversies dragen. Dat zijn er meestal minder dan tien. - Zoek uit waar bezoekers op die pagina's vastlopen — schermopnames en formulieranalyse laten dit direct zien. - Los eerst de snelheid op. Dat is bijna altijd de goedkoopste meetbare verbetering. - Herschrijf de teksten op de belangrijkste pagina's; onduidelijkheid kost meer conversie dan ontwerp. - Werk de typografie, witruimte en beeldkwaliteit bij — dit lost het merendeel van «het voelt gedateerd» op. - Verbeter de belangrijkste conversiepaden: formulieren, contactopties, prijsinformatie. - Meet na elke wijziging. Na drie maanden weet je of een volledige vernieuwing werkelijk nodig is. Deze aanpak levert bovendien gegevens op. Ga je daarna toch vernieuwen, dan weet je wat je moet behouden — en dat is precies wat vernieuwingen meestal stukmaken. ### Als je wel vernieuwt, doe het dan veilig De grootste risico's van een vernieuwing zijn niet ontwerpmatig maar technisch en meetbaar. - Breng elke bestaande URL in kaart naar zijn nieuwe adres vóór de lancering; dit is waar verkeer verdwijnt. - Noteer je huidige cijfers — verkeer, posities, conversies — zodat je achteraf kunt vergelijken. - Behoud wat aantoonbaar werkt. Een pagina die scoort verdient voorzichtigheid, geen herschrijving. - Faseer de uitrol als het kan, zodat je effecten per deel kunt zien. - Reken op vier tot zes weken schommeling in zoekverkeer en onderzoek pas als het daarna nog daalt. - Test formulieren en, bij een shop, het afrekenen op productie op de dag van lancering. - Houd de oude site een tijdje toegankelijk voor jezelf, zodat je kunt terugkijken wat er stond. Q: Hoe vaak moet ik mijn website vernieuwen? A: Er is geen schema, en werken vanuit een schema is precies de fout. Een goed gebouwde site met actuele inhoud kan vijf jaar of langer prima presteren met doorlopende kleine verbeteringen. Vernieuw wanneer er een specifiek probleem is dat je niet kunt oplossen zonder te herbouwen — niet wanneer er drie jaar verstreken zijn. Q: Zal een vernieuwing mijn zoekverkeer schaden? A: Tijdelijk vrijwel altijd, en permanent als de omleidingen slordig zijn. Reken op vier tot zes weken schommeling zelfs bij een schone uitvoering. De blijvende schade komt van niet in kaart gebrachte URL's, verwijderde pagina's die scoorden, en herschreven teksten op pagina's die het juist goed deden. Q: Wat kost een vernieuwing? A: Meestal ergens tussen de helft en het volledige bedrag van een nieuwe bouw, want het werk is grotendeels hetzelfde plus migratie. Dat is precies de reden om eerst te diagnosticeren: als een gerichte verbetering van een fractie van dat bedrag hetzelfde probleem oplost, is de vernieuwing een dure omweg. Q: Hoe weet ik of het aan het ontwerp ligt? A: Kijk waar mensen afhaken. Verlaten ze binnen enkele seconden, dan is het snelheid of relevantie, niet ontwerp. Lezen ze en vertrekken ze dan, dan is het meestal de tekst of het aanbod. Blijven ze hangen bij een formulier, dan is dat het formulier. Ontwerp is zelden de oorzaak die de analyse aanwijst, hoewel het bijna altijd de oorzaak is die het gevoel aanwijst. ## Bereikbaarheidsbewaking: weten dat je site plat ligt vóór je klanten https://websitedevelopment.biz/nl/guides/bereikbaarheidsbewaking-website Bijgewerkt op 2026-08-07 · Onderhoud Bereikbaarheidsbewaking begint als één vraag — reageert de site — maar de storingen die geld kosten zijn zelden zo eenvoudig. De site staat online en het formulier verstuurt niets. De homepage laadt en het afrekenen faalt. Het certificaat verloopt over drie dagen en niemand kijkt. Deze gids behandelt wat je werkelijk bewaakt, hoe je meldingen instelt die aandacht krijgen, en wat je doet wanneer er een afgaat. ### Wat je bewaakt buiten «is hij online» Een ping naar de homepage vangt de duidelijke storingen. Deze controles vangen de stille. - HTTP-status en inhoud: niet alleen dat er iets terugkomt, maar dat de pagina verwacht tekst bevat. - Certificaatvervaldatum: meld dertig dagen vooraf, niet op de dag zelf. - Domeinverloop: het minst voorkomende en meest catastrofale, en volledig te voorkomen. - Formulierinzendingen: een periodieke testinzending die bevestigt dat de e-mail werkelijk aankomt. - Afrekenpad bij een shop: de duurste stille storing die er bestaat. - Reactietijd: een trend omhoog waarschuwt vaak dagen voor een echte storing. - Foutpercentage in de logboeken: een stijging in 500-fouten die bezoekers niet melden. - Achtergrondtaken: cronjobs die stilletjes stoppen en waarvan niemand het merkt. De formuliercontrole is degene die het meeste oplevert per inspanning. Stil falende contactformulieren kosten aanvragen weken voordat iemand het merkt. ### Meldingen instellen die werken Een melding die niemand leest is erger dan geen melding, omdat je denkt dat je gedekt bent. | Controlefrequentie | Elke minuut voor kritieke sites | Vijf minuten betekent tot vijf minuten stille storing | | Bevestiging vanaf tweede locatie | Aan | Voorkomt meldingen bij een netwerkstoring bij de controleur | | Meldingsdrempel | Twee opeenvolgende mislukkingen | Vermijdt ruis bij een enkele hapering | | Kanaal | E-mail plus sms of chat | E-mail alleen wordt 's nachts niet gelezen | | Ontvanger | Een genoemde persoon, niet een groepspostbus | Groepspostbussen betekenen dat niemand eigenaar is | | Herstelmelding | Aan | Anders weet je niet dat het voorbij is | | Onderhoudsvenster | Instellen vóór geplande wijzigingen | Voorkomt gewenning aan valse meldingen | Meldingsmoeheid is de meest voorkomende manier waarop bewaking faalt. Twee valse meldingen per week en niemand kijkt nog naar de derde. ### Wanneer er een melding afgaat Een korte procedure die de meeste tijd bespaart, en vooral voorkomt dat iemand in paniek iets wijzigt. - Bevestig de storing zelf vanaf een ander netwerk — mobiel data werkt goed. Een deel van de meldingen is lokaal. - Controleer de statuspagina van je host voordat je iets onderzoekt. - Kijk wat er als laatste is gewijzigd: een uitrol, een plug-inupdate, een DNS-wijziging. - Controleer certificaat en domein — die twee verklaren een verrassend deel van de plotselinge storingen. - Zet indien nodig een onderhoudspagina neer zodat bezoekers iets bruikbaars zien. - Draai terug voordat je diagnosticeert als een recente wijziging de vermoedelijke oorzaak is. - Noteer achteraf wat het was en wat het duurde. Drie van die notities laten een patroon zien. ### Hoeveel beschikbaarheid je werkelijk nodig hebt Beschikbaarheidspercentages klinken abstract tot je ze omrekent naar tijd per jaar. | 99 % | Ruim drie dagen | Te weinig voor een bedrijfssite | | 99,5 % | Bijna twee dagen | Goedkope gedeelde hosting | | 99,9 % | Bijna negen uur | Goede hosting; redelijk doel | | 99,95 % | Ruim vier uur | Beheerde hosting met ondersteuning | | 99,99 % | Ongeveer een uur | Vraagt redundantie en echte engineering | Voor de meeste bedrijfssites is 99,9 % een prima doel en is het geld beter besteed aan snel herstel dan aan het najagen van een extra negen. Q: Hoe vaak moet ik controleren? A: Elke minuut voor iets waar omzet doorheen loopt, elke vijf minuten voor een gewone bedrijfssite. Het verschil telt omdat het interval je ondergrens is voor hoelang een storing onopgemerkt blijft. Belangrijker dan het interval is dat de controle de pagina-inhoud verifieert in plaats van alleen te bevestigen dat de server iets teruggaf. Q: Is gratis bewaking voldoende? A: Voor één site met controles van vijf minuten en meldingen per e-mail meestal wel. Je betaalt voor kortere intervallen, meerdere locaties, sms-meldingen en transactiecontroles zoals een afrekenpad. Voor een webshop is dat het waard; voor een brochuresite meestal niet. Q: Waarom lijkt mijn site online terwijl bewaking storing meldt? A: Meestal DNS-caching of een regionaal probleem: jouw resolver kent het oude adres nog, of de storing raakt één netwerk. Daarom is bevestiging vanaf een tweede locatie waardevol. Controleer altijd vanaf een ander netwerk voordat je de melding als vals bestempelt — die aanname is hoe echte storingen genegeerd worden. Q: Wat is een stille storing? A: Een storing waarbij de site normaal lijkt te werken maar iets essentieels niet doet: het contactformulier verstuurt geen e-mail, het afrekenen faalt bij de laatste stap, of zoeken geeft niets terug. Bereikbaarheidsbewaking vangt die niet, want de pagina laadt prima. Daarvoor heb je functionele controles nodig die de handeling werkelijk uitvoeren. ## Back-upstrategie voor websites die werkelijk werkt https://websitedevelopment.biz/nl/guides/back-upstrategie-website Bijgewerkt op 2026-08-07 · Onderhoud Vrijwel iedereen heeft back-ups. Veel minder mensen hebben back-ups waarvan bewezen is dat ze terug te zetten zijn, en dat is het enige dat telt op de dag dat je ze nodig hebt. Deze gids behandelt wat er in een back-up hoort, waar hij moet staan, hoelang je hem bewaart, en hoe je de terugzettest uitvoert die van een aanname een feit maakt. ### Wat er in een volledige back-up hoort Een gedeeltelijke back-up voelt als een back-up tot het moment dat je hem nodig hebt. Dit is de complete lijst. - Database: alle inhoud, gebruikers, instellingen, en bij een shop bestellingen en klanten. - Geüploade bestanden: afbeeldingen, documenten, bijlagen — vaak het grootste deel in omvang. - Code en thema's: vooral maatwerkaanpassingen die nergens anders bestaan. - Serverconfiguratie: virtuele hosts, omleidingsregels, cronjobs. - Certificaten en omgevingsvariabelen: de dingen die je vergeet tot het terugzetten vastloopt. - Een genoteerd terugzetproces: in welke volgorde, welke inloggegevens, welke DNS-instellingen. - Voor maatwerk vervangt versiebeheer de codeback-up, maar niet de database of de uploads. Uploads zijn wat het vaakst uit geautomatiseerde back-ups valt omdat ze buiten het CMS-pad staan. Controleer specifiek dat ze meekomen. ### Frequentie en bewaartermijn De juiste frequentie volgt uit één vraag: hoeveel werk kun je je veroorloven opnieuw te doen? | Statische brochuresite | Bij wijziging, plus maandelijks | Enkele maanden | | Bedrijfssite met blog | Dagelijks | Dertig dagen, plus maandelijkse punten | | Webshop | Elk uur of continu | Dertig dagen minimaal; orders langer | | Applicatie met gebruikersgegevens | Continu met transactielogboek | Volgens bewaarbeleid | | Vóór elke update | Handmatig, altijd | Tot de update bewezen goed draait | Meerdere generaties bewaren telt zwaarder dan hoge frequentie. Een inbraak die pas na twee weken wordt ontdekt maakt elke back-up van de laatste twee weken waardeloos. ### Waar back-ups horen te staan De opslagplaats bepaalt tegen welke soorten storingen je beschermd bent. Dit is waar de meeste opzetten tekortschieten. | Zelfde server | Per ongeluk verwijderen van inhoud | Serveruitval, gijzelsoftware, accountverlies | | Zelfde hostingaccount | Serveruitval | Accountopschorting, gecompromitteerde toegang | | Aparte cloudopslag | Vrijwel alles | Verlies van die opslagreferenties | | Lokale kopie | Verlies van de aanbieder | Vraagt discipline om actueel te blijven | | Drie kopieën, twee media, één extern | Praktisch alles | Niets van betekenis | Ten minste één back-up hoort volledig buiten de infrastructuur en het account van je host te staan. Gijzelsoftware en accountopschortingen nemen alles mee dat binnen bereik ligt. ### De terugzettest Dit is het onderdeel dat back-ups van een aanname in een feit verandert, en het onderdeel dat vrijwel iedereen overslaat. - Zet elk kwartaal een back-up terug naar een testomgeving, niet naar productie. - Klok hoelang het duurde. Dat cijfer is je werkelijke hersteltijd, en het is meestal langer dan verwacht. - Controleer dat de inhoud compleet is — inclusief afbeeldingen, niet alleen tekst. - Controleer dat formulieren, aanmelden en, bij een shop, het afrekenen werken. - Noteer wat er miste of misging, en herstel het back-upproces. - Leg het terugzetproces vast zodat iemand anders het kan uitvoeren wanneer jij niet bereikbaar bent. - Herhaal na elke grote wijziging aan de site of de hosting. De meest voorkomende ontdekking bij een eerste terugzettest is dat een deel van de bestanden ontbreekt of dat niemand de databasereferenties heeft. Dat is precies waarom je test op een rustige dag. Q: Zijn de back-ups van mijn host voldoende? A: Als enige back-up niet. Ze zijn nuttig en meestal snel, maar ze liggen binnen hetzelfde account dat je kunt verliezen bij een geschil, een opschorting of gecompromitteerde toegang. Houd de back-ups van je host én een onafhankelijke kopie elders. De tweede kopie is er precies voor het scenario waarin de eerste onbereikbaar is. Q: Hoe vaak moet ik back-uppen? A: Vaak genoeg dat het verlies tussen twee back-ups acceptabel is. Een blog die wekelijks publiceert kan dagelijks. Een webshop kan dat niet — een dag bestellingen kwijtraken is een operationeel probleem, geen ongemak, dus daar hoort continu of elk uur. Bepaal het door te vragen hoeveel werk je bereid bent opnieuw te doen. Q: Hoelang moet ik back-ups bewaren? A: Dertig dagen aan recente punten dekt het merendeel van de incidenten, plus maandelijkse punten voor de langere termijn. De reden voor de langere termijn is dat problemen vaak laat ontdekt worden — een beschadigde inhoudsimport of een inbraak van drie weken geleden. Bestel- en factuurgegevens vallen bovendien onder wettelijke bewaartermijnen. Q: Wat als ik geen back-up heb en de site is weg? A: Vraag eerst je host — veel hebben momentopnamen die je niet zelf beheert, soms enkele dagen terug. Daarna: de Wayback Machine en de cache van zoekmachines kunnen zichtbare inhoud teruggeven, maar geen database, geen bestanden en geen bestellingen. Het is redding, geen herstel, en het is de reden dat de terugzettest bestaat. ## Websitebeveiliging: de praktijkgids https://websitedevelopment.biz/nl/guides/website-beveiliging-praktijkgids Bijgewerkt op 2026-08-07 · Onderhoud De meeste websites worden niet doelgericht aangevallen. Ze worden gevonden door geautomatiseerde scanners die het hele internet aftasten op bekende kwetsbaarheden en zwakke wachtwoorden. Dat is goed nieuws, want het betekent dat basismaatregelen het merendeel van de aanvallen tegenhouden. Deze gids behandelt die maatregelen, ruwweg op volgorde van hoeveel risico ze wegnemen per bestede inspanning. ### Toegang: waar de meeste inbraken beginnen Gestolen of geraden inloggegevens zijn de meest voorkomende manier waarop kleine sites vallen — vaker dan enige technische kwetsbaarheid. - Tweefactorauthenticatie op elk beheerdersaccount, zonder uitzondering. - Unieke wachtwoorden uit een wachtwoordbeheerder; hergebruikte wachtwoorden lekken elders en worden hier getest. - Verwijder accounts van vertrokken medewerkers en oude bureaus — dit wordt vrijwel altijd vergeten. - Geef de minimale rechten die iemand nodig heeft; een redacteur hoeft geen beheerder te zijn. - Beperk aanmeldpogingen en blokkeer bij herhaalde mislukkingen. - Bescherm ook de omliggende toegang: hosting, DNS, domeinregistrar en e-mail. Verlies van DNS is erger dan verlies van de site. - Gebruik SFTP of SSH-sleutels, nooit gewone FTP met een wachtwoord. De domeinregistrar is het account dat het vaakst zonder tweefactor blijft en de meeste schade aanricht als hij valt. ### Updates en het aanvalsoppervlak Elk stuk software dat je installeert is een stuk dat bijgewerkt moet blijven. Het goedkoopste beveiligingswerk is verwijderen wat je niet gebruikt. | CMS-kern actueel | Bekende lekken worden binnen dagen na publicatie gescand | | Plug-ins actueel | De meest voorkomende toegangsweg op WordPress-sites | | Ongebruikte plug-ins verwijderen | Gedeactiveerd is niet veilig; de code staat er nog | | Ongebruikte thema's verwijderen | Zelfde reden, wordt nog vaker vergeten | | Ondersteunde PHP-versie | Verouderde versies krijgen geen beveiligingspatches meer | | Serverpakketten actueel | Hoort bij de host bij beheerde hosting — controleer dat | | Afhankelijkheden in maatwerk | Bibliotheken verouderen ook; controleer ze in de build | Voer updates uit op een testomgeving en test daarna de formulieren en, bij een shop, het afrekenpad. Een update die stilletjes een formulier breekt is een eigen soort storing. ### Applicatie- en serverbescherming De maatregelen die technische kwetsbaarheden afdekken in plaats van toegang. - Valideer en ontsmet alle invoer aan de serverzijde. Controle in de browser is gebruiksgemak, geen beveiliging. - Gebruik voorbereide query's voor elke databasetoegang — dit sluit SQL-injectie af. - Ontsnap uitvoer bij weergave om cross-site scripting te voorkomen. - HTTPS overal, met HSTS, en een automatisch verlengend certificaat. - Zet beveiligingskopteksten: Content-Security-Policy, X-Content-Type-Options, Referrer-Policy. - Beperk bestandsuploads op type en grootte, en sla ze op buiten de webmap. - Schakel het weergeven van fouten uit op productie; foutmeldingen vertellen aanvallers wat er draait. - Overweeg een webapplicatiefirewall bij een CMS met veel uitbreidingen. ### Back-ups en herstel na een inbraak Beveiliging faalt soms. Wat er dan gebeurt hangt volledig af van wat je vooraf hebt voorbereid. - Bewaar back-ups buiten de server. Een back-up op dezelfde machine wordt mee versleuteld of verwijderd. - Bewaar meerdere generaties. Wordt een inbraak pas na twee weken ontdekt, dan is de back-up van gisteren ook besmet. - Test het terugzetten elk kwartaal. Dit is de stap die het vaakst ontbreekt. - Bij een inbraak: haal de site offline of zet hem in onderhoudsmodus voordat je iets anders doet. - Wijzig elk wachtwoord — CMS, hosting, database, FTP, DNS — voordat je terugzet. - Zet terug vanuit een back-up van vóór de inbraak, en werk daarna alles bij vóór je weer online gaat. - Zoek uit hoe ze binnenkwamen. Terugzetten zonder de oorzaak te vinden betekent dat het opnieuw gebeurt. Bij een datalek met persoonsgegevens gelden meldplichten met korte termijnen. Weet vooraf wie dat beoordeelt, niet tijdens de storing. Q: Is WordPress onveilig? A: De kern is redelijk goed onderhouden; het risico zit vrijwel altijd in plug-ins, thema's en zwakke beheerderswachtwoorden. Een WordPress-site met tweefactor, weinig plug-ins en actuele updates is prima. Een site met veertig plug-ins waarvan de helft twee jaar niet is bijgewerkt is een kwestie van tijd. Q: Heb ik een beveiligingsplug-in nodig? A: Ze zijn nuttig voor aanmeldbeperking, bestandsbewaking en meldingen, maar ze vervangen niets uit de lijst hierboven. Een beveiligingsplug-in op een site met verouderde plug-ins en een gedeeld beheerderswachtwoord lost het werkelijke probleem niet op. Zie het als een rookmelder, niet als brandwerende bouw. Q: Wat doe ik als mijn site gehackt is? A: Haal hem offline, wijzig elk wachtwoord inclusief hosting en DNS, en zet dan terug vanuit een schone back-up van vóór de inbraak. Werk alles bij voordat je weer online gaat, en zoek uit hoe ze binnenkwamen — anders herhaalt het zich binnen weken. Zijn er persoonsgegevens geraakt, dan gelden meldingsverplichtingen met korte termijnen. Q: Beschermt HTTPS mijn site tegen hackers? A: Nee, en dat misverstand komt vaak voor. HTTPS versleutelt het verkeer tussen bezoeker en server, wat afluisteren en manipulatie onderweg voorkomt. Het doet niets tegen zwakke wachtwoorden, verouderde plug-ins of SQL-injectie. Het is noodzakelijk en volstrekt onvoldoende. ## Website-onderhoud: wat het inhoudt en wat het kost https://websitedevelopment.biz/nl/guides/website-onderhoud-gids Bijgewerkt op 2026-08-07 · Onderhoud Een website is geen afgerond product maar een draaiend systeem. Software veroudert, koppelingen breken, certificaten verlopen en inhoud raakt achterhaald. Website-onderhoud is het werk dat voorkomt dat die dingen tegelijk misgaan. Deze gids behandelt wat er werkelijk gedaan moet worden, in welk ritme, wat het redelijkerwijs kost, en hoe je een onderhoudsvoorstel beoordeelt. ### Wat onderhoud werkelijk omvat «Onderhoud» is een vaag woord in offertes. Dit zijn de onderdelen die er werkelijk achter horen te zitten. - Software-updates: CMS-kern, plug-ins, thema's, serverpakketten — en testen na afloop. - Back-ups: geautomatiseerd, buiten de server bewaard, en periodiek daadwerkelijk teruggezet als test. - Beveiligingsbewaking: kwetsbaarheidsmeldingen, bestandsintegriteit, verdachte aanmeldingen. - Bereikbaarheidsbewaking: melding wanneer de site plat ligt, niet wanneer een klant belt. - Certificaten en domeinen: verlengingen die stilletjes verlopen en de site offline halen. - Prestatiecontroles: paginagewicht groeit vanzelf naarmate er inhoud bij komt. - Kapotte links en fouten: interne links en 404's die zich na verloop van tijd opstapelen. - Inhoudelijke updates: prijzen, teamleden, diensten, jaartallen in de voettekst. - Analyse en rapportage: iemand die daadwerkelijk kijkt wat de site doet. Vraag bij elk onderhoudsvoorstel welke van deze punten erin zitten. «Onderhoud» zonder specificatie betekent in de praktijk vaak alleen updates draaien. ### Een realistisch ritme Niet alles hoeft maandelijks. Dit is een werkbare verdeling voor een typische bedrijfssite. | Continu | Bereikbaarheidsbewaking, geautomatiseerde back-ups, beveiligingsmeldingen | | Wekelijks | Beveiligingsupdates toepassen, formulierinzendingen controleren | | Maandelijks | Volledige updateronde met test, kapotte links, foutlogboek | | Elk kwartaal | Back-up terugzetten testen, prestaties meten, toegankelijkheidscontrole | | Halfjaarlijks | Inhoudsronde: verouderde pagina's, prijzen, teamgegevens | | Jaarlijks | Afhankelijkheden en PHP-versie herzien, ongebruikte plug-ins opruimen | | Bij elke wijziging | Formulieren en, bij een shop, het afrekenpad testen | De kwartaal-terugzettest is degene die iedereen overslaat en degene die telt. Een back-up die je nooit hebt teruggezet is een aanname, geen back-up. ### Wat het kost Onderhoudsprijzen variëren sterk omdat ze zeer verschillende werkzaamheden dekken. Ruwe orden van grootte per maand, en wat je ervoor mag verwachten. | Alleen hosting | Laag | De server draait; verder niets | | Basisonderhoud | Tientallen euro's | Updates, back-ups, bereikbaarheidsbewaking | | Beheerd | Honderd tot enkele honderden | Bovenstaande plus tests, beveiliging, kleine wijzigingen | | Beheerd plus uren | Enkele honderden en meer | Bovenstaande plus een vast urenbudget voor werk | | Webshop | Substantieel hoger | Afrekenpad testen, betalingen, voorraadkoppelingen | Een bruikbare vuistregel is een tot twee procent van de bouwkosten per maand voor een gewone site. Ligt een aanbod ver daaronder, vraag dan precies wat erin zit. ### Wat er misgaat zonder onderhoud De faalwijzen zijn voorspelbaar en vrijwel altijd duurder om achteraf op te lossen dan om te voorkomen. - Een verouderde plug-in met een bekend lek wordt geautomatiseerd misbruikt — dit is de meest voorkomende manier waarop kleine sites gehackt worden. - Het certificaat verloopt en elke bezoeker krijgt een waarschuwing voordat iemand het merkt. - Een PHP-versie wordt door de host uitgefaseerd en de site breekt op een ochtend zonder dat er iets is gewijzigd. - Formulieren stoppen stilletjes met versturen; je merkt het wanneer iemand vraagt waarom je niet reageerde. - Back-ups draaiden wel maar bleken niet terug te zetten toen het nodig was. - Paginagewicht is verdrievoudigd door drie jaar ongeoptimaliseerde uploads. - Bij herstel na een inbraak zijn de kosten meestal een veelvoud van een jaar onderhoud. Q: Heb ik echt een onderhoudscontract nodig? A: Je hebt het werk nodig; of het via een contract loopt is een aparte vraag. Kun je zelf betrouwbaar maandelijkse updates draaien, back-ups testen en meldingen opvolgen, doe het dan zelf. Kun je dat niet — en de meeste bedrijven niet — dan is een contract de goedkoopste manier om het gedaan te krijgen. Een statische site zonder CMS heeft opvallend weinig nodig. Q: Wat gebeurt er als ik updates uitstel? A: Bij één gemiste maand meestal niets. Bij zes gemiste maanden worden updates riskant omdat er te veel tegelijk verandert, en bij bekende lekken word je geautomatiseerd gescand en misbruikt — aanvallers zoeken versienummers, niet bedrijven. De ironie is dat uitstel updates gevaarlijker maakt, niet veiliger. Q: Kan mijn eigen team het onderhoud doen? A: Deels, en dat is vaak de goedkoopste opzet. Inhoud, prijzen en teampagina's horen bij jou. Updates, back-uptests, beveiliging en het testen na updates horen bij iemand met technische verantwoordelijkheid. Splits het contract langs die lijn in plaats van alles uit te besteden of niets. Q: Hoeveel onderhoud heeft een statische site nodig? A: Veel minder. Zonder CMS, database of plug-ins is er geen software die veroudert. Wat blijft is domein- en certificaatverlenging, bereikbaarheidsbewaking en inhoudelijke actualiteit. Dat is een van de sterkste argumenten voor statische sites bij projecten die geen dagelijkse redactie nodig hebben. ## Webontwikkelaar worden: een realistisch pad https://websitedevelopment.biz/nl/guides/webontwikkelaar-worden Bijgewerkt op 2026-08-07 · Ontwikkelaars inhuren Webontwikkeling is een van de weinige technische beroepen waar aantoonbaar werk zwaarder weegt dan een diploma. Dat maakt het toegankelijk en tegelijk verwarrend, want er is geen voorgeschreven route en er is buitengewoon veel materiaal. Deze gids geeft een volgorde die werkt, een realistisch tijdsbeeld, en wat werkgevers en klanten werkelijk beoordelen. ### Wat je leert, en in welke volgorde De volgorde telt. Elke stap bouwt op de vorige, en overslaan levert gaten op die zich later als hardnekkige verwarring uiten. - HTML en CSS grondig. Niet oppervlakkig: semantiek, opmaak met flexbox en grid, responsief ontwerp, toegankelijke formulieren. - JavaScript-basis. De taal zelf voordat je een framework aanraakt — functies, arrays, objecten, asynchroon werken, de DOM. - Versiebeheer met Git. Vroeg leren, want elk team gebruikt het en elke werkgever verwacht het. - Hoe het web werkt. HTTP, DNS, hosting, wat er gebeurt tussen een adres intypen en een pagina zien. - Eén framework, grondig. Kies er één en leer het diep; drie oppervlakkig kennen is minder waard dan één beheersen. - Serverzijde: één taal en een database. PHP, Python of Node — plus SQL, dat overal terugkomt. - Uitrollen. Iets werkend op internet krijgen, met een domein en een certificaat. - Grondbeginselen van beveiliging en prestaties. Wat scheidt werkende code van code die je durft te lanceren. De meest voorkomende fout is direct met een framework beginnen. Zonder JavaScript-basis leer je patronen zonder ze te begrijpen, en dat blokkeert je precies wanneer iets afwijkt van de tutorial. ### Hoelang het duurt Realistische tijdsbeelden bij ongeveer twintig uur per week. Vollediger inzet verkort dit, maar niet evenredig. | Eerste statische pagina | Enkele weken | HTML en CSS, responsief | | Eerste interactieve site | Twee tot drie maanden | JavaScript, formulieren, API's aanroepen | | Eerste volledige project | Vier tot zes maanden | Front-end, back-end, database, uitgerold | | Klaar voor junior werk | Zes tot twaalf maanden | Portfolio, Git, een framework | | Zelfstandig werken | Twee tot drie jaar | Ontwerp naar oplossing, zonder begeleiding | | Senior | Vijf jaar en meer | Architectuur, afwegingen, anderen begeleiden | Deze cijfers gaan uit van bouwen, niet van kijken. Twintig uur video per week levert een fractie op van twintig uur eigen projecten met echte problemen. ### Wat een portfolio moet bevatten Drie afgeronde projecten verslaan twintig tutorialkopieën. Wat beoordeeld wordt is niet de omvang maar de afwerking. - Drie projecten die live staan op een echt adres, niet alleen in een repository. - Ten minste één met een database, aanmelden en gegevens die je opslaat en terugleest. - Ten minste één dat iets echts oplost — voor jezelf, een vereniging, een klein bedrijf. - Schone code in een openbare repository met een leesbare geschiedenis van commits. - Een README per project dat uitlegt wat het doet, hoe je het draait en welke keuzes je maakte. - Geen tutorialkopieën. Beoordelaars herkennen ze onmiddellijk en ze zeggen niets over jou. - Ze moeten snel laden en op een telefoon werken — je toont daarmee wat je beroepsmatig zou leveren. De README waarin je je keuzes uitlegt is het onderdeel dat het meest opvalt en dat het minst vaak aanwezig is. Het laat zien dat je nadenkt over afwegingen, niet alleen over werkende code. ### Het eerste betaalde werk Dit is de moeilijkste stap, en de meeste routes ernaartoe beginnen bij mensen die je al kent. | Site voor een kennis of vereniging | Hoog | Klein en echt; het beste eerste project | | Stage of leerwerkplek | Gemiddeld | Begeleiding is de grootste versneller die er is | | Junior functie | Gemiddeld | Vraagt portfolio plus Git plus een framework | | Freelanceplatforms | Laag aan het begin | Zwaar prijsgedreven zonder beoordelingen | | Bijdragen aan open source | Gemiddeld | Zichtbaar bewijs van samenwerken | | Lokale ondernemers | Hoog | Veel kleine bedrijven hebben geen bruikbare site | | Netwerken en gemeenschappen | Hoog over tijd | De meeste eerste opdrachten komen via mensen | Neem het eerste betaalde project klein en af te ronden. Een afgeronde eenvoudige site is meer waard dan een ambitieus project dat je nooit oplevert. Q: Heb ik een diploma nodig? A: Nee. Webontwikkeling is een van de weinige technische beroepen waarin aantoonbaar werk zwaarder weegt dan een opleiding. Een informatica-achtergrond helpt bij fundamenten en bij sommige werkgevers, maar een sterk portfolio met live projecten opent in de praktijk meer deuren dan een diploma zonder werk. Q: Front-end of back-end beginnen? A: Front-end, vrijwel altijd. Je ziet direct resultaat, wat het leren merkbaar volhoudbaarder maakt, en HTML en CSS zijn het fundament waar alles op rust. Voeg de serverzijde toe zodra je comfortabel bent met JavaScript. Wie beide beheerst is als zelfstandige en in kleine teams aanzienlijk waardevoller. Q: Welk framework moet ik leren? A: Kijk naar de vacatures in jouw regio en kies wat daar het meest gevraagd wordt. Belangrijker dan de keuze is dat je er één diep leert: frameworks delen concepten, dus het tweede leer je in een fractie van de tijd. Drie frameworks oppervlakkig kennen is minder waard dan één beheersen. Q: Is het nog de moeite waard met AI-hulpmiddelen? A: Ja, maar het beroep verschuift. AI genereert snel code en versnelt routinewerk aanzienlijk; wat het niet doet is bepalen wat gebouwd moet worden, beoordelen of het klopt, of een systeem ontwerpen dat over drie jaar nog te onderhouden is. Die vaardigheden worden waardevoller, niet minder. Wat verdwijnt is werk dat alleen uit code overtypen bestond. ## E-commerce SEO: de praktijkgids https://websitedevelopment.biz/nl/guides/ecommerce-seo-praktijkgids Bijgewerkt op 2026-08-07 · E-commerce E-commerce SEO verschilt van gewone SEO op drie punten: je hebt duizenden pagina's die op elkaar lijken, je catalogus verandert voortdurend, en de commerciële pagina's zijn precies degene waar concurrentie het hevigst is. Deze gids behandelt wat werkt op elk van die drie fronten, en wat je stilletjes schaadt terwijl je denkt dat het helpt. ### Categoriepagina's zijn je belangrijkste landingspagina's De meest voorkomende fout in webshop-SEO is alle aandacht aan productpagina's geven. Categoriepagina's sluiten aan op de bredere zoekvraag en scoren daardoor voor de termen met volume. - Geef elke categorie een echte beschrijvende tekst — niet honderd woorden opvulling onder de productraster, maar iets dat aankoopvragen beantwoordt. - Titel de categorie zoals mensen zoeken, niet zoals je interne taxonomie heet. - Link naar de subcategorieën en terug, zodat de hiërarchie zowel voor bezoekers als crawlers leesbaar is. - Voeg koopadvies toe: maatinformatie, materiaalverschillen, waar op te letten. Dit is waarom een categoriepagina een productlijst verslaat. - Houd de belangrijkste producten boven de vouw; een pagina die begint met vijfhonderd woorden tekst verliest kopers. - Gebruik één canonieke URL per categorie en houd sorteervolgordes buiten de index. Een categoriepagina met een echte gids erop is voor een webshop meestal de hoogst renderende pagina die er te schrijven valt. ### Productpagina's en dubbele inhoud Fabrikantbeschrijvingen staan woordelijk op honderd andere shops. Dat is niet strafbaar, maar het geeft je ook geen enkele reden om boven die andere shops te staan. | Identieke fabrikanttekst | Herschrijf de belangrijkste producten; laat de staart zoals hij is | | Varianten als aparte pagina's | Eén canonieke productpagina, varianten als opties | | Dunne productpagina's | Voeg toe wat kopers vragen: maten, gebruik, vergelijkingen | | Geen recensies | Recensies verzamelen — unieke inhoud die je niet zelf schrijft | | Product in meerdere categorieën | Eén canonieke URL, gelinkt vanuit alle categorieën | | Producten zonder afbeeldingen op maat | Echte foto's; ze verhogen conversie én verblijfstijd | Herschrijf niet alles. Bepaal de twintig procent van de producten die het merendeel van de omzet of het zoekvolume vertegenwoordigt en investeer daar. ### Facetten, paginering en uitverkochte producten Dit zijn de drie technische kwesties die specifiek zijn voor webshops en die het vaakst misgaan. - Filtercombinaties: standaard noindex, follow. Indexeer alleen het handjevol dat aansluit op echte zoekvraag, zoals «zwarte leren laarzen». - Sorteervolgordes: nooit een aparte indexeerbare URL — dezelfde producten, andere volgorde. - Paginering: echte crawlbare links, elke pagina zelfverwijzend canoniek. - Tijdelijk uitverkocht: houd de pagina online met een duidelijke melding en alternatieven. Verwijder hem niet. - Permanent uit het assortiment: 301 naar het opvolgproduct, of naar de categorie als er geen opvolger is. - Seizoensproducten: houd de URL het hele jaar; opgebouwde signalen zijn moeilijk terug te winnen. - Nooit een productpagina op 404 zetten zolang hij nog links of verkeer heeft. ### Gestructureerde data en de valkuilen Productmarkup is een van de weinige plekken waar SEO-werk een handmatige maatregel kan opleveren, dus het is de moeite waard om precies te zijn. | Product | Prijs en beschikbaarheid moeten de pagina weerspiegelen | Afwijking leidt tot een handmatige maatregel | | AggregateRating | Alleen bij echte, zichtbare recensies | Verzonnen beoordelingen zijn een duidelijke schending | | Offer | Valuta en btw-behandeling correct | Verkeerde prijzen in de zoekresultaten kosten vertrouwen | | Breadcrumb | Moet het zichtbare pad volgen | Genegeerd als het afwijkt | | Availability | Bijwerken wanneer de voorraad wijzigt | «Op voorraad» bij uitverkocht frustreert kopers | | FAQ | Alleen zichtbare vragen op de pagina | Verborgen inhoud is een richtlijnschending | Genereer productmarkup uit dezelfde gegevens die de pagina rendert. Handmatig onderhouden markup loopt binnen weken uit de pas met de werkelijke prijzen. Q: Moet ik elke productbeschrijving herschrijven? A: Niet alle. Bepaal welke producten het merendeel van je omzet of zoekvolume vertegenwoordigen — meestal een klein deel van de catalogus — en schrijf die goed. De lange staart kan fabrikanttekst houden; die concurreert toch nauwelijks. Deze prioritering levert veel meer op dan tienduizend producten oppervlakkig aanpassen. Q: Wat doe ik met uitverkochte producten? A: Is het tijdelijk, houd de pagina dan online met een duidelijke melding, een verwachte datum als je die hebt, en alternatieven. Is het permanent, 301 dan naar het dichtstbijzijnde opvolgproduct. Zet zo'n pagina nooit op 404 zolang hij links of verkeer heeft — je gooit opgebouwde signalen weg die maanden kostten. Q: Moeten filterpagina's geïndexeerd worden? A: Standaard nee. Een handvol combinaties die aansluiten op werkelijke zoekvraag mag je bewust indexeerbaar maken en behandelen als landingspagina's met eigen tekst. De rest — en dat zijn er duizenden — hoort op noindex, follow. Openstaande facetnavigatie is de belangrijkste bron van indexvervuiling in webshops. Q: Helpen productrecensies de SEO? A: Ja, op twee manieren: ze voegen unieke inhoud toe die je niet zelf hoeft te schrijven, en ze verhogen conversie merkbaar. Wat je niet moet doen is beoordelingsmarkup toevoegen zonder echte recensies op de pagina — dat is een duidelijke richtlijnschending en een van de manieren waarop shops een handmatige maatregel oplopen. ## Vragen om aan een webontwikkelaar te stellen vóór je tekent https://websitedevelopment.biz/nl/guides/vragen-aan-een-webontwikkelaar Bijgewerkt op 2026-08-07 · Ontwikkelaars inhuren Je beoordeelt iemand die werk gaat leveren dat je niet zelf kunt controleren. De oplossing is niet technischer worden maar vragen stellen waarvan de antwoorden ook zonder technische kennis te beoordelen zijn. Deze gids geeft die vragen, gegroepeerd per fase, met per vraag wat een sterk antwoord bevat. ### Over proces en samenwerking Deze vragen voorspellen meer over hoe het project verloopt dan enige technische vraag. - Hoe verloopt een typisch project bij jullie? Een sterk antwoord noemt fasen, beslismomenten en wat er van jou verwacht wordt. - Wie werkt er werkelijk aan, en hoeveel projecten draait die persoon tegelijk? Dit voorspelt de doorlooptijd beter dan de planning. - Hoe vaak spreken we elkaar, en hoe? Vage antwoorden hier worden later stilte. - Wat heb je van mij nodig, en wanneer? Iemand die dit scherp beantwoordt heeft eerder projecten zien vertragen op inhoud. - Wat gebeurt er als we halverwege iets willen wijzigen? Er hoort een procedure te zijn, geen «dat regelen we wel». - Vertel me over een project dat moeilijk ging. Het antwoord «die hebben we niet gehad» is zelf een antwoord. ### Over techniek en keuzes Je hoeft de techniek niet te begrijpen; je moet kunnen beoordelen of iemand zijn keuzes kan uitleggen. | Wat bouw je dit op, en waarom? | Een reden die met jouw situatie te maken heeft | | Wat kan ik zelf wijzigen na de lancering? | Een concrete lijst, niet «alles» | | Hoe zorg je dat het snel is? | Concrete maatregelen en meetwaarden | | Hoe ga je om met mobiel? | Ontwerpen vanaf mobiel, niet «het is responsief» | | Wat doe je aan toegankelijkheid? | Een standaard en hoe ze die controleren | | Wat doe je aan beveiliging? | Updates, back-ups, toegang, HTTPS | | Gebruik je bestaande thema's of bouw je zelf? | Een eerlijk antwoord met de afweging erbij | Let op of antwoorden aan jouw situatie gekoppeld worden of algemeen blijven. «Wij gebruiken altijd X» is minder informatief dan «voor wat jij nodig hebt past X, omdat». ### Over inhoud, SEO en de lancering Het gebied waar projecten het vaakst vertragen en waar aannames het vaakst uiteenlopen. - Wie schrijft de teksten? Dit is de belangrijkste vraag in het hele gesprek en wordt het vaakst overgeslagen. - Wie levert de foto's, en zijn stockfoto's inbegrepen? - Wie voert de inhoud in het systeem in? Bij tweehonderd pagina's is dat serieus werk. - Wat doe je met de bestaande URL's? Het antwoord moet omleidingen bevatten. Bevat het dat niet, is dat een probleem. - Wat is inbegrepen op SEO-gebied? Technisch werk hoort erbij; contentstrategie is apart. - Hoe test je vóór de lancering? Er hoort een testomgeving en een lijst te zijn. - Wat gebeurt er op de lanceringsdag, en wie is bereikbaar? - Krijg ik training of documentatie? ### Over de periode na oplevering De vragen die bepalen of je over twee jaar tevreden bent, en die tijdens de verkoop het minst worden gesteld. | Wat kost onderhoud per maand? | Voorkomt een verrassing kort na de lancering | | Wat zit er in onderhoud? | «Onderhoud» zonder opsomming betekent weinig | | Hoe snel reageer je bij storing? | Zet de verwachting nu, niet tijdens de storing | | Wat als ik met iemand anders verder wil? | Toets voor de overdracht | | Van wie is de code en de hosting? | Vraag dit vóór ondertekening | | Wat gebeurt er als jullie stoppen? | Belangrijker bij een freelancer of klein bureau | | Wie heeft toegang tot mijn accounts? | Moet aan het eind terug naar jou | Q: Welke vraag is het belangrijkst? A: «Wie schrijft de teksten?» Inhoud vertraagt meer websiteprojecten dan enige technische factor, en beide partijen nemen te vaak aan dat de ander het doet. Is het antwoord «jullie», vraag dan wanneer het aangeleverd moet zijn en wat er gebeurt als dat later wordt — en zorg dat dat in het contract staat. Q: Moet ik technische vragen stellen als ik het antwoord niet kan beoordelen? A: Ja, maar beoordeel de uitleg in plaats van de inhoud. Iemand die zijn keuze in gewone taal kan uitleggen en de nadelen ervan benoemt, begrijpt wat hij doet. Iemand die achter jargon schuilt of nooit een nadeel noemt, is het risico. Dat onderscheid kun je zonder technische kennis maken. Q: Is het redelijk om referenties te vragen? A: Volstrekt, en bel er werkelijk één. Vraag niet of ze tevreden waren maar wat er misging en hoe het werd opgelost, en hoe de samenwerking na de lancering verliep. Dat laatste is de meest voorspellende vraag en de minst gestelde — vóór de lancering is iedereen bereikbaar. Q: Wat als een leverancier deze vragen vervelend vindt? A: Dat is zelf het antwoord. Dit zijn normale vragen van een klant die een substantieel bedrag uitgeeft, en professionals verwachten ze. Irritatie bij redelijke vragen vóór de handtekening voorspelt hoe het gaat wanneer je een probleem meldt na de lancering. ## Betaaldiensten integreren: wat er werkelijk bij komt kijken https://websitedevelopment.biz/nl/guides/betaaldienst-integreren Bijgewerkt op 2026-08-07 · E-commerce Een betaaldienst integreren is technisch niet moeilijk — de moderne diensten hebben goede documentatie en werkende voorbeelden. Wat het lastig maakt is alles rond het gelukkige pad: mislukte betalingen, terugbetalingen, terugboekingen, dubbele bestellingen en de vraag wat er gebeurt als de klant het tabblad sluit tijdens het betalen. Deze gids behandelt de integratie zelf en, uitvoeriger, de randgevallen waar echt geld verloren gaat. ### Kies de methoden die je markt gebruikt Betaalvoorkeuren zijn sterk regionaal. De verkeerde methoden aanbieden verliest verkoop bij het afrekenen, en dat is de duurste plek om iemand te verliezen. | iDEAL | Onmisbaar in Nederland | Directe bevestiging, vrijwel geen terugboekingen | | Creditcard | Internationaal, en zakelijk | Hogere kosten, terugboekingsrisico | | Bancontact | België | Vergelijkbaar met iDEAL | | PayPal | Internationaal, vertrouwde merknaam | Hogere kosten, eigen geschillenproces | | Apple Pay en Google Pay | Mobiel, verhoogt conversie merkbaar | Vraagt HTTPS en domeinverificatie | | Achteraf betalen | Populair in NL en DE | Aanbieder draagt risico, tegen een percentage | | SEPA-overboeking | B2B en grote bedragen | Trage bevestiging; orders blijven hangen | Begin met twee tot drie methoden die je markt werkelijk gebruikt. Elke extra methode is een afrekenkeuze meer en, subtieler, nog een pad dat je moet testen na elke platformupdate. ### Hoe de integratie werkt De vorm is bij vrijwel alle moderne diensten hetzelfde, en het is de moeite waard hem te begrijpen omdat de faalwijzen eruit volgen. - Je server maakt een betaalintentie aan met bedrag, valuta en bestelverwijzing. - De klant wordt naar de betaalpagina van de dienst gestuurd, of vult een ingesloten formulier in. - De klant autoriseert bij zijn bank of kaartuitgever, vaak met sterke authenticatie. - De dienst stuurt de klant terug naar jouw retour-URL — die mag je nooit als bewijs van betaling gebruiken. - De dienst stuurt een webhook naar je server met de definitieve status. Dít is de waarheid. - Je server verifieert de webhookhandtekening, werkt de bestelling bij en verstuurt de bevestiging. - Kaartgegevens raken je server nooit aan — dat houdt je buiten het zwaarste deel van PCI-compliance. Stap vier en vijf zijn waar de meeste bugs zitten. De klant kan de browser sluiten voordat hij terugkeert; de webhook komt hoe dan ook. Bouw op de webhook, niet op de retour. ### De randgevallen waar geld verloren gaat Deze verschijnen niet tijdens het testen en wel tijdens de eerste drukke week. | Webhook komt twee keer | Bestelling dubbel verwerkt, klant dubbel gemaild | Idempotentie: verwerk elke gebeurtenis-id één keer | | Webhook komt vóór de retour | Race die de bestelstatus overschrijft | Statusovergangen expliciet maken, nooit terugdraaien | | Klant sluit tabblad na betaling | Betaald, geen bestelling | Bestelling aanmaken op de webhook, niet op de retour | | Betaling mislukt na voorraadreservering | Voorraad geblokkeerd door niets | Reservering laten verlopen na een vast venster | | Deelterugbetaling | Boekhouding klopt niet | Terugbetalingen als eerste klas gebeurtenis modelleren | | Terugboeking | Geld weg, product verzonden | Bewijs bewaren; risicoregels bij hoge bedragen | | Dienst is offline | Nul omzet, niet minder omzet | Tweede methode als terugval | ### Compliance en testen Een korte lijst die de dingen dekt die achteraf duur zijn wanneer ze ontbreken. - Gebruik gehoste velden of een omleiding zodat kaartgegevens je server nooit raken — dat reduceert je PCI-omvang enorm. - Sterke klantauthenticatie is verplicht in Europa; test het pad met een kaart die het afdwingt. - Verifieer elke webhookhandtekening. Een niet-geverifieerde webhook is een openbaar eindpunt dat bestellingen als betaald kan markeren. - Toon prijzen inclusief btw voor consumenten in Nederland, en maak verzendkosten zichtbaar vóór de laatste stap. - Bewaar bestel- en betaalgegevens zolang de fiscale bewaarplicht vereist, en niet langer voor persoonsgegevens. - Test terugbetalingen en deelterugbetalingen vóór de lancering, niet wanneer de eerste klant erom vraagt. - Draai een echte transactie op productie met een echte kaart en betaal jezelf terug. Testmodus dekt niet alles. Q: Welke betaaldienst moet ik kiezen? A: Kies op basis van welke methoden hij in jouw markt ondersteunt, welke kosten hij rekent bij jouw omzet, en hoe goed hij in je platform integreert. Voor een Nederlandse shop is iDEAL-ondersteuning het eerste filter. Prijsverschillen tussen de grote aanbieders zijn bij bescheiden omzet klein genoeg om niet doorslaggevend te zijn. Q: Moet ik PCI-compliant zijn? A: Ja, maar de omvang hangt volledig af van hoe je integreert. Gebruik je gehoste betaalvelden of een omleiding zodat kaartgegevens nooit je server raken, dan valt je verplichting terug op de eenvoudigste zelfbeoordeling. Verwerk je kaartgegevens zelf, dan ben je in een heel ander regime — vrijwel geen enkele webshop hoort dat te doen. Q: Waarom heb ik webhooks nodig als er een retour-URL is? A: Omdat de retour-URL afhangt van de browser van de klant. Sluit hij het tabblad, valt zijn verbinding weg, of blijft hij hangen op de bankpagina, dan komt de retour nooit — maar het geld is wel afgeschreven. De webhook komt van de server van de dienst en komt hoe dan ook aan. Bouw de bestelling op de webhook en gebruik de retour alleen om de klant iets te tonen. Q: Hoe voorkom ik dubbele bestellingen? A: Maak de webhookverwerking idempotent: bewaar de gebeurtenis-id van elke verwerkte webhook en negeer herhalingen. Diensten sturen webhooks meerdere keren als bevestiging uitblijft, dus dubbele afleveringen zijn normaal gedrag, geen storing. Zonder deze controle stuur je klanten twee bevestigingsmails en boek je twee keer af in je voorraad. ## Checklist voor een contract webontwikkeling https://websitedevelopment.biz/nl/guides/checklist-contract-webontwikkeling Bijgewerkt op 2026-08-07 · Ontwikkelaars inhuren De meeste geschillen over websiteprojecten gaan niet over kwaliteit maar over verwachtingen die nergens waren vastgelegd. Een contract dat de juiste dingen benoemt voorkomt vrijwel al die geschillen, en het duurt een uur om te lezen. Deze gids behandelt wat erin hoort te staan, waarom elk punt bestaat, en de clausules waar je bij twijfel op moet aandringen. ### Scope: het deel dat de meeste geschillen veroorzaakt «De website bouwen» is geen scope. Dit is wat er expliciet in hoort. - Aantal unieke sjablonen, niet aantal pagina's. Vijftig pagina's op vier sjablonen is een klein project. - Wat is inbegrepen: ontwerp, bouw, inhoud invoeren, migratie, koppelingen, testen. - Wat níét is inbegrepen — dit is de belangrijkste zin in het hele contract. - Wie de teksten schrijft, en wie de foto's levert. - Aantal ontwerprondes en wat een «ronde» is. - Ondersteunde browsers en apparaten, en het uitgangspunt voor toegankelijkheid. - Prestatiedoelen als die belangrijk zijn, uitgedrukt in meetbare waarden. - Welke talen, en wie de vertalingen levert. Een leverancier die uit zichzelf opschrijft wat er níét in zit, is meestal een leverancier die eerder een projectgeschil heeft meegemaakt — dat is een goed teken. ### Eigendom, toegang en uittreden Deze punten voelen abstract tot je van leverancier wilt wisselen, en dan zijn het de enige die tellen. | Broncode | Gaat volledig naar jou bij eindbetaling | | Ontwerpbestanden | Ook van jou, inclusief de bronbestanden | | Domeinnaam | Op jouw naam geregistreerd, met jouw toegang | | Hosting | Op jouw account, of overdraagbaar op verzoek | | Accounts van derden | Analyse, e-mail, betaaldienst — op jouw naam | | Licenties van derden | Welke, en wie ze na afloop betaalt | | Overdracht | Documentatie en toegangsoverdracht bij beëindiging | | Portfoliogebruik | Zij mogen het tonen; redelijk om toe te staan | Domein en hosting op naam van de leverancier is de meest voorkomende manier waarop bedrijven vast komen te zitten. Controleer dat vóór ondertekening, niet bij vertrek. ### Betaling, doorlooptijd en wijzigingen Deze drie hangen samen: wie wanneer betaalt, wat de datum bepaalt, en wat er gebeurt als de scope groeit. - Betaling in fasen gekoppeld aan opleveringen, niet aan kalenderdata. - Een aanbetaling is normaal; volledige vooruitbetaling is dat niet. - Een slottermijn na oplevering, groot genoeg om betekenis te hebben. - Wederzijdse afhankelijkheden: de planning schuift als jij teksten te laat aanlevert, en dat hoort er te staan. - Een wijzigingsprocedure: elke uitbreiding krijgt een geschreven raming vóór het werk begint. - Uurtarief voor werk buiten de scope, vooraf vastgelegd. - Wat er gebeurt bij vertraging aan beide zijden — niet alleen aan de jouwe. - Beëindigingsvoorwaarden: hoe je stopt en wat er dan betaald en overgedragen wordt. ### Garantie, onderhoud en aansprakelijkheid Het deel dat over de periode na de lancering gaat, en dat het vaakst ontbreekt. | Bugperiode | Dertig tot negentig dagen kosteloos herstel | | Wat een bug is | Werkt niet zoals afgesproken — niet: nieuwe wens | | Reactietijd | Werkdagen voor gewone meldingen, sneller bij storing | | Onderhoud | Apart contract, met een expliciete opsomming | | Beveiligingslekken | Wie patcht, binnen welke termijn | | Persoonsgegevens | Verwerkersovereenkomst als zij gegevens verwerken | | Aansprakelijkheid | Beperkt tot de contractwaarde is gebruikelijk | | Geschillen | Welk recht, welke rechtbank — kort maar aanwezig | Het onderscheid tussen «bug» en «nieuwe wens» veroorzaakt na de lancering de meeste wrijving. Eén zin die het definieert bespaart maanden discussie. Q: Heb ik een contract nodig voor een klein project? A: Ja, al mag het kort zijn. Twee pagina's die scope, prijs, betaalmomenten, eigendom en wat er niet in zit vastleggen, dekken het merendeel van wat er misgaat. De kleine projecten zijn juist de projecten waarin niemand iets vastlegt en waarin de scope daardoor ongemerkt verdubbelt. Q: Wat als de leverancier eigenaar wil blijven van de code? A: Dat is een reden om door te vragen. Bij maatwerk hoort de code na betaling van jou te zijn. Uitzondering is een eigen platform of framework van de leverancier — dan krijg je een licentie in plaats van eigendom, en dat kan redelijk zijn, mits het contract benoemt wat er gebeurt als je vertrekt of als zij stoppen. Q: Hoeveel moet ik vooraf betalen? A: Een aanbetaling van een kwart tot een derde is gebruikelijk en redelijk. Volledige vooruitbetaling is dat niet, want dan verdwijnt elke prikkel om af te ronden. Koppel de rest aan opleveringen die je kunt zien — ontwerp goedgekeurd, bouw opgeleverd, live — in plaats van aan kalenderdata die kunnen schuiven. Q: Wat moet een garantieperiode dekken? A: Fouten in wat is opgeleverd: dingen die niet werken zoals afgesproken. Niet: nieuwe wensen, wijzigingen door een browserupdate na maanden, of problemen door wijzigingen die jij zelf hebt gemaakt. Dertig tot negentig dagen is gebruikelijk. Zorg dat het contract definieert wat een bug is, anders discussieer je daarover op het slechtst denkbare moment. ## WooCommerce, Shopify of Magento: welke past bij jou https://websitedevelopment.biz/nl/guides/woocommerce-versus-shopify-versus-magento Bijgewerkt op 2026-08-07 · E-commerce Deze drie komen op vrijwel elke shortlist voor, en ze zijn verrassend slecht vergelijkbaar omdat ze verschillende problemen oplossen. Ze naast elkaar zetten is nuttig zolang je onthoudt dat de vraag «welke is beter» minder oplevert dan «welke past bij mijn situatie». Deze gids geeft de directe vergelijking en, belangrijker, het profiel van de shop waarvoor elk platform de juiste keuze is. ### De vergelijking in het kort De verschillen die er in de praktijk het meest toe doen, zonder functielijsten die alle drie toch afvinken. | Type | WordPress-plug-in, zelfgehost | Gehost SaaS | Zelfgehost, enterprise | | Vaste kosten | Hosting plus uitbreidingen | Maandelijks, stijgt per pakket | Hosting is aanzienlijk | | Aanpasbaarheid | Hoog — het is jouw code | Beperkt tot wat het platform toestaat | Zeer hoog | | Onderhoud | Jouw verantwoordelijkheid | Inbegrepen | Jouw verantwoordelijkheid, aanzienlijk | | Benodigde expertise | Gemiddeld | Laag | Hoog — specialistisch | | Beste catalogusomvang | Tot enkele duizenden | Klein tot groot | Groot tot zeer groot | | Sterkte | Content en shop in één systeem | Snel starten, betrouwbaar | Complexe B2B en meerdere shops | ### Wie WooCommerce moet gebruiken WooCommerce is op zijn best wanneer content en verkoop samen moeten leven, en wanneer je iemand hebt die het onderhoudt. - Je hebt al een WordPress-site met bezoekers, en verkoop is een uitbreiding daarvan. - Content stuurt je verkoop — gidsen, recensies, redactionele pagina's die naar producten leiden. - Je catalogus is beheersbaar: honderden tot enkele duizenden producten, geen honderdduizenden. - Je wilt geen transactiekosten boven op je betaaldienst betalen. - Je hebt een ontwikkelaar of bureau dat updates, back-ups en beveiliging bezit. - Je hebt aanpassingen nodig die een gehost platform niet toestaat. - Vermijd het wanneer: niemand het onderhoud gaat bezitten. Dat is de enige veelvoorkomende manier waarop deze keuze faalt. ### Wie Shopify moet gebruiken Shopify is op zijn best wanneer je snel wilt verkopen en het onderhoud niet wilt bezitten. Dat is een groter deel van de markt dan ontwikkelaars doorgaans toegeven. - Je wilt binnen weken verkopen in plaats van maanden. - Je vereisten passen binnen wat het platform standaard doet, met een handvol apps. - Je hebt geen technisch team en wilt er geen inhuren voor onderhoud. - Betrouwbaarheid bij drukte telt zwaar — pieken zijn hun probleem, niet dat van jou. - Je verkoopt via meerdere kanalen en wilt dat het platform dat regelt. - Vermijd het wanneer: je afrekenlogica nodig hebt die het platform niet toestaat, of wanneer app-abonnementen zich opstapelen tot boven de kosten van een eigen bouw. - Reken de transactiekosten door bij je verwachte omzet voordat je toezegt. ### Wie Magento moet gebruiken Magento is krachtig en duur in beide richtingen — te bouwen en te onderhouden. Het is de juiste keuze voor een kleiner aantal shops dan dat het gekozen wordt. | Complexe B2B-prijzen en klantgroepen | Ja — dit is de kernsterkte | | Meerdere shops op één achterkant | Ja | | Zeer grote catalogi met veel kenmerken | Ja | | Diepe ERP-koppeling | Ja | | Eenvoudige catalogus van honderd producten | Nee — je betaalt voor complexiteit die je niet gebruikt | | Geen vast ontwikkelteam | Nee — het onderhoud is aanzienlijk | | Beperkt budget | Nee — hosting alleen al kost meer dan alternatieven | De meest voorkomende Magento-fout is hem kiezen op basis van functielijsten in plaats van op capaciteit. Zonder een team dat hem bezit wordt hij een verouderde installatie die niemand durft bij te werken. Q: Is WooCommerce gratis? A: De plug-in wel; de shop niet. Reken op hosting, mogelijk premium-uitbreidingen voor verzending, abonnementen of boekhoudkoppelingen, en maandelijkse onderhoudsuren. De totale kosten liggen vaak dicht bij een gehost platform — het verschil is dat je controle en geen transactiekosten koopt in plaats van gemak. Q: Is Shopify beter voor SEO? A: Niet inherent. Alle drie kunnen goed scoren en alle drie kunnen slecht ingericht worden. Shopify legt enkele URL-structuren op waar je niet omheen kunt en die sommige mensen storen; WooCommerce geeft volledige controle en dus volledige verantwoordelijkheid. Het verschil in ranking komt vrijwel altijd uit content en techniek, niet uit het platformmerk. Q: Kan ik van WooCommerce naar Shopify? A: Ja, en de omgekeerde richting ook. Producten en klanten migreren goed; bestelhistorie en aangepaste functionaliteit minder goed. Het echte werk is de URL-afbeelding en het opnieuw opbouwen van alles dat je met code hebt aangepast. Behandel het als een project van weken, niet als een export-importknop. Q: Welk platform schaalt het best? A: Alle drie schalen verder dan de meeste shops ooit komen. Shopify schaalt zonder dat jij eraan werkt; Magento schaalt het verst maar vraagt engineering; WooCommerce schaalt prima tot enkele duizenden producten en dan met werk. Schaal is zelden de beperking die de keuze bepaalt — onderhoudscapaciteit is dat wel. ## Freelancer, bureau of eigen team: wat past bij jou https://websitedevelopment.biz/nl/guides/freelancer-bureau-of-eigen-team Bijgewerkt op 2026-08-07 · Ontwikkelaars inhuren De drie manieren om webwerk gedaan te krijgen verschillen minder in kwaliteit dan in risico en continuïteit. Alle drie kunnen uitstekend werk leveren; ze falen op verschillende manieren, en dat verschil is wat je werkelijk kiest. Deze gids zet ze naast elkaar op de punten die tellen, en geeft het profiel waarvoor elk juist is. ### De vergelijking De verschillen die er na een half jaar toe doen. | Kosten per uur | Laagst | Hoogst | Salaris plus werkgeverslasten | | Opstarttijd | Dagen | Weken | Maanden | | Disciplines | Eén of twee | Meerdere | Wat je aanneemt | | Continuïteit | Kwetsbaar — één persoon | Goed — vervanging beschikbaar | Goed zolang ze blijven | | Coördinatie | Jij doet die | Zij doen die | Jij doet die | | Domeinkennis | Bouwt langzaam op | Wisselt per project | Diepst | | Past bij | Afgebakende projecten | Grote projecten, doorlopend | Doorlopend intern werk | ### Wanneer een freelancer juist is Freelancers zijn ondergewaardeerd voor afgebakend werk en overvraagd voor alles daarbuiten. - Het project is duidelijk afgebakend en past binnen één of twee disciplines. - Je kunt zelf coördineren en beslissingen nemen zonder een tussenpersoon. - Het budget is beperkt en je koopt liever uren dan overhead. - Je hebt doorlopend kleine werkzaamheden en wilt een vaste bekende persoon. - Risico: één persoon betekent één ziekbed, één vakantie, één vertrek. Leg toegang en documentatie vast. - Risico: is de freelancer een ontwerper of een ontwikkelaar, dan mis je de andere helft — controleer welke. - Vermijd het wanneer: het project meerdere disciplines tegelijk nodig heeft en jij de coördinatie niet kunt doen. ### Wanneer een bureau juist is Je betaalt voor coördinatie, meerdere disciplines en het feit dat er iemand anders is wanneer één persoon uitvalt. - Het project heeft strategie, ontwerp, bouw en inhoud tegelijk nodig. - Je hebt intern niemand die het project kan sturen. - Continuïteit telt zwaar: de site draagt omzet en mag niet stilvallen bij ziekte. - Je wilt één aanspreekpunt in plaats van vier leveranciers coördineren. - Risico: je krijgt niet altijd de mensen uit het verkoopgesprek — vraag wie er werkelijk op zit. - Risico: overhead is echt. Bij eenvoudig werk betaal je voor coördinatie die je niet nodig hebt. - Vraag naar hun verloop. Een bureau waar mensen snel vertrekken levert wisselende kwaliteit. Vraag expliciet wie het werk uitvoert en hoeveel projecten die persoon tegelijk draait. Dat antwoord voorspelt de doorlooptijd beter dan de planning in het voorstel. ### Wanneer je zelf aanneemt Een eigen ontwikkelaar is de duurste optie per uur en de goedkoopste per jaar — mits er werkelijk een jaar aan werk ligt. | De website ís het product | Ja, duidelijk | | Wekelijkse wijzigingen en nieuwe functionaliteit | Ja | | Interne systemen die koppeling vragen | Ja | | Eén site die per kwartaal wijzigt | Nee — een freelancer is goedkoper | | Geen technische leiding aanwezig | Nee — één ontwikkelaar zonder sturing verdwaalt | | Piek van drie maanden | Nee — huur in voor de piek | De veelgemaakte fout is één ontwikkelaar aannemen zonder iemand die technisch kan meekijken. Zonder sturing en zonder collega's is dat een zware positie en meestal een kort dienstverband. Q: Zijn freelancers riskanter? A: Op één punt: er is geen back-up wanneer ze ziek worden, vertrekken of ander werk aannemen. Dat risico beheers je met documentatie, eigen toegang tot alle accounts en code in jouw eigen repository. Op kwaliteit is er geen systematisch verschil — goede freelancers leveren werk dat elk bureau zou tekenen. Q: Waarom zijn bureaus zoveel duurder? A: Omdat je meer koopt: projectleiding, meerdere disciplines, vervanging bij uitval en een organisatie die blijft bestaan. Bij een complex project is dat de kosten waard. Bij een eenvoudige site betaal je voor coördinatie die niemand nodig heeft — dan is een freelancer eerlijker geprijsd voor hetzelfde resultaat. Q: Wanneer moet ik zelf iemand aannemen? A: Wanneer er werkelijk doorlopend werk ligt — wekelijkse wijzigingen, nieuwe functionaliteit, koppelingen met interne systemen. Reken door: is de jaarlijkse externe factuur vergelijkbaar met een salaris, dan is aannemen te overwegen. Zorg wel dat er technische sturing is; één ontwikkelaar zonder collega's is een kwetsbare positie. Q: Kan ik ze combineren? A: Ja, en dat werkt vaak goed. Een gebruikelijke opzet is een bureau voor de bouw en een freelancer voor doorlopend onderhoud en kleine wijzigingen. Voorwaarde is dat de code van jou is, dat de documentatie klopt en dat de overdracht expliciet gepland is — anders koop je een overdrachtsprobleem in plaats van flexibiliteit. ## De beste e-commerceplatforms vergeleken https://websitedevelopment.biz/nl/guides/beste-ecommerce-platforms-vergeleken Bijgewerkt op 2026-08-07 · E-commerce De platformkeuze bepaalt je vaste lasten, hoeveel je zelf kunt aanpassen en hoe pijnlijk het is om over drie jaar te vertrekken. Het is de moeilijkste beslissing om terug te draaien in een webshopproject. Deze gids vergelijkt de categorieën in plaats van merken alleen te tellen, want de categorie bepaalt de afwegingen die je overneemt. ### De drie categorieën Vrijwel elk platform valt in een van deze drie, en de categorie voorspelt je ervaring beter dan de merknaam. | Gehost (SaaS) | Shopify, BigCommerce | Onderhoud inbegrepen, snel starten | Maandkosten, platformlimieten, transactiekosten | | Zelfgehost | WooCommerce, Magento, PrestaShop | Volledige controle, geen platformkosten | Je bezit updates, beveiliging en hosting | | Headless | Commerce-API's met eigen front-end | Volledige ontwerpvrijheid, snelheid | Twee systemen om te bouwen en te onderhouden | Voor de meeste shops onder ongeveer duizend bestellingen per maand is de vraag gehost of zelfgehost. Headless is een antwoord op specifieke beperkingen, geen standaardstartpunt. ### Kosten over drie jaar, niet in maand één Platforms zien er anders uit zodra je totale eigendomskosten bekijkt in plaats van de instapprijs. | Maandelijkse licentie | Vast, stijgt met omzet | Geen | | Hosting | Inbegrepen | Jouw kosten, schaalt met verkeer | | Transactiekosten | Mogelijk boven op de betaaldienst | Alleen de betaaldienst | | Uitbreidingen | Meestal maandelijks per app | Eenmalig of jaarlijks, of maatwerk | | Onderhoud | Platform doet het | Jouw kosten — reken op maandelijkse uren | | Beveiliging | Platformverantwoordelijkheid | Jouw verantwoordelijkheid | | Aanpassingen | Beperkt door wat het platform toestaat | Onbeperkt, maar je betaalt de bouw | Gehost is meestal goedkoper tot een bepaald omzetniveau, waarna transactiekosten en app-abonnementen het beeld kunnen kantelen. Reken door met je eigen verwachte omzet, niet met een algemene vuistregel. ### Waar elke categorie begint te knellen Elk platform heeft een punt waarop verder werken tegen het gereedschap ingaat. Weten waar dat punt ligt is nuttiger dan een functielijst. - Gehost knelt wanneer je afreken- of prijslogica nodig hebt die het platform niet toestaat — B2B-prijzen, ongebruikelijke btw-regels, complexe bundels. - Gehost knelt ook wanneer app-abonnementen zich opstapelen: tien apps van dertig per maand is een hostingrekening met extra stappen. - Zelfgehost knelt wanneer niemand eigenaar is van het onderhoud. Een verwaarloosde WooCommerce-shop wordt binnen een jaar een beveiligingsprobleem. - Zelfgehost knelt bij schaal zonder engineering: prestaties bij grote catalogi vragen echt werk dat gehoste platforms voor je doen. - Headless knelt wanneer het team kleiner is dan het systeem. Twee codebases onderhouden vraagt engineeringcapaciteit die niet iedereen heeft. - Elk platform knelt wanneer de catalogusstructuur niet past bij het datamodel — controleer dat met echte producten vóór je kiest. ### Hoe je feitelijk kiest Een korte procedure die de meeste verkeerde keuzes voorkomt, in volgorde. - Schrijf je vijf lastigste producten op en bouw ze in een proefaccount. Past het datamodel niet, dan stopt het daar. - Noem elk systeem waarmee de shop moet praten. Controleer of er een bestaande koppeling is of dat die gebouwd moet worden. - Reken de kosten over drie jaar door bij je verwachte omzet, inclusief transactiekosten en apps. - Controleer wie het onderhoud gaat doen. Is het antwoord «niemand», kies dan gehost. - Test het beheerpaneel met de persoon die er dagelijks in gaat werken, niet met de ontwikkelaar. - Controleer het uittredepad: kun je producten, klanten en bestellingen exporteren in een bruikbaar formaat? Stap één vangt de meeste mismatches. Een platform dat je moeilijkste product niet netjes kan weergeven wordt drie jaar lang een reeks omwegen. Q: Wat is het beste e-commerceplatform? A: Er is er geen, en dat is geen ontwijking. Gehost wint wanneer niemand het onderhoud wil bezitten en je vereisten binnen het platform passen. Zelfgehost wint wanneer je aanpassingen nodig hebt of platformkosten wilt vermijden en iemand hebt om het te beheren. Kies de categorie eerst; de merkkeuze binnen een categorie is een kleinere beslissing. Q: Kan ik later van platform wisselen? A: Ja, maar het is een echt project — producten, klanten, bestelhistorie en elke URL moeten mee, en de posities schommelen weken. Reken op de kosten van een substantieel deel van de oorspronkelijke bouw. Daarom is de platformkeuze de moeite van het zorgvuldig doen waard, en waarom exportmogelijkheden een keuzecriterium zijn. Q: Zijn transactiekosten belangrijk? A: Bij lage omzet nauwelijks; bij hoge omzet zeer. Een procent extra op honderdduizend per maand is duizend euro per maand, wat een aanzienlijk deel van een eigen bouw financiert. De meeste gehoste platforms laten de extra kosten vervallen als je hun eigen betaaldienst gebruikt — reken uit of dat gunstig uitpakt in jouw markt. Q: Is headless de moeite waard? A: Wanneer je een ontwerp of prestatieniveau nodig hebt dat een themasysteem niet aankan, en je engineeringcapaciteit hebt om twee systemen te onderhouden. Voor de meeste shops is de eerlijke afweging dat je aanzienlijke complexiteit toevoegt voor voordelen die het merendeel van de klanten niet opmerkt. Begin niet headless; groei ernaartoe als een concrete beperking je dwingt. ## Een webontwikkelaar inhuren: de complete gids https://websitedevelopment.biz/nl/guides/webontwikkelaar-inhuren Bijgewerkt op 2026-08-07 · Ontwikkelaars inhuren De meeste slechte websiteprojecten zijn niet mislukt in de bouw maar in de keuze — een verkeerde match tussen wat het bedrijf nodig had en wie het inhuurde. Dat is goed nieuws, want de keuze is het deel dat je volledig zelf beheerst. Deze gids behandelt hoe je bepaalt wat je nodig hebt, waar je zoekt, hoe je beoordeelt wat je terugkrijgt, en welke signalen werkelijk voorspellend zijn. ### Bepaal eerst wat je werkelijk nodig hebt «We hebben een website nodig» is te vaag om een offerte op te baseren, en vage opdrachten leveren onvergelijkbare offertes op. - Schrijf op wat de site voor het bedrijf moet doen — aanvragen genereren, verkopen, informeren, aannemen. - Noem het aantal pagina's en de inhoudstypen bij benadering. Twintig pagina's is een ander project dan tweehonderd. - Noem elke koppeling: boekhouding, CRM, voorraad, e-mailmarketing, inlogsysteem. - Bepaal wie de inhoud levert. Dit is de meest onderschatte post en de meest voorkomende oorzaak van vertraging. - Bepaal wie de site na de lancering beheert, en met welk kennisniveau. - Bepaal het budgetbereik. Dat delen scheelt iedereen tijd en levert bruikbaardere offertes op. - Noem de datum en waarom die datum bestaat — een beurs is een echte reden, «zo snel mogelijk» niet. Punt vier bepaalt de doorlooptijd vaker dan enige technische keuze. Een project wacht zelden op code en vaak op teksten en foto's. ### Waar je zoekt, en wat elk kanaal oplevert Het kanaal bepaalt sterk wie je krijgt en tegen welke prijs. | Aanbeveling uit je netwerk | Beste trefkans; bewezen werk | Beperkte keuze | | Lokale bureaus | Bereikbaar, verantwoordelijk | Hogere tarieven | | Freelanceplatforms | Groot aanbod, snel | Sterk wisselende kwaliteit; screen zorgvuldig | | Ontwikkelaarsgemeenschappen | Sterk technisch | Vaak minder ontwerp en strategie | | Sites die je mooi vindt | Aan de voettekst zie je wie hem bouwde | Meest onderbenutte kanaal | | Vast dienstverband | Doorlopende capaciteit | Alleen zinvol bij doorlopend werk | Sites bekijken die je goed vindt en opzoeken wie ze bouwde is het meest onderbenutte kanaal, en het levert de meest relevante shortlist. ### Portfolio's beoordelen Portfolio's tonen het beste werk onder de beste omstandigheden. Deze controles laten zien wat eronder zit. - Bezoek de live sites, niet de schermafbeeldingen. Werk verslechtert nadat klanten het overnemen. - Open ze op je telefoon en let op laadtijd. Dit filtert meer kandidaten dan enige vraag. - Kijk of er projecten zijn met een vergelijkbare complexiteit, niet alleen een vergelijkbare branche. - Vraag wat hun bijdrage was — ontwerp, bouw, inhoud, of alles. - Vraag naar een project dat moeilijk ging en wat ze anders zouden doen. Het antwoord is zeer verhelderend. - Bel één referentie en vraag naar de samenwerking na de lancering, niet ervoor. - Controleer of ze werk hebben dat ouder is dan drie jaar en nog steeds draait. ### Signalen tijdens het gesprek De sterkste voorspeller van een goede samenwerking is niet techniek maar hoe iemand met onduidelijkheid omgaat. | Stelt vragen over je bedrijf vóór over ontwerp | Offreert zonder vragen te stellen | | Duwt terug op onduidelijke eisen | Zegt overal ja op | | Legt afwegingen uit in gewone taal | Verbergt keuzes achter jargon | | Noemt wat er níét in zit | Alleen een totaalbedrag | | Vraagt wie de inhoud levert | Gaat ervan uit dat inhoud er is | | Praat over wat na de lancering gebeurt | Behandelt de lancering als het einde | | Geeft een bereik met de aannames erbij | Geeft een exact bedrag zonder scope | Iemand die terugduwt op je eisen doet zijn werk. Iemand die overal ja op zegt levert de vertraging en de meerkosten later af. Q: Hoeveel moet ik betalen voor een website? A: Een eenvoudige bedrijfssite met een CMS loopt doorgaans in de lage duizenden. Maatwerkontwerp, meer pagina's en koppelingen brengen dat naar tienduizenden. Wat de prijs werkelijk stuurt is de hoeveelheid maatwerk, het aantal koppelingen en wie de inhoud maakt — niet het aantal pagina's alleen. Vraag offertes die die posten apart benoemen. Q: Freelancer of bureau? A: Een freelancer is goedkoper en directer, en werkt goed voor afgebakende projecten wanneer je zelf de coördinatie kunt doen. Een bureau brengt meerdere disciplines en continuïteit, wat telt bij grotere projecten en doorlopend onderhoud. Het echte verschil zit in wat er gebeurt als er iemand uitvalt. Q: Hoe weet ik of een offerte redelijk is? A: Vraag er drie op basis van dezelfde geschreven opdracht. Verschillen die groter zijn dan een factor twee betekenen meestal dat ze verschillende dingen offreren, niet dat een van hen te duur is — lees dan wat er in de goedkoopste ontbreekt. Een offerte die expliciet benoemt wat er níét in zit is meer waard dan een lagere zonder scope. Q: Moet ik de code bezitten? A: Ja, en dat hoort in het contract te staan. Je moet de site bij een andere leverancier kunnen laten voortzetten zonder herbouw. Let ook op wie de domeinnaam, de hosting en de accounts bezit — leveranciers die die op eigen naam zetten maken vertrekken kunstmatig moeilijk. Vraag daar vóór ondertekening naar. ## Webshop ontwikkelen: de complete gids https://websitedevelopment.biz/nl/guides/webshop-laten-bouwen-gids Bijgewerkt op 2026-08-07 · E-commerce Een webshop is een website met geld, voorraad en wettelijke verplichtingen eraan vast. Dat maakt het ontwikkelen van een webshop een ander project dan een brochuresite: de onderdelen die het meest kosten zijn meestal niet de onderdelen die klanten zien. Deze gids behandelt wat een webshopproject werkelijk omvat, wat de kosten bepaalt, het operationele werk dat bij de lancering begint, en de fouten die duur zijn om terug te draaien. ### Wat een webshop omvat buiten de etalage Catalogus en afrekenen vormen het zichtbare deel. Daaronder liggen de systemen die bepalen of het bedrijf werkelijk kan draaien, en daar gaat bij elke shop boven de kleinste het merendeel van het budget heen. - Catalogusstructuur: categorieën, varianten, kenmerken, bundels, beschikbaarheidsregels. - Prijzen: btw inbegrepen of exclusief per markt, kortingen, klantgroepen, valuta. - Betalingen: ten minste één betaaldienst, plus terugbetalingen, deelterugbetalingen en mislukte betalingen. - Verzending: zones, gewichten, afmetingen, vervoerdersregels, drempels voor gratis verzending. - Btw: btw per bestemming, met facturen die de velden bevatten die je rechtsgebied vereist. - Voorraad: beschikbaarheid, nabestellingen, en reservering tijdens het afrekenen zodat je niet oververkoopt. - Orderbeheer: waar medewerkers bestellingen verwerken — vaak een volledig apart systeem. - E-mails: bevestiging, verzending, terugbetaling, verlaten winkelmandje, en hun wettelijke inhoud. - Retouren: het beleid en de werkstroom die het uitvoert. Vraag vroeg waar medewerkers de bestellingen werkelijk gaan verwerken. Is dat je bestaande ERP, dan is de koppeling een substantieel deel van het project en hoort ze in de eerste raming. ### Wat de kosten bepaalt Het aantal producten telt minder dan de complexiteit ervan en het aantal systemen waarmee de shop moet praten. | Catalogus | Eenvoudige producten, één prijs | Varianten, bundels, configureerbare producten | | Markten | Eén land, één valuta | Meerdere landen, btw-regels, valuta | | Koppelingen | Geen — de shop is het systeem | ERP, voorraadbeheer, boekhouding, verzending | | Prijsstelling | Vaste openbare prijzen | Klantgroepen, staffelprijzen, offertes | | Ontwerp | Themasjablonen | Maatwerk etalage en productpagina's | | Migratie | Nieuwe shop, geen historie | Bestaande orders, klanten, URL's, recensies | | Inhoud | Kort en geleverd | Duizenden producten die geschreven en gefotografeerd moeten worden | Productinhoud is de meest onderschatte post. Duizend producten beschrijven en fotograferen kost vaak meer dan de shop bouwen. ### Wat er bij de lancering begint Bij een brochuresite is de lancering vrijwel het einde. Bij een webshop is het het begin van doorlopend werk dat iemand moet bezitten. - Dagelijks: bestellingen verwerken, betaalfouten controleren, klantvragen beantwoorden. - Wekelijks: voorraadstanden bijwerken, verlaten winkelmandjes bekijken, verzendkosten controleren. - Maandelijks: platform en uitbreidingen bijwerken, afrekenpad testen na elke update. - Doorlopend: productinhoud toevoegen en verversen — een shop die niet groeit valt terug. - Elk kwartaal: betaaldienstkosten, retourpercentages en de verzendtabel doornemen. - Jaarlijks: btw-regels controleren, vooral als je naar nieuwe markten verkoopt. ### Fouten die duur zijn om terug te draaien Deze zijn goedkoop om vooraf te vermijden en duur om achteraf op te lossen, meestal omdat ze gegevens of URL's raken. | Btw als een sluitpost behandelen | Onjuiste facturen zijn een boekhoudkundig probleem, geen bug | De regels per markt vóór de bouw vastleggen | | Geen voorraadreservering | Oververkoop bij drukte, handmatig herstel | Voorraad reserveren zodra het afrekenen begint | | Migratie zonder URL-afbeelding | Elke productpositie verdwijnt | Oude naar nieuwe URL's 301, één op één | | Eén betaaldienst zonder terugval | Storing betekent nul omzet, niet minder omzet | Een tweede methode toevoegen voordat je hem nodig hebt | | Openstaande facetnavigatie | Duizenden bijna-dubbele URL's in de index | Filtercombinaties standaard op noindex | | Afrekenen alleen op desktop getest | Het merendeel van het verkeer is mobiel | Op echte telefoons testen, niet alleen in een simulator | Q: Wat kost een webshop? A: Een gethemede shop op een bestaand platform met een bescheiden catalogus loopt doorgaans in de lage duizenden. Maatwerkontwerp, meerdere markten en ERP-koppelingen brengen dat naar tienduizenden. De grootste variabelen zijn koppelingen en productinhoud, niet het bouwen van de shop zelf — vraag een offerte die die twee apart benoemt. Q: Hoelang duurt het bouwen van een webshop? A: Zes tot tien weken voor een gethemede shop met een schone catalogus en één markt. Drie tot zes maanden zodra er sprake is van maatwerkontwerp, migratie van bestaande orders, of koppeling met een ERP. Contentvoorbereiding loopt daar parallel aan en is meestal wat de datum werkelijk bepaalt. Q: Kan ik zelf een webshop beheren? A: De dagelijkse bediening ja: producten, prijzen, bestellingen en inhoud horen allemaal in het beheerpaneel te zitten. Wat je uitbesteedt is het technische onderhoud — updates, back-ups, beveiliging en het afrekenpad testen na elke platformwijziging. Die combinatie werkt goed en is wat de meeste kleine shops doen. Q: Moet ik met alle betaalmethoden beginnen? A: Nee. Begin met de methoden die je markt werkelijk gebruikt — in Nederland betekent dat vrijwel altijd iDEAL, plus creditcard voor buitenlandse klanten. Voeg later toe op basis van wat klanten vragen. Wat je wel vroeg wilt is een tweede methode als terugval, zodat een storing bij één dienst je omzet niet volledig stilzet. ## Meertalige websites: CMS, URL's en werkstroom https://websitedevelopment.biz/nl/guides/meertalige-website-cms Bijgewerkt op 2026-08-07 · CMS Een meertalige site is niet één site maal het aantal talen. Het is één inhoudsmodel met vertaalrelaties, een URL-patroon dat je nooit meer wilt wijzigen, en een werkstroom die bepaalt of de vertalingen actueel blijven of binnen een jaar verouderen. Deze gids behandelt de beslissingen op volgorde van hoe duur ze zijn om terug te draaien. ### Kies het URL-patroon eerst Dit is de duurste beslissing om te wijzigen, want hij hangt samen met hreflang, canonieke URL's en elke omleiding die je ooit zult schrijven. | Submap | site.nl/de/diensten | Het eenvoudigst; één domein bouwt alle autoriteit op | | Subdomein | de.site.com/diensten | Nettere scheiding; meer inrichting, gesplitste signalen | | Landdomein | site.de/diensten | Sterkste lokale signaal; een aparte site om te beheren | | Parameter | site.com/diensten?lang=de | Vermijden — zwakke signalen, risico op dubbelingen | Voor het merendeel van de projecten zijn submappen juist. Landdomeinen zijn alleen de moeite waard wanneer je werkelijk lokale aanwezigheid opbouwt, met een team per markt. ### Taal, en de vertaalde onderdelen Er is meer aan een taalversie dan de tekst. Deze onderdelen worden het vaakst vergeten en zijn zichtbaar voor bezoekers. - URL-namen: vertaald voor lokale relevantie, of identiek voor eenvoudiger onderhoud. Beide verdedigbaar; kies bewust. - Metadata: titels en beschrijvingen per taal, niet machinaal afgeleid uit de brontaal. - Datums, getallen en valuta in de lokale notatie. - Formulieren: labels, foutmeldingen, bevestigingen, en de e-mails die eruit volgen. - Afbeeldingen met tekst erin — die zijn onvertaalbaar zonder aparte bestanden. - Juridische pagina's: privacyverklaring en voorwaarden hebben per rechtsgebied echte verschillen. - Zoekfunctie en foutpagina's, die vrijwel altijd in de brontaal blijven hangen. - Schrijfrichting voor talen die van rechts naar links lopen — dat is opmaak, niet alleen tekst. ### hreflang correct instellen hreflang vertelt zoekmachines welke versie bij welke taal hoort. Het is mechanisch en het faalt op mechanische manieren. - Elke pagina vermeldt elke taalversie van zichzelf, inclusief zichzelf. - De verwijzingen moeten wederkerig zijn. Ontbreekt de terugverwijzing, dan vervalt de hele groep. - Gebruik correcte codes: nl, de, pt-br. Een verzonnen code wordt genegeerd. - Gebruik dezelfde code in de HTML en in de sitemap; twee verschillende codes breken de groep. - Voeg x-default toe voor bezoekers die in geen enkele taal vallen. - Genereer alles uit één bron zodat HTML en sitemap niet uiteen kunnen lopen. - Bestaat een pagina niet in een taal, vermeld die taal dan niet — verwijs niet naar een vervanger. De laatste regel is belangrijk bij gefaseerde vertaling: een gedeeltelijk vertaalde site is prima zolang hreflang alleen declareert wat werkelijk bestaat. ### Werkstroom: waar het in de praktijk vastloopt De technische inrichting is het eenvoudige deel. Vertalingen actueel houden is waar meertalige projecten stilvallen. | Bron wijzigt, vertaling niet | Talen lopen stilzwijgend uiteen | Vertalingen markeren als verouderd bij bronwijziging | | Geen eigenaar per taal | Vertalingen verouderen zonder dat iemand het merkt | Per taal een verantwoordelijke aanwijzen | | Alles vertalen | Kosten schalen met paginatelling, niet met waarde | Alleen vertalen wat die markt nodig heeft | | Machinevertaling zonder controle | Fouten die het merk schaden en slecht scoren | Machinaal als eerste versie, altijd nagekeken | | Vertalers zonder context | Letterlijke maar verkeerde teksten | Schermafbeeldingen en toelichting meesturen | | Geen concepten per taal | Halve vertalingen live | Publicatiestatus per taal apart | Beslis vooraf welke talen volledig zijn en welke een kernselectie krijgen. Een site met vijf goede talen presteert beter dan één met vijftien verouderde. Q: Moet ik submappen of aparte domeinen gebruiken? A: Submappen voor het merendeel van de projecten: één domein bouwt alle autoriteit op, de inrichting is eenvoudiger en er is één site om te onderhouden. Landdomeinen zijn de moeite waard wanneer je werkelijk lokale aanwezigheid opbouwt met een team per markt — dan koop je een sterk lokaal signaal en betaal je met beheerlast. Q: Is machinevertaling acceptabel? A: Als eerste versie die een mens nakijkt, ja — dat is inmiddels een normale werkwijze en het scheelt aanzienlijk in kosten. Ongecontroleerd gepubliceerd is het riskant: fouten die vaktermen verkeerd vertalen schaden je geloofwaardigheid bij precies de lezers die je wilt bereiken, en de teksten scoren slecht omdat ze niet aansluiten bij hoe mensen werkelijk zoeken. Q: Moet ik elke pagina in elke taal vertalen? A: Nee, en proberen dat te doen is hoe meertalige projecten vastlopen. Vertaal wat die markt nodig heeft: de kernpagina's, de diensten die je daar aanbiedt, en de inhoud waar in die taal werkelijk naar gezocht wordt. Zolang hreflang alleen declareert wat bestaat, is een gedeeltelijk vertaalde site technisch volstrekt in orde. Q: Wat gaat er het vaakst mis bij meertalige sites? A: Twee dingen. Technisch: niet-wederkerige hreflang, waardoor de hele taalgroep vervalt. Organisatorisch: geen eigenaar per taal, waardoor de brontaal doorgroeit en de vertalingen stilstaan. Het tweede is het vaakst fataal, want het is geen storing die iemand meldt — het verval is geleidelijk. ## SEO-vriendelijke URL-structuur: de regels die er nog toe doen https://websitedevelopment.biz/nl/guides/seo-vriendelijke-url-structuur Bijgewerkt op 2026-08-07 · SEO URL's zijn een kleine rankingfactor en een grote factor voor bruikbaarheid en onderhoud. Hun echte waarde is stabiliteit: een URL die je nooit hoeft te wijzigen is een URL die zijn links, zijn posities en zijn bladwijzers behoudt. Deze gids behandelt de regels die er nog toe doen, de regels die dat niet meer doen, en hoe je een URL wijzigt wanneer het echt moet. ### De regels die het volgen waard zijn Deze zijn consistent over zoekmachines heen en, belangrijker, over de jaren heen — ze gaan net zozeer over onderhoud als over ranking. - Alleen kleine letters. Sommige servers behandelen /Pagina en /pagina als verschillende URL's, wat per ongeluk dubbelingen oplevert. - Koppeltekens tussen woorden, geen underscores of hoofdlettergebruik binnen woorden. - Kort en beschrijvend. Leest iemand de URL hardop, dan zou hij de pagina moeten kunnen raden. - Stopwoorden zijn niet nodig: /gidsen/website-planning verslaat /gidsen/hoe-plan-ik-een-website-voor-mijn-bedrijf. - Geen bestandsextensies op contentpagina's. /over-ons, niet /over-ons.php — dat verbergt de implementatie en overleeft een migratie. - Eén canonieke keuze over de afsluitende schuine streep, afgedwongen met een omleiding. - ASCII waar praktisch; niet-ASCII-URL's werken maar worden bij kopiëren procentgecodeerd, wat lelijk en foutgevoelig is. De waardevolste eigenschap is stabiliteit. Een licht onvolmaakte URL die nooit verandert is meer waard dan een geoptimaliseerde die twee keer verandert. ### Wat er niet veel meer toe doet Verschillende hardnekkige overtuigingen over URL's hebben tegenwoordig beperkt effect, en ze volgen kan zelfs schaden. | URL's met exacte zoekwoorden scoren beter | Hooguit marginaal; opstapelen oogt als spam | | Een diepe mappenstructuur signaleert hiërarchie | Klikdiepte telt, padgdiepte nauwelijks | | Datums in URL's helpen de actualiteit | Ze laten tijdloze content verouderd lijken | | Korter is altijd beter | Beschrijvend verslaat beknopt; /p/4821 helpt niemand | | Subdomein versus submap is beslissend | Submappen zijn eenvoudiger te beheren; beide kunnen werken | | Querystrings zijn niet indexeerbaar | Dat zijn ze wel, maar ze vermenigvuldigen dubbelingen — kies liever schone paden | ### Meertalige URL-patronen Voor een site in meerdere talen is het URL-patroon een van de lastigste dingen om later te wijzigen, omdat het samenhangt met hreflang, canonieke URL's en elke omleiding die je ooit zult schrijven. | Submap | site.nl/nl/gidsen | Het eenvoudigst; één domein bouwt alle autoriteit op | | Subdomein | nl.site.com/gidsen | Nettere scheiding; meer inrichting, gesplitste signalen | | Landdomein | site.nl/gidsen | Sterkste lokale signaal; een aparte site om te beheren | | Parameter | site.com/gidsen?lang=nl | Vermijden — zwakke signalen en risico op dubbelingen | Wat je ook kiest, beslis apart of de URL-naam zelf wordt vertaald. Vertaalde URL-namen helpen de lokale relevantie; identieke zijn eenvoudiger te onderhouden. Beide zijn verdedigbaar — later van gedachten veranderen niet. ### Een URL wijzigen zonder verkeer te verliezen Soms is een wijziging echt nodig. De procedure is mechanisch, en een stap overslaan is waar het verkeer weglekt. - Bevestig dat het de moeite waard is. Een URL-wijziging kost altijd iets; een kleine verbetering van de formulering verdient dat zelden terug. - Breng oud naar nieuw in kaart, één op één. Elke oude URL krijgt een specifieke bestemming, geen categoriepagina. - Gebruik 301-omleidingen, geen 302, en controleer dat elke omleiding één sprong is. - Werk interne links bij zodat ze rechtstreeks naar de nieuwe URL wijzen. Vertrouw niet op je eigen omleidingen. - Werk de sitemap bij en laat de omleidingen voor onbepaalde tijd staan — externe links worden nooit bijgewerkt. - Houd de dekking in Search Console en je rapport met topppagina's vier tot zes weken in de gaten. - Reken op een dip, en onderzoek alleen als die na een maand nog dieper wordt. Q: Moet ik zoekwoorden in URL's opnemen? A: Neem de woorden op die de pagina beschrijven, en dat zijn meestal de zoekwoorden. Wat je niet moet doen is varianten opstapelen: /webontwikkeling-diensten-goedkope-webontwikkeling is in elk opzicht slechter dan /webontwikkeling-diensten, ook voor de mensen die het in de zoekresultaten zien. Q: Subdomein of submap voor een blog? A: Submap, in de meeste gevallen. site.nl/blog is eenvoudiger te beheren, deelt de opgebouwde signalen van het domein en vraagt geen aparte technische inrichting. Subdomeinen zijn logisch wanneer de sectie werkelijk een aparte applicatie is, een apart team heeft, of op andere infrastructuur moet draaien. Q: Hoelang moet ik oude omleidingen bewaren? A: Voor onbepaalde tijd. Ze kosten vrijwel niets om te behouden en externe links naar je oude URL's worden nooit bijgewerkt. Wat je wel moet doen is periodiek de ketens terugbrengen die door opeenvolgende migraties zijn ontstaan, zodat elke oude URL in één sprong direct naar de huidige bestemming wijst. Q: Schaden URL-parameters de SEO? A: Ze zijn op zichzelf niet schadelijk, maar ze vermenigvuldigen snel bijna-dubbele URL's — sorteer-, filter- en trackingparameters kunnen duizenden varianten van één pagina opleveren. Gebruik schone paden voor alles wat je geïndexeerd wilt hebben, en maak de parametervarianten canoniek of zet ze op noindex. ## CMS-migratie zonder verkeer of inhoud te verliezen https://websitedevelopment.biz/nl/guides/cms-migratie-gids Bijgewerkt op 2026-08-07 · CMS Een CMS-migratie is voornamelijk een gegevensproject met een lanceringsdag eraan vast. Het ontwerp krijgt de aandacht; de inhoudsafbeelding en de omleidingen bepalen of het slaagt. Deze gids behandelt de volgorde die werkt, de plekken waar migraties verkeer verliezen, en wat je in de weken na de overstap mag verwachten. ### Inventariseer voordat je iets verplaatst Je kunt niet migreren wat je niet hebt geteld. Deze stap wordt overgeslagen en veroorzaakt het merendeel van de verrassingen. - Crawl de bestaande site en exporteer elke URL met zijn statuscode en titel. - Haal de best presterende pagina's uit je analyse en zoekconsole — die verdienen de meeste zorg. - Tel de inhoudstypen: pagina's, berichten, producten, casestudy's, personen, downloads. - Noteer per type de velden, inclusief de velden die alleen op sommige items voorkomen. - Inventariseer media: hoeveel bestanden, welke totale omvang, welke ontbreken al. - Noteer functionaliteit die niet in de inhoud zit: formulieren, zoeken, filters, koppelingen. - Bepaal wat je níét meeneemt. Een migratie is de beste gelegenheid om dode inhoud te laten liggen. De laatste stap bespaart het meeste werk. Sites verzamelen jarenlang pagina's die niemand leest; die meenemen kost tijd bij elke stap daarna. ### Breng inhoud en URL's in kaart Twee afbeeldingen: velden naar velden, en oude URL's naar nieuwe. De tweede is degene die verkeer bepaalt. | Inhoudstypen | Oud type naar nieuw type, expliciet | Alles als «pagina» importeren | | Velden | Veld voor veld, inclusief lege gevallen | Velden die maar soms voorkomen missen | | Media | Bestanden meenemen én de verwijzingen bijwerken | Bestanden migreren, links laten wijzen naar oud | | URL's | Eén op één, elke oude URL een bestemming | Alles naar de nieuwe homepage | | Categorieën en tags | Taxonomie behouden of bewust samenvoegen | Onbedoeld nieuwe structuur creëren | | Auteurs en datums | Meenemen; datums beïnvloeden actualiteitssignalen | Alle datums op de importdatum zetten | | Omleidingen die al bestonden | Ook meenemen | Oude ketens weggooien en oude links breken | Import van datums is een stille killer: worden alle publicatiedatums de migratiedatum, dan lijkt je hele archief op één dag geschreven. ### Testen vóór de uitrol Wat je op de testomgeving controleert, in de volgorde die het meeste vangt. - Tel de items per inhoudstype en vergelijk met de oude site. Aantallen die niet kloppen zijn het eerste signaal. - Controleer een steekproef van de langste en de vreemdste pagina's — die breken het eerst. - Controleer dat afbeeldingen laden vanaf de nieuwe locatie, niet vanaf het oude domein. - Test elke omleiding met een script tegen de volledige URL-lijst, niet met de hand. - Controleer de metadata: titels, beschrijvingen, canonieke URL's, gestructureerde data. - Test formulieren volledig, inclusief dat de e-mail werkelijk aankomt. - Controleer prestaties tegen de oude site; een migratie die de site verdubbelt in gewicht is een regressie. - Laat de redactie een pagina maken en publiceren voordat je uitrolt. ### Uitrollen en de weken erna De lanceringsdag is kort; het venster waarin je oplet is dat niet. - Rol uit op een rustig moment, niet vrijdagmiddag. - Controleer robots.txt op productie meteen — de testversie meesturen is de klassieke fout. - Dien de nieuwe sitemap in en laat de oude enige tijd staan zodat oude URL's worden opgehaald. - Draai de omleidingstest opnieuw op productie; testomgevingen liegen soms. - Houd het foutlogboek de eerste dagen in de gaten voor 404's die je niet had voorzien. - Volg zoekverkeer en posities vier tot zes weken; reken op schommeling. - Onderzoek pas actief als het na een maand nog verder daalt — eerder is het meestal ruis. Voeg 404's die in de logboeken opduiken toe aan je omleidingstabel naarmate ze verschijnen. Geen enkele inventarisatie is volledig; het foutlogboek vult de rest aan. Q: Verlies ik zoekverkeer bij een CMS-migratie? A: Tijdelijk vrijwel altijd, permanent alleen bij fouten. Reken op vier tot zes weken schommeling zelfs bij een schone uitvoering. Blijvend verlies komt vrijwel uitsluitend uit niet in kaart gebrachte URL's, verwijderde pagina's die verkeer hadden, en meta- of inhoudswijzigingen op pagina's die het goed deden. Q: Kan ik inhoud automatisch migreren? A: Grotendeels wel. Standaardvelden en berichten migreren goed met bestaande gereedschappen. Wat handwerk vraagt is aangepaste velden, ingesloten opmaak binnen tekst, en alles dat in het oude systeem met een plug-in werd opgelost. Reken op een geautomatiseerde basis plus een handmatige ronde voor de belangrijkste pagina's. Q: Hoelang duurt een CMS-migratie? A: Voor een site van honderd pagina's met standaardinhoud enkele weken. Voor duizenden pagina's met aangepaste velden en koppelingen enkele maanden. Het aantal pagina's telt minder dan het aantal inhoudstypen en de hoeveelheid maatwerk — dat zijn de dingen die geen enkel gereedschap voor je oplost. Q: Moet ik de oude site bewaren? A: Bewaar een volledige back-up en, als het kan, een afgeschermde kopie die je zelf kunt raadplegen. Je gaat de eerste maanden geregeld terugkijken wat er ergens stond of hoe iets was ingesteld. Wat je niet moet doen is de oude site openbaar laten staan — twee versies van dezelfde inhoud concurreren met elkaar. ## Sitesnelheid optimaliseren: een praktische werkvolgorde https://websitedevelopment.biz/nl/guides/sitesnelheid-optimaliseren Bijgewerkt op 2026-08-07 · SEO Werk aan sitesnelheid heeft een sterke Pareto-vorm: een handvol ingrepen verklaart op de meeste sites het merendeel van de verbetering, en het zijn vrijwel altijd afbeeldingen, serverreactie en scripts van derden. Deze gids behandelt in welke volgorde je werkt, hoe je meet of een wijziging hielp, en de optimalisaties die de moeite meestal niet waard zijn. ### Meet voordat je iets wijzigt Optimaliseren zonder meten betekent oplossen wat het makkelijkst is in plaats van wat traag is. Twee metingen, dan aan het werk. - Haal velddata van echte bezoekers op — het Core Web Vitals-rapport in Search Console, of je eigen monitoring. - Draai een labtest op de drie belangrijkste sjablonen, afgeknepen tot een middenklassetelefoon op 4G. - Noteer de cijfers voordat je begint. Zonder nulmeting kun je niet zeggen of een wijziging hielp. - Bepaal per sjabloon het grootste losse bestand en het grootste blokkerende verzoek. - Noteer de Time to First Byte apart: ligt die boven 800 ms, dan redt geen front-endwerk je. ### De volgorde die loont Ruwweg naar verbetering per uur inspanning, voor een typische content- of brochuresite. | Afbeeldingen optimaliseren en correct schalen | Groot | Laag | | Ongebruikte scripts van derden verwijderen | Groot | Laag — vooral een politieke klus | | Caching en een CDN inschakelen | Groot | Laag | | Renderblokkerende CSS en JS oplossen | Gemiddeld tot groot | Gemiddeld | | De JavaScript-bundel verkleinen | Gemiddeld tot groot | Gemiddeld tot hoog | | Trage databasequery's oplossen | Groot waar van toepassing | Gemiddeld | | Het laden van lettertypen optimaliseren | Gemiddeld | Laag | | Tekstbestanden verkleinen en comprimeren | Klein | Laag — meestal al aan | | CSS-selectors micro-optimaliseren | Verwaarloosbaar | Niet de moeite waard | ### Afbeeldingen: meestal de grootste winst Op de meeste sites vormen afbeeldingen het merendeel van het paginagewicht, en de meeste worden meerdere malen groter geserveerd dan ze worden getoond. Dit is de goedkoopste grote verbetering die er is. - Serveer WebP of AVIF; beide worden breed ondersteund en zijn bij gelijke kwaliteit meestal 25–50 % kleiner dan JPEG. - Genereer meerdere formaten en gebruik srcset met sizes zodat telefoons bestanden op telefoonformaat downloaden. - Serveer nooit een afbeelding van 2000 px in een vak van 400 px — deze ene fout komt buitengewoon vaak voor. - Laad alles onder de vouw uitgesteld, en niets erboven. - Automatiseer het in de build of het CMS. Handmatig geoptimaliseerde afbeeldingen houden op geoptimaliseerd te zijn zodra iemand anders er een uploadt. - Strip metadata; camera-EXIF kan tientallen kilobytes per bestand zijn. De automatisering is de kern. Een eenmalige optimalisatieronde vervalt binnen maanden naarmate er content bij komt, en niemand merkt het tot het paginagewicht verdubbeld is. ### Scripts van derden en de server Dit zijn de twee gebieden waar het probleem meestal organisatorisch is in plaats van technisch: niemand is eigenaar van de tagbeheerder, en niemand is eigenaar van de hostingkeuze. | Tagbeheerder met onbekende tags | Elke tag nalopen; alles verwijderen dat niemand kan verantwoorden | | Chatwidget die op elke pagina laadt | Bij interactie laden, of alleen waar ondersteuning nodig is | | Meerdere statistiekhulpmiddelen | Er één houden; elk is een volledig script en een verbinding | | A/B-testscript dat rendering blokkeert | Naar de server verplaatsen, of een flits accepteren en async laden | | Trage TTFB op gedeelde hosting | Volledige paginacaching toevoegen; pakket ophogen als het aanhoudt | | Ongecachete databasequery's | De dure cachen; indexen toevoegen voor de veelvoorkomende | | Geen CDN | Er een toevoegen — de goedkoopste wereldwijde vertragingsoplossing die er is | Scripts van derden zijn de betrouwbaarste bron van onverklaarde vertragingen, omdat ze veranderen zonder het je te vertellen en buiten je uitrolproces vallen. Q: Wat is een goede laadtijd? A: De bruikbare doelen zijn de Core Web Vitals-drempels in plaats van één laadgetal: LCP onder 2,5 seconden en Time to First Byte onder 800 ms. Totale laadtijd is een slechte maat omdat een pagina lang bruikbaar kan zijn voordat elk bestand klaar is, en op een traag apparaat ruim daarvoor al onbruikbaar. Q: Verhoogt een snellere site de conversie? A: Doorgaans wel, en het effect is het grootst waar pagina's nu traag zijn en bezoekers op mobiele netwerken zitten. De winst van drie seconden naar twee is veel groter dan die van anderhalf naar één. Is je site al snel, besteed de inspanning dan aan content en helderheid — het rendement is beter. Q: Lossen cache-plug-ins alles op? A: Ze lossen één echt ding goed op — herhaald serverwerk voor dezelfde pagina — en ze kunnen nieuwe problemen veroorzaken, vooral bij ingelogde gebruikers, winkelmandjes en formulieren. Ze doen ook niets aan te grote afbeeldingen of scripts van derden, meestal de grotere problemen. Nuttig, niet voldoende. Q: Is serverside renderen de moeite waard voor snelheid? A: Worden je pagina's nu alleen in de browser gerenderd, dan ja: serverside renderen of statisch genereren neemt een hele heen-en-weergang weg voordat content verschijnt, en het helpt tegelijk de indexering. Zijn je pagina's al serverside gerenderde HTML, dan speelt de vraag niet — je hebt het voordeel al. ## WordPress, Webflow of maatwerk: welke past bij je project https://websitedevelopment.biz/nl/guides/wordpress-versus-webflow-versus-maatwerk Bijgewerkt op 2026-08-07 · CMS De meeste bedrijfssites komen uiteindelijk uit op deze drie opties, en ze verschillen minder in wat ze kunnen dan in wat ze van je vragen — aan geld, aan aandacht en aan technische capaciteit. Deze gids vergelijkt ze op de punten die na een jaar tellen, en geeft per optie het profiel van het project waarvoor hij juist is. ### De vergelijking De verschillen die er in de praktijk toe doen, zonder de functielijsten die alle drie afvinken. | Instapkosten | Laag tot gemiddeld | Gemiddeld | Hoog | | Vaste lasten | Hosting plus onderhoud | Maandelijks abonnement | Hosting; onderhoud naar behoefte | | Ontwerpvrijheid | Hoog met maatwerkthema | Zeer hoog binnen het platform | Volledig | | Bewerkgemak | Bekend, soms rommelig | Uitstekend visueel | Precies wat je bouwt | | Onderhoudslast | Aanzienlijk — plug-ins en updates | Vrijwel geen | Laag, maar echt | | Uittreden | Volledige export mogelijk | Beperkt; het platform is de site | Je bezit alles | | Benodigd team | Ontwikkelaar of bureau | Ontwerper | Ontwikkelaar | ### Wie WordPress moet kiezen WordPress blijft de standaardkeuze om goede redenen, mits het onderhoud een eigenaar heeft. - Je publiceert regelmatig en wilt een bewerkervaring die iedereen al kent. - Je hebt functionaliteit nodig waarvoor een volwassen uitbreiding bestaat — evenementen, lidmaatschappen, webshop. - Je wilt geen maandelijkse platformkosten en accepteert hostingkosten plus onderhoud. - Je hebt een bureau of ontwikkelaar die updates, back-ups en beveiliging bezit. - Je wilt de vrijheid om later van leverancier te wisselen zonder de site te herbouwen. - Vermijd het wanneer: niemand het onderhoud gaat doen. Dat is de enige veelvoorkomende manier waarop deze keuze faalt. - Houd het aantal plug-ins laag; dat is de belangrijkste factor voor hoe zwaar het onderhoud wordt. ### Wie Webflow moet kiezen Webflow past wanneer ontwerp de drijvende kracht is en niemand technisch onderhoud wil bezitten. - Een ontwerper bouwt en onderhoudt de site zonder ontwikkelaar. - Het ontwerp is bijzonder en een thema aanpassen zou meer werk zijn dan opnieuw opbouwen. - Je wilt geen updates, back-ups of beveiliging beheren — dat is inbegrepen. - Je site is grotendeels marketing: pagina's, casestudy's, een blog, formulieren. - Vermijd het wanneer: je maatwerkfunctionaliteit aan de serverzijde nodig hebt, of complexe koppelingen. - Houd rekening met het uittreden: geëxporteerde code bevat je inhoudsbeheer niet, dus vertrekken betekent grotendeels herbouwen. - Reken de maandkosten over drie jaar door en vergelijk met hosting plus onderhoud elders. Het uittredepad is de belangrijkste afweging en degene die het minst wordt besproken. Weeg dat expliciet in plaats van erachter te komen wanneer je wilt vertrekken. ### Wie maatwerk moet kiezen Maatwerk is de juiste keuze in minder gevallen dan het wordt aangeboden, maar in die gevallen is het duidelijk juist. | De site ís het product | Ja | | Ongebruikelijk inhoudsmodel dat geen CMS netjes aankan | Ja | | Diepe koppeling met interne systemen | Ja | | Strenge prestatie- of beveiligingseisen | Ja | | Marketingsite met een blog | Nee — je betaalt voor niets | | Geen doorlopende technische capaciteit | Nee — maatwerk zonder onderhoud verweest | | Beperkt budget en korte doorlooptijd | Nee | Vraag bij een maatwerkvoorstel altijd welk concreet probleem een bestaand CMS niet zou oplossen. Is er geen duidelijk antwoord, dan koop je complexiteit. Q: Is WordPress nog steeds een goede keuze? A: Ja, voor het merendeel van de bedrijfssites. De kritiek gaat vrijwel altijd over slecht onderhouden installaties met te veel plug-ins, niet over het platform zelf. Een WordPress-site met een maatwerkthema, weinig plug-ins en echt onderhoud is snel, veilig en prettig om mee te werken. Q: Is Webflow duurder dan WordPress? A: Maandelijks meestal wel; over de totale periode is het minder eenduidig. Bij WordPress betaal je hosting plus onderhoud, en dat onderhoud is echt werk dat iemand doet. Reken beide over drie jaar door met de werkelijke onderhoudsuren erbij, in plaats van alleen de abonnementsprijs te vergelijken. Q: Wanneer is maatwerk werkelijk de moeite waard? A: Wanneer een bestaand CMS je concrete probleem niet oplost: een ongebruikelijk inhoudsmodel, diepe koppelingen met interne systemen, of eisen aan prestaties en beveiliging die verder gaan dan wat een gedeeld platform biedt. Voor een marketingsite met een blog betaal je bij maatwerk voor vrijheid die je niet gebruikt. Q: Kan ik later van platform wisselen? A: Vanuit WordPress relatief goed — de inhoud is exporteerbaar en het datamodel is bekend. Vanuit Webflow moeizamer, omdat de export de site als code geeft maar niet het beheer erachter; vertrekken betekent grotendeels herbouwen. Bij maatwerk hangt het volledig af van hoe schoon het gebouwd is. Vraag naar het uittredepad vóór je begint, niet erna. ## Core Web Vitals: wat de cijfers werkelijk beweegt https://websitedevelopment.biz/nl/guides/core-web-vitals-voor-ontwikkelaars Bijgewerkt op 2026-08-07 · SEO Core Web Vitals zijn drie veldmetingen van hoe een pagina aanvoelt: hoelang het duurt voor de hoofdcontent verschijnt, hoeveel die verschuift tijdens het laden, en hoe snel de pagina op invoer reageert. Ze zijn een rankingsignaal en, belangrijker, ze hangen samen met of mensen blijven. Deze gids behandelt wat elke meetwaarde meet, de specifieke oorzaken achter slechte scores, en de oplossingen die velddata bewegen in plaats van alleen labscores. ### Wat de drie meetwaarden meten Elk heeft een drempel voor «goed» en een klein aantal gebruikelijke oorzaken. Merk op dat het cijfer dat voor ranking telt velddata van echte bezoekers is, niet een labscore vanaf jouw laptop. | LCP | Onder 2,5 s | Tijd tot het grootste zichtbare element getekend is | Niet-geoptimaliseerde koptafbeelding, trage server, renderblokkerende CSS | | CLS | Onder 0,1 | Hoeveel de opmaak tijdens het laden verschuift | Afbeeldingen zonder afmetingen, ingevoegde banners, laat geladen webfonts | | INP | Onder 200 ms | Reactiesnelheid op gebruikersinteractie | Lange JavaScript-taken die de hoofdthread blokkeren | Labhulpmiddelen meten één laadbeurt op één machine. Velddata is het 75e percentiel van echte bezoeken, inclusief oude telefoons op slechte netwerken — juist de bezoekers die het snelst vertrekken. ### LCP oplossen LCP is vrijwel altijd een afbeelding of een kop die achter iets anders is geblokkeerd. Werk deze punten op volgorde af; de eerste twee lossen de meeste sites op. - Bepaal het werkelijke LCP-element in de velddata. De verkeerde afbeelding optimaliseren is de meest voorkomende verspilde moeite. - Laad de LCP-afbeelding nooit uitgesteld. Geef haar in plaats daarvan fetchpriority="high". - Serveer haar in een modern formaat op de grootte waarop ze wordt getoond, met srcset voor kleinere schermen. - Laad het lettertype van de LCP-tekst vooraf en gebruik font-display: swap zodat tekst niet onzichtbaar is tijdens het wachten. - Haal renderblokkerende CSS en JavaScript uit de head; zet de kritieke CSS inline als de pagina klein genoeg is. - Verlaag de Time to First Byte met caching en een CDN — geen front-endwerk compenseert een trage server. - Snoei in scripts van derden op het kritieke pad. Elk daarvan is een DNS-opzoeking, een verbinding en een onvoorspelbaar bestand. ### CLS oplossen Verschuivende opmaak is vrijwel volledig te voorkomen en de oplossingen zijn goedkoop. Het is ook de meetwaarde die bezoekers het sterkst voelen — het is wat mensen op het verkeerde ding laat tikken. - Stel width- en height-attributen in op elke afbeelding en video zodat de browser ruimte reserveert. - Reserveer ruimte voor advertenties, insluitingen en iframes met een container met vaste beeldverhouding. - Voeg na het laden nooit content boven bestaande content in — cookiebanners horen onderaan of als overlay. - Stem de maten van het terugvallettertype af op het webfont, of gebruik size-adjust, zodat de wissel de pagina niet herschikt. - Vermijd het animeren van opmaakeigenschappen. Animeer transform en opacity, die geen herberekening veroorzaken. - Geef dynamisch geladen secties een min-height zodat ze niet vanaf nul uitklappen. ### INP oplossen INP verving First Input Delay en is lastiger, omdat het elke interactie tijdens het bezoek meet in plaats van alleen de eerste. Slechte INP is vrijwel altijd te veel JavaScript op de hoofdthread. | Grote bundel die bij het laden wordt verwerkt | Code opsplitsen; alleen laden wat de pagina nodig heeft | | Lange taken boven 50 ms | Werk opdelen en de hoofdthread teruggeven | | Kostbare eventhandlers | Debouncen, en zwaar werk van het interactiepad halen | | Zware tags van derden | Na interactie laden, of verwijderen — controleer wat elk oplevert | | Grote DOM (meer dan 10.000 knopen) | Lange lijsten virtualiseren; diep geneste opmaak vereenvoudigen | | Opmaakgeworstel in handlers | Lees- en schrijfacties bundelen in plaats van afwisselen | Op contentsites is de waardevolste INP-ingreep meestal JavaScript verwijderen in plaats van optimaliseren. Vraag wat elk script oplevert; tagbeheerders stapelen scripts op waarvan niemand zich herinnert ze te hebben toegevoegd. Q: Hoeveel effect hebben Core Web Vitals op ranking? A: Ze zijn een echt maar bescheiden signaal, en werken meer als scheidsrechter bij gelijke stand dan als vervanging voor relevantie. Een snelle pagina over het verkeerde onderwerp verslaat geen tragere pagina die de vraag beantwoordt. Het sterkere argument om ze op te lossen is gedrag: trage, verspringende pagina's verliezen bezoekers voordat ranking überhaupt meespeelt. Q: Waarom is mijn Lighthouse-score goed en mijn velddata slecht? A: Omdat Lighthouse één laadbeurt op jouw machine met jouw verbinding simuleert, en velddata het 75e percentiel van echte bezoeken is — inclusief drie jaar oude telefoons op overbelaste mobiele netwerken. Spreken de twee elkaar tegen, dan telt de velddata. Gebruik labhulpmiddelen om te diagnosticeren, niet om te scoren. Q: Moet ik alle drie de meetwaarden oplossen? A: Los degene op die falen, in de volgorde van wat je bezoekers ervaren. CLS is meestal het goedkoopst op te lossen en voor gebruikers het irritantst, dus dat is een goed startpunt. LCP heeft het grootste effect op of mensen wachten. INP telt het meest op interactieve sites en het minst bij statische artikelen. Q: Hoelang duurt het voor verbeteringen zichtbaar worden? A: Velddata is een voortschrijdend venster van 28 dagen, dus betekenisvolle beweging duurt ongeveer vier weken nadat een oplossing alle bezoekers heeft bereikt. Beoordeel een wijziging niet na drie dagen. Controleer wel meteen de labwaarden om te bevestigen dat de oplossing deed wat je verwachtte. ## Headless CMS versus traditioneel CMS: de eerlijke vergelijking https://websitedevelopment.biz/nl/guides/headless-cms-versus-traditioneel-cms Bijgewerkt op 2026-08-07 · CMS Een traditioneel CMS bewaart je inhoud en rendert je pagina's. Een headless CMS bewaart je inhoud en levert die via een API, waarna jij zelf bepaalt hoe hij wordt weergegeven. Dat is het hele verschil, en alle afwegingen volgen eruit. Deze gids behandelt wat je met headless werkelijk wint, wat het kost, en wanneer die ruil gunstig uitpakt. ### Wat er feitelijk verandert Het verschil is architectonisch, niet een kwestie van functies. Beide bewerken inhoud; ze verschillen in wie de weergave bouwt. | Weergave | Het CMS rendert de pagina's | Jij bouwt de front-end | | Voorbeeld bekijken | Ingebouwd en accuraat | Je bouwt het zelf, of het is benaderend | | Ontwerpvrijheid | Binnen het sjabloonsysteem | Volledig | | Meerdere kanalen | Lastig — de site is de uitvoer | Kern van het ontwerp | | Startsnelheid | Snel — thema's bestaan | Trager — je bouwt alles | | Benodigde expertise | Gemiddeld | Front-endontwikkeling vereist | | Onderhoud | Eén systeem | Twee systemen, twee uitrolpaden | ### Wat headless werkelijk oplevert De voordelen zijn echt, maar ze gelden voor specifieke situaties in plaats van in het algemeen. - Meerdere kanalen uit één bron: website, app, kiosk, nieuwsbrief — dezelfde inhoud, verschillende weergaven. - Volledige ontwerp- en prestatievrijheid: geen thema-erfenis, geen ongebruikte CSS van een sjabloon. - Statisch genereren: pagina's vooraf bouwen en als bestanden serveren, wat zeer snel en zeer veilig is. - Front-end vervangen zonder migratie: de inhoud blijft waar hij is. - Schoner inhoudsmodel: velden in plaats van pagina's met ingebedde opmaak. - Kleiner aanvalsoppervlak: het beheerpaneel staat niet op hetzelfde openbare adres als de site. Merk op dat het merendeel van deze voordelen alleen telt als je meerdere kanalen hebt of een prestatie- of ontwerpbeperking die een thema niet aankan. ### Wat het kost Deze kosten worden in vergelijkingen consequent onderschat, en ze verklaren waarom headlessprojecten vaker vastlopen. | Twee systemen | Twee codebases, twee uitrolpaden, twee foutbronnen | | Voorbeeld bekijken | Redacteuren verwachten het; je moet het bouwen | | Alles is maatwerk | Formulieren, zoeken, paginering, omleidingen — allemaal zelf | | Doorlopende ontwikkelaarsbehoefte | Er is geen thema om te installeren wanneer iets moet wijzigen | | Redacteursvriendelijkheid | Velden zonder context zijn abstracter dan een pagina bewerken | | SEO-onderdelen | Sitemap, canonieke URL's, hreflang — jouw verantwoordelijkheid | | Hogere instapkosten | Merkbaar duurder om te starten dan een gethemede site | «Alles is maatwerk» is de post die het meest verrast. Functionaliteit die een traditioneel CMS gratis meelevert wordt bij headless een reeks kleine bouwtaken. ### Wie moet headless kiezen Een korte beslisregel die de meeste verkeerde keuzes voorkomt. - Publiceer je naar meer dan één kanaal? Zo ja, is headless waarschijnlijk juist. - Heb je een vast front-endteam of bureau? Zonder dat is de doorlopende behoefte een probleem. - Kan een thema je ontwerp aan? Kan het dat, dan koop je vrijheid die je niet gebruikt. - Heb je een prestatie-eis die caching op een traditioneel CMS niet haalt? Meestal niet. - Verwacht je de front-end binnen enkele jaren te vervangen? Dan is de scheiding waardevol. - Zijn je redacteuren comfortabel met gestructureerde velden zonder visuele pagina? Test dat, raad het niet. - Twijfel je bij meer dan twee van deze vragen, kies dan traditioneel — het is de terugvalkeuze om een reden. Q: Is headless beter voor SEO? A: Niet inherent, en het kan slechter zijn als je het onzorgvuldig bouwt. Statisch gegenereerde pagina's zijn uitstekend voor SEO; alleen in de browser gerenderde pagina's zijn dat niet. Bovendien moet je sitemap, canonieke URL's, hreflang en omleidingen zelf bouwen, terwijl een traditioneel CMS die meelevert. De architectuur bepaalt het niet — de uitvoering wel. Q: Kan ik van traditioneel naar headless overstappen? A: Ja, en het is een van de gunstiger migraties omdat de inhoud gestructureerd blijft. Sommige traditionele CMS'en, waaronder WordPress, kunnen als headless bron dienen via hun API. Dat geeft je een tussenweg: bekende bewerking voor de redactie, eigen front-end voor de weergave. Q: Is headless duurder? A: Om te starten vrijwel altijd, omdat je bouwt wat een thema meelevert. Over meerdere jaren hangt het ervan af: heb je meerdere kanalen of vervang je de front-end regelmatig, dan kan het goedkoper uitpakken. Voor één website die vijf jaar meegaat is traditioneel meestal goedkoper in totaal. Q: Vinden redacteuren headless prettig? A: Dat hangt volledig af van hoe goed je het inhoudsmodel en het voorbeeld hebt gebouwd. Velden zonder context zijn abstracter dan een pagina bewerken die eruitziet als de pagina. Bouw je een goed voorbeeld en logische veldgroepen, dan werkt het prima. Sla je dat over, dan is dit de meest voorkomende bron van ontevredenheid. ## Checklist technische SEO voor webontwikkelaars https://websitedevelopment.biz/nl/guides/checklist-technische-seo Bijgewerkt op 2026-08-07 · SEO Technische SEO is het deel van het zoekwerk dat in de codebase leeft in plaats van in een contentkalender. Het is grotendeels een checklist, en het meeste ervan is controleerbaar in plaats van een kwestie van mening. Deze gids ís die checklist, gegroepeerd naar het probleem dat elk punt voorkomt, met de fouten die vaak genoeg voorkomen om te benoemen. ### Indexeringsbeheer Het doel hier is dat precies de pagina's die je geïndexeerd wilt hebben geïndexeerd zijn, en verder niets — geen testkopieën, geen filterpermutaties, geen printvriendelijke dubbelingen. - Eén canonieke hostnaam; elke andere variant leidt er met een 301 naartoe — inclusief HTTP en de www/niet-www-tweeling. - Zelfverwijzende canonieke URL op elke indexeerbare pagina. - noindex, follow op dunne of dubbele pagina's: interne zoekresultaten, filtercombinaties, bedankpagina's. - Blokkeer in robots.txt nooit een pagina die een noindex draagt — de tag kan dan nooit gelezen worden, dus de URL blijft in de index hangen. - Testomgeving afgeschermd met HTTP-authenticatie, niet alleen met robots.txt. - Parameterbeleid vastgelegd: welke querystrings een aparte pagina maken en welke niet. noindex en een robots.txt-blokkade doen tegengestelde dingen en heffen elkaar op. Wil je een pagina weg hebben, sta crawlen dan toe zodat de noindex gezien kan worden. ### Omleidingen en statuscodes Omleidingen zijn waar herlanceringen stilletjes verkeer verliezen. De fouten zijn mechanisch en makkelijk vóór de lancering te testen. | Pagina permanent verplaatst | 301 naar de gelijkwaardige pagina | 302, of omleiden naar de homepage | | Pagina verwijderd, geen equivalent | 410 of 404 | Zachte 404: een «niet gevonden»-pagina die 200 teruggeeft | | Tijdelijk niet beschikbaar | 503 met Retry-After | 200 teruggeven met een foutmelding | | Varianten met en zonder afsluitende schuine streep | Eén canonieke vorm, de andere via 301 | Beide serveren dezelfde content met 200 | | Oud domein | 301 pagina voor pagina in kaart gebracht | Alles naar de nieuwe homepage | | Omleidingsketens | Terugbrengen tot één sprong | A → B → C → D, met signaalverlies bij elke stap | ### Paginering, facetten en dubbeling Overzichtspagina's veroorzaken de grootste indexproblemen, omdat een handvol filters duizenden URL-combinaties kan opleveren die er allemaal als bijna-dubbelingen uitzien. - Gepagineerde pagina's: echte crawlbare links, elke pagina zelfverwijzend canoniek — maak pagina 2 niet canoniek naar pagina 1. - Filtercombinaties: standaard noindex, follow; indexeer alleen het kleine aantal dat aansluit op echte zoekvraag. - Sorteervolgordes: maak nooit een nieuwe indexeerbare URL. Dezelfde content, andere volgorde. - Sessiekenmerken en trackingparameters: strip ze, of maak ze canoniek naar de schone URL. - Printvriendelijke en AMP-achtige dubbelingen: canoniek naar de hoofdversie. - Producten in meerdere categorieën: één canonieke URL, gelinkt vanuit alle categorieën. Openstaande facetnavigatie is de meest voorkomende oorzaak van indexvervuiling, en die ruimt langzaam op. Het is veel goedkoper haar tijdens de bouw te voorkomen dan haar achteraf terug te draaien. ### Gestructureerde data en internationale inrichting Twee gebieden waar één mechanische fout de hele functie stilletjes uitschakelt. | Article-markup | Alleen op echte artikelen, met echte datums | Verzonnen actualiteitsdatums zorgen dat de functie genegeerd wordt | | Product-markup | Prijs en beschikbaarheid moeten overeenkomen met de pagina | Afwijking leidt tot een handmatige maatregel | | FAQ-markup | Alleen voor vragen die zichtbaar op de pagina staan | Verborgen content is een schending van de richtlijnen | | Kruimelpad | Moet overeenkomen met het zichtbare pad | Afwijkende paden worden simpelweg genegeerd | | hreflang | Wederkerig op elke pagina in de set | Eenrichtingstags zorgen dat de hele groep vervalt | | hreflang-codes | Dezelfde code in de HTML en in de sitemap | Twee verschillende codes voor dezelfde pagina breken de groep | | x-default | Wijst naar de taalkiezer of de standaardversie | Ontbreekt hij, dan verlies je het terugvalgedrag | Q: Hoe vind ik technische SEO-problemen op een bestaande site? A: Crawl hem met een desktopcrawler en vergelijk het resultaat met je sitemap en met de dekking in Search Console. Waar de drie lijsten van elkaar verschillen zitten de problemen: URL's in de crawl maar niet in de sitemap, URL's geïndexeerd maar niet in de crawl, en pagina's uitgesloten om redenen die je niet bedoelde. Q: Doen omleidingsketens er werkelijk toe? A: Ja, om twee redenen. Elke sprong voegt vertraging toe voor echte gebruikers, en crawlers stoppen na een paar sprongen met volgen. Na een paar migraties vind je vaak ketens van vier of vijf niveaus diep die niemand had gepland. Breng ze terug zodat elke oude URL in één sprong direct naar de uiteindelijke bestemming wijst. Q: Moet ik tag- en categoriepagina's op noindex zetten? A: Alleen als ze werkelijk dun zijn. Een categoriepagina met een echte beschrijving, een samengestelde lijst en interne links is een legitieme en vaak sterke landingspagina. Een tagpagina met twee berichten en geen tekst is indexvervuiling. Beoordeel elk sjabloon op de vraag of het antwoord geeft op iets dat mensen werkelijk zoeken. Q: Wat breekt hreflang het vaakst? A: Niet-wederkerige tags. Als de Engelse pagina de Nederlandse variant vermeldt maar de Nederlandse pagina de Engelse niet, vervalt de hele groep. De op één na meest voorkomende fout is één code in de HTML en een andere in de sitemap voor dezelfde pagina. Genereer beide uit dezelfde bron zodat ze niet uiteen kunnen lopen. ## Wat is een CMS en heb je er een nodig? https://websitedevelopment.biz/nl/guides/wat-is-een-cms Bijgewerkt op 2026-08-07 · CMS Een contentmanagementsysteem is software waarmee mensen zonder codekennis de inhoud van een website kunnen wijzigen. Dat is de hele definitie, en de rest is uitwerking. Deze gids behandelt wat een CMS werkelijk voor je doet, de soorten die bestaan, en de vraag die vaker overgeslagen wordt dan gesteld: heb je er eigenlijk wel een nodig? ### Wat een CMS werkelijk doet Onder de bewerkinterface lost een CMS een klein aantal concrete problemen op. Het is nuttig ze te benoemen, want daaraan kun je zien of je ze hebt. - Bewerken zonder code: tekst, afbeeldingen en pagina's wijzigen via een browser. - Structuur: inhoud opslaan als velden in plaats van als opmaak, zodat ze herbruikbaar is. - Rechten: wie mag schrijven, wie mag publiceren, wie mag instellingen wijzigen. - Werkstroom: concepten, planning, revisies en terugdraaien naar een eerdere versie. - Media: uploaden, formaten genereren, en een bibliotheek om ze terug te vinden. - Sjablonen: één sjabloon dat honderd pagina's rendert, zodat inhoud en ontwerp gescheiden blijven. - Meertaligheid: dezelfde inhoud in meerdere talen, gekoppeld en beheersbaar. Herken je in deze lijst geen probleem dat je hebt, dan heb je waarschijnlijk geen CMS nodig — en de meeste kleine sites hebben dat werkelijk niet. ### De soorten CMS De categorieën verschillen in wie de front-end bouwt en waar de inhoud vandaan wordt geserveerd. | Traditioneel | CMS bewaart inhoud en rendert de pagina's | De meeste bedrijfssites en blogs | | Headless | CMS levert inhoud via een API; jij bouwt de front-end | Meerdere kanalen, of een eigen applicatie | | Websitebouwer | Visueel bewerken, gehost platform | Kleine sites zonder technisch team | | Op bestanden gebaseerd | Inhoud in tekstbestanden in versiebeheer | Documentatie en technische teams | | Maatwerk | Precies de velden die dit project nodig heeft | Ongebruikelijke inhoudsmodellen | | Geen CMS | Statische pagina's, wijzigingen via de ontwikkelaar | Kleine sites die zelden wijzigen | ### Wanneer je er werkelijk een nodig hebt De vraag is niet of een CMS nuttig is — dat is hij — maar of het gemak de complexiteit die je overneemt rechtvaardigt. | Wekelijks publiceren | Ja, duidelijk | | Meerdere redacteuren | Ja — rechten en werkstroom zijn de kern | | Maandelijkse tekstwijziging | Nee — een ontwikkelaar is goedkoper dan het onderhoud | | Vijf pagina's die nooit wijzigen | Nee | | Producten die dagelijks veranderen | Ja | | Meertalige site die groeit | Ja — handmatig beheer loopt snel vast | | Landingspagina's voor campagnes | Ja, als marketing ze zelf moet kunnen maken | Een CMS dat je niet nodig hebt is niet gratis: het is software die bijgewerkt, beveiligd en geback-upt moet worden. Dat is de werkelijke kostprijs van «voor de zekerheid». ### Wat je bij de keuze werkelijk moet controleren Functielijsten van CMS'en lijken sterk op elkaar. Dit zijn de dingen die na een jaar het verschil maken. - Laat de persoon die er dagelijks in gaat werken een pagina maken tijdens de evaluatie. Zijn reactie voorspelt meer dan elke functielijst. - Controleer of je inhoudsmodel past: velden, herhaalbare blokken, relaties tussen inhoudstypen. - Controleer de meertalige werking als je die nodig hebt — dit is waar CMS'en het sterkst verschillen. - Controleer de SEO-controle: bewerkbare titels, beschrijvingen, canonieke URL's, omleidingen. - Controleer wie het onderhoudt en wat dat kost, per maand, in uren of euro's. - Controleer het uittredepad: kun je alle inhoud in een bruikbaar formaat exporteren? - Controleer of het schaalt naar het aantal pagina's dat je over drie jaar verwacht. Q: Is WordPress een CMS? A: Ja, en het is het meest gebruikte traditionele CMS. Het bewaart de inhoud, rendert de pagina's en biedt bewerking, rechten en media. De kritiek erop gaat meestal niet over of het een CMS is maar over het onderhoud van plug-ins en de beveiligingsdiscipline die het vraagt. Q: Kan ik een website zonder CMS hebben? A: Zeker, en voor een site die zelden wijzigt is dat vaak de betere keuze. Statische pagina's zijn sneller, veiliger en hebben vrijwel geen onderhoud. De afweging is dat elke tekstwijziging via iemand met toegang tot de bestanden loopt. Wijzig je maandelijks één zin, dan is dat goedkoper dan een CMS onderhouden. Q: Wat is het verschil tussen een CMS en een websitebouwer? A: Een websitebouwer is een gehost platform dat bewerking, hosting en sjablonen als één product levert, waarbij je binnen hun grenzen blijft. Een CMS is software die inhoud beheert en die je zelf kunt hosten en aanpassen. Bouwers zijn eenvoudiger te starten; CMS'en zijn verder te brengen en makkelijker te verlaten. Q: Vertraagt een CMS mijn site? A: Dat kan, want er komt bij elke aanvraag werk aan te pas: database opvragen, sjabloon renderen, plug-ins uitvoeren. Met caching wordt dat verschil klein genoeg om er niet om te kiezen. Wat een site werkelijk traag maakt is meestal niet het CMS maar wat erin geladen wordt — te grote afbeeldingen en te veel scripts. ## SEO-basis in webontwikkeling: wat je inbouwt https://websitedevelopment.biz/nl/guides/seo-basis-webontwikkeling Bijgewerkt op 2026-08-07 · SEO Een groot deel van SEO is helemaal geen marketing — het zijn beslissingen die tijdens de webontwikkeling worden genomen en die tijdens de bouw goedkoop zijn en later duur. URL-structuur, renderstrategie, interne links en bewerkbare metadata vallen allemaal in die categorie. Deze gids behandelt wat je vanaf het begin inbouwt, ruwweg op volgorde van hoe pijnlijk het is om het achteraf toe te voegen. ### Zorg dat de site gecrawld en geïndexeerd kan worden Al het andere is irrelevant als zoekmachines je pagina's niet kunnen bereiken of lezen. Hier stapelen zich ook de fouten op de lanceerdag op. - De robots.txt op productie staat crawlen toe. De kopie van de testomgeving mag er niet mee uitgerold worden. - Geen verdwaalde noindex-metatags meegenomen uit de testomgeving. - Elke pagina heeft een zelfverwijzende canonieke URL, en er is één canonieke hostnaam. - De content staat in de HTML of wordt op de server gerenderd. Verschijnt ze pas nadat JavaScript is uitgevoerd, dan wordt indexering trager en minder betrouwbaar. - Een XML-sitemap met alleen indexeerbare, canonieke URL's — geen gefilterde of gepagineerde varianten. - Elke indexeerbare pagina heeft minstens één interne link. Verweesde pagina's worden nauwelijks gecrawld. - Consistente statuscodes: 200 voor echte pagina's, 404 voor ontbrekende, 301 voor verplaatste. De meest voorkomende lanceerfout in deze lijst is de robots.txt van de testomgeving die op productie belandt. Controleer hem op de lanceerdag van buiten je eigen netwerk. ### Structuur die zoekmachines kunnen lezen Structurele beslissingen zijn degene die later pijnlijk te wijzigen zijn, omdat wijzigen omleidingen betekent en het verlies van opgebouwde signalen. | URL-patroon | Kort, kleine letters, koppeltekens, stabiel | Hoog — omleidingen en verloren signalen | | Koppenhiërarchie | Eén H1, geen overgeslagen niveaus | Laag | | Interne links | Hubs die naar detailpagina's linken en terug | Gemiddeld | | Paginering | Crawlbare links, niet alleen JavaScript | Gemiddeld | | Facetnavigatie | noindex op filtercombinaties | Hoog — indexvervuiling ruimt langzaam op | | Taalversies | URL's met voorvoegsel plus wederkerige hreflang | Zeer hoog | ### Metadata die je team werkelijk kan bewerken Een veelvoorkomende bouwfout is titels en beschrijvingen uit een sjabloon genereren zonder mogelijkheid ze te overschrijven. Zes maanden later moet marketing de titel van één pagina wijzigen en luidt het antwoord: een ontwikkelticket. - Bewerkbare titeltag per pagina, met een zinnige gegenereerde standaardwaarde. - Bewerkbare metabeschrijving, met een zichtbare tekentelling in het CMS. - Bewerkbare Open Graph-titel, -beschrijving en -afbeelding voor gedeelde links. - Gestructureerde data op de sjablonen die het ondersteunen: Article, Product, FAQ, Breadcrumb, Organization. - Een noindex-schakelaar per pagina voor pagina's die moeten bestaan maar niet moeten scoren. - Automatische canonieke URL, met handmatige overschrijving voor het zeldzame geval dat er een nodig is. Markeer alleen wat werkelijk zichtbaar is op de pagina. Gestructureerde data die content beschrijft die een bezoeker niet kan zien is een schending van de richtlijnen, geen sluiproute. ### Snelheid en stabiliteit als bouweisen Pagina-ervaring hoort bij de bouw, niet bij een optimalisatieproject achteraf. Snelheid achteraf op een afgeronde site aanbrengen betekent meestal beslissingen terugdraaien in plaats van code toevoegen. | Largest Contentful Paint | Onder 2,5 s | De koptafbeelding voorrang geven, renderblokkerende bestanden vermijden | | Cumulative Layout Shift | Onder 0,1 | width en height op afbeeldingen, gereserveerde ruimte voor insluitingen | | Interaction to Next Paint | Onder 200 ms | Minder JavaScript, en de hoofdthread niet blokkeren | | Paginagewicht | Zo laag als het ontwerp toelaat | Moderne beeldformaten, geen ongebruikte bibliotheken | | Time to First Byte | Onder 800 ms | Caching, een CDN, en verstandige databasequery's | Q: Hoort SEO in de ontwikkelopdracht? A: De technische delen wel — crawlbaarheid, URL-structuur, bewerkbare metadata, gestructureerde data, snelheidsdoelen en de omleidingslijst. Contentstrategie en linkbuilding zijn apart werk met een ander profiel. De technische eisen in de opdracht zetten betekent dat ze worden geoffreerd in plaats van na de lancering ontdekt, wanneer ze een veelvoud kosten. Q: Schaadt een JavaScript-framework de SEO? A: Dat kan, als pagina's alleen in de browser worden gerenderd. Zoekmachines voeren JavaScript uit maar met vertraging en niet altijd volledig, dus alleen renderen aan de clientzijde maakt indexering trager en minder betrouwbaar. Serverside renderen of statisch genereren neemt het probleem weg. Voor een contentsite is het eenvoudigste antwoord meestal: zet de content in de HTML. Q: Hoelang na de lancering zie ik zoekverkeer? A: Bij een gloednieuw domein doorgaans weken tot indexering en maanden tot betekenisvolle posities — nieuwe sites scoren niet snel, hoe goed de techniek ook is. Bij een herlancering van een bestaande site met schone omleidingen kun je twee tot zes weken schommeling verwachten voordat het zich rond het vorige niveau zet. Q: Heb ik een SEO-plug-in nodig? A: Op een CMS is een plug-in een handige manier om redacteuren zeggenschap te geven over titels, beschrijvingen, canonieke URL's en sitemaps. Het is geen strategie, en de standaarduitvoer vervangt niet iemand die bepaalt waar elke pagina over moet gaan. Bij maatwerk wordt dezelfde functionaliteit meestal rechtstreeks geschreven en is ze daardoor lichter. ## Heb je een ontwerpsysteem nodig voor je website? https://websitedevelopment.biz/nl/guides/ontwerpsysteem-voor-websites Bijgewerkt op 2026-08-07 · Webdesign Een ontwerpsysteem is een set herbruikbare componenten plus de regels om ze te gebruiken. Op een grote site waar meerdere mensen wijzigingen doen neemt het enorm veel dubbel beslissingswerk weg. Op een brochuresite van vijf pagina's is het een kostenpost zonder rendement. Deze gids behandelt waar de grens ligt, wat een minimaal bruikbaar systeem werkelijk bevat, en wat je in plaats daarvan doet als een volledig systeem niet te rechtvaardigen is. ### Wanneer het loont en wanneer niet De waarde komt uit herhaling: dezelfde beslissing één keer genomen in plaats van veertig keer, en consistent. Is de herhaling er niet, dan is de waarde er ook niet. | Brochuresite van vijf pagina's, één ontwerper, zelden wijzigingen | Nee — een stijlgidspagina volstaat | | Eén site, meerdere sjablonen, af en toe contentwijzigingen | Licht: tokens en een componentenblad | | Site plus app die een merk delen | Ja — het gedeelde vlak is waar afwijking ontstaat | | Meerdere sites binnen één organisatie | Ja — dit is het sterkste geval | | Veel A/B-tests en campagnepagina's | Ja — snelheid van samenstellen is de opbrengst | | Herbouw gepland binnen een jaar | Nog niet — bouw het systeem samen met de herbouw | ### Het minimaal bruikbare systeem Het merendeel van het voordeel komt uit een kleine kern. Die bouw je in dagen, niet maanden, en ze volstaat voor de meeste sites die er überhaupt een nodig hebben. - Tokens: kleur, typografische schaal, witruimteschaal, hoekradii, schaduwen, breekpunten — benoemd, geen vaste getallen. - Typografie: kopniveaus en tekststijlen met hun responsieve gedrag. - Knoppen en links: elke toestand — normaal, hover, focus, actief, uitgeschakeld, ladend. - Formulierelementen: invoerveld, keuzelijst, tekstvak, aankruisvakje, keuzerondje, plus fout- en hintstijlen. - Kaarten en lijsten: de twee of drie terugkerende contentcontainers die je site werkelijk gebruikt. - Navigatie: koptekst, voettekst, kruimelpad, paginering. - Terugkoppeling: lege toestand, foutmelding, laadtoestand, succesmelding. Toestanden zijn het deel dat wordt overgeslagen en het deel dat er het meest toe doet. Een component die alleen in de normale toestand is gedefinieerd schuift elk randgeval terug naar wie hem implementeert. ### De onderhoudskosten die niemand begroot Een ontwerpsysteem is een product met gebruikers en heeft een eigenaar nodig. Zonder eigenaar dwaalt het af: de site krijgt componenten die het systeem niet heeft, het systeem houdt componenten die niemand gebruikt, en na een jaar werken mensen eromheen in plaats van ermee. - Iemand is eigenaar en beslist wat erin komt. Een systeem in handen van een commissie stopt met veranderen. - Een gedocumenteerde route om een nieuwe component voor te stellen, zodat mensen het uitbreiden in plaats van omzeilen. - Versiebeheer, zodat een wijziging niet stilletjes elke pagina in één keer verandert. - Een periodieke controle van wat er op de live site staat maar niet in het systeem — dat gat is de gezondheidsmaat. - Verwijderen. Ongebruikte componenten zijn kosten, geen waarde. ### Lichtere alternatieven Ontbreekt de grond voor een volledig systeem, dan zijn er goedkopere stappen die veel van het consistentievoordeel opleveren. | CSS custom properties voor kleur, typografie en witruimte | Uren | Elke site — dit is de ondergrens | | Eén levende stijlgidspagina in de site zelf | Een dag | Kleine sites met incidentele bijdragers | | Componentenbibliotheek in het CMS of de sjabloonlaag | Dagen | Contentteams die pagina's samenstellen | | Gevestigd CSS-framework, licht in eigen stijl | Dagen | Interne hulpmiddelen en beheerschermen | | Volledig gedocumenteerd ontwerpsysteem | Weken tot maanden | Meerdere producten of meerdere teams | Een levende stijlgidspagina binnen de echte site verslaat een document: ze gebruikt dezelfde CSS en kan dus niet van de werkelijkheid afwijken zonder zichtbaar te breken. Q: Kan ik een kant-en-klaar ontwerpsysteem gebruiken? A: Ja, en voor interne hulpmiddelen is dat meestal de juiste keuze — de merkuitstraling telt weinig en je krijgt meteen toegankelijke, geteste componenten. Voor een publieke marketingsite is de afweging dat je site lijkt op elke andere site met hetzelfde systeem, dus de meeste organisaties passen hem zwaar aan, waarmee een deel van de onderhoudsbesparing verdwijnt. Q: Wie hoort eigenaar te zijn van het ontwerpsysteem? A: Eén bij naam genoemde persoon, met inbreng van ontwerp en ontwikkeling. Gedeeld eigenaarschap tussen ontwerp en techniek klinkt samenwerkend en betekent in de praktijk dat niemand beslist, waardoor het systeem stopt met evolueren en mensen eromheen gaan werken. De eigenaar hoeft niet alles te bouwen; hij moet ja en nee zeggen. Q: Wat is het verschil tussen een stijlgids en een ontwerpsysteem? A: Een stijlgids legt het uiterlijk vast: kleuren, lettertypen, logogebruik. Een ontwerpsysteem bevat dat plus werkende componenten, hun toestanden, de regels om ze te combineren, en meestal de code. Een stijlgids vertelt hoe dingen eruitzien; een ontwerpsysteem geeft je de onderdelen en vertelt wanneer je welk onderdeel gebruikt. Q: Hoe voorkom ik dat het veroudert? A: Maak het de weg van de minste weerstand en controleer het gat. Is het systeem gebruiken trager dan eenmalige CSS schrijven, dan schrijven mensen eenmalige CSS. Zet periodiek op een rij welke componenten wel op de live site staan en niet in het systeem: een groeiende lijst betekent dat het systeem niet dient wie de pagina's bouwt, en dat is een ontwerpprobleem van het systeem zelf. ## Webtoegankelijkheid: wat je eerst oplost https://websitedevelopment.biz/nl/guides/handleiding-webtoegankelijkheid Bijgewerkt op 2026-08-07 · Webdesign Toegankelijkheidswerk kent een lange checklist en een korte lijst met zaken die het merendeel van de werkelijke drempels verklaren. Met de korte lijst beginnen brengt echte gebruikers snel op je site; met een volledige audit beginnen levert meestal een document op dat niemand oppakt. Deze gids behandelt wat je eerst oplost, hoe je het zelf in een middag test, en waarom overlay-widgets niet de snelweg zijn waarvoor ze verkocht worden. ### De oplossingen met het grootste effect Dit zijn de drempels die mensen volledig verhinderen taken af te ronden, in plaats van ze iets lastiger te maken. Los ze op vóór alles wat op een langere lijst staat. - Toetsenbordtoegang. Elk interactief element bereikbaar met Tab en bedienbaar met Enter of spatie, in een logische volgorde, met een zichtbare focusring. Kun je de site alleen met een muis gebruiken, dan doet niets anders op deze lijst ertoe. - Tekstalternatieven. Zinvolle alt-tekst op afbeeldingen die informatie dragen; lege alt op decoratieve. Een ontbrekende alt is niet hetzelfde als een lege. - Formulierlabels. Een echte