Werklijst voor de developer

Alles wat er aan haarvisie.nl moet gebeuren, met de reden erbij. Geordend op urgentie, niet op moeilijkheid. Elk punt is los uit te voeren. haartips.nl staat er bewust niet op — dat doen we zelf.

Opgesteld 5 augustus 2026 Site haarvisie.nl Punten 10

Beveiliging

Op 5 augustus nagemeten op haarvisie.nl. Het meeste stond al goed — er blijft één punt over.

01

readme.html verwijderen

snel
Wat

www.haarvisie.nl/readme.html is voor iedereen op te vragen. Gemeten op 5 augustus: de pagina bestaat en geeft antwoord.

Waarom

Dat bestand staat standaard in elke WordPress-installatie en verraadt het versienummer. Daarmee weet een aanvaller precies welke bekende lekken van toepassing zijn.

Hoe

Bestand weggooien. Kost een halve minuut. Komt terug na een WordPress-update, dus zet het op de lijst voor na elke update.

Wat al goed staat. De gebruikerslijst (/wp-json/wp/v2/users) is afgeschermd en xmlrpc.php is dicht. Dat hoeft dus niet meer.

Juridisch

Eén punt, maar met een boete-risico.

02

Cookiebanner met Consent Mode v2

nu
Wat

Er lopen drie trackers voordat de bezoeker toestemming geeft. Gemeten in de broncode op 5 augustus: Google Tag Manager, Facebook Pixel en Hotjar. Er staat geen enkele cookiebanner in de pagina.

Waarom

Dat mag niet onder de AVG. Google Consent Mode v2 is bovendien verplicht om advertentie- en meetgegevens binnen de EER te blijven ontvangen.

Hoe

Banner die standaard weigert, en de trackers pas laadt na toestemming. Consent Mode v2 aan de Google-tags koppelen.

Er is al werk gedaan. Jamal meldt dat er een cookiebanner op de testomgeving staat. Op de live site staat hij niet — dat heb ik nagemeten. Kijk dus eerst naar die testversie: die hoeft misschien alleen nog live gezet te worden. Let er wel op dat een banner die alleen een melding toont maar de trackers niet tegenhoudt, juridisch niets oplost.

Zoekverkeer

Deze vijf komen rechtstreeks uit Google Search Console. Alle getallen zijn gemeten, niet geschat. Hier zit het meeste te winnen.

03

Dubbele pagina's samenvoegen

nu
Wat

Drie onderwerpen hebben meerdere pagina's die om dezelfde zoekopdracht strijden:

  • Highlights half/full head — 2 pagina's
  • Haartoners — 2 pagina's
  • Winterkleuren — 4 pagina's
Waarom

Google moet kiezen welke pagina hij toont en verdeelt de waarde over allemaal. Eén pagina met alle kracht scoort hoger dan vier die elkaar tegenwerken. Het verschil is nu 1.713 tegen 184 kliks.

Hoe

De pagina met het meeste verkeer blijft staan en wordt de volledige versie. De andere krijgen een 301 daarheen. Nooit verwijderen zonder redirect — dan verdwijnt het opgebouwde verkeer.

Stukken

Welke pagina's dubbel zijn en welke moet blijven staat in het zoekwoordenrapport (sectie dubbele pagina's).

04

De vragen letterlijk beantwoorden

snel
Wat

Search Console laat zien welke vragen mensen intypen. Op die vragen staat nu geen antwoord:

  • wat is een toner (positie 76)
  • wat zijn highlights
  • wat is pomade
  • is gel slecht voor je haar
  • welk kapsel maakt je jonger
  • wat zijn babylights
Waarom

Google beloont pagina's die de vraag letterlijk als kop hebben staan. Positie 76 betekent: niemand vindt het.

Hoe

De vraag als <h2> op de bestaande pagina, met daaronder een kort en direct antwoord. Teksten liggen klaar.

Stukken

De letterlijke vragen per pagina staan in het zoekwoordenrapport.

05

Nieuwe pagina: babylights

snel
Wat

1.400 mensen zoeken hierop en er is geen eigen pagina.

Waarom

Vraag zonder aanbod. Dit is de goedkoopste winst op de hele lijst.

Stukken

De volledige tekst voor deze pagina ligt klaar: concept babylights. Alleen nog plaatsen en opmaken.

06

Twee titels herschrijven

snel
Wat

Twee pagina's staan hoog maar krijgen bijna geen kliks:

  • herenproducten per haartype — positie 3, nul kliks
  • caramel highlights — positie 1,4, één klik
Waarom

Zo hoog staan en toch niet geklikt worden betekent dat de tekst goed is maar de titel in Google niet aanspreekt. De inhoud hoeft niet aangeraakt.

Hoe

Alleen de title en de omschrijving aanpassen naar iets waar iemand op klikt.

Stukken

Welke twee titels en de nieuwe formulering: zie het zoekwoordenrapport.

07

De grote servicepagina's

daarna
Wat

Drie pagina's waar mensen komen die een afspraak zoeken:

  • balayage — 28.160 vertoningen, 98 kliks
  • keratinebehandeling — 10.129 vertoningen
  • haar verven / haar kleuren — 4.917 vertoningen
Waarom

Dit is geen blogverkeer maar koopverkeer. Bij balayage ziet Google de pagina 28.000 keer en klikt bijna niemand — daar zit het meeste geld van de hele lijst.

Aparte afspraak. Alles op haarvisie.nl gaat per pagina met toestemming van Jamal. Overleg welke pagina als eerste, en wacht daarop.
Stukken

Begin met de balayage-pagina (28.160 vertoningen, 98 kliks per kwartaal — de grootste kans). De aanpak per pagina staat in het zoekwoordenrapport.

12

Balayage-pagina: kant-en-klaar overnemen

nu
Wat

De pagina /specialiteiten/balayage/ krijgt een nieuwe titel, een nieuwe meta-omschrijving en één H1-kop. Alles staat al uitgeschreven: kopiëren en plakken, niets zelf bedenken.

Waarom

Dit is de grootste directe winst van de hele lijst. De pagina staat op plek 7,9 en wordt 41.671 keer getoond, maar bijna niemand klikt: de doorklikratio is 0,5%. De oorzaak is een titel van 73 tekens die afkapt, geen plaatsnaam erin, en twee H1-koppen op één pagina.

Hoe

Vier dingen, in deze volgorde. Nieuwe titel. Nieuwe meta-omschrijving. De twee H1-koppen terugbrengen naar één. En de eerste alinea laten beginnen met een echte definitie, want AI-zoekmachines citeren definities en geen inleidingen. Alle vier de teksten staan letterlijk klaar in het rapport hieronder.

Aparte afspraak. Dit is haarvisie.nl, dus net als bij punt 7 geldt: per pagina met toestemming van Jamal, niet zelfstandig doorvoeren.
Stukken

Kant-en-klare teksten: balayage-pagina geoptimaliseerd (23 juni). Onderbouwing met de zoekwoorden: zoekwoordenrapport (20 juli).
Let op het cijferverschil. Het balayage-rapport telt 41.671 vertoningen, het zoekwoordenrapport 28.160. Dat zijn twee verschillende meetperiodes en geen fout. Neem de richting over, niet het exacte getal.

Functioneel

08

De tien nieuwe blogs plaatsen

snel
Wat

Er liggen tien herschreven blogs klaar (1.200 tot 1.700 woorden, met SEO-structuur).

Waarom

Ze zijn bedoeld als vervanging van de bestaande blogs over dezelfde onderwerpen, niet als aanvulling. Twee pagina's over hetzelfde onderwerp is precies het probleem uit punt 5.

Hoe

Bestaat er al een blog over dat onderwerp, dan wordt de bestaande URL behouden en alleen de inhoud vervangen. Zo blijft het opgebouwde verkeer staan. Alleen bij een echt nieuw onderwerp een nieuwe URL.

Stukken

Alle tien liggen klaar op verslag.haartips.nl: babylights, beach-waves, gel-wax-pomade-clay, grijze-look, heren-gids, highlights, jeugdiger-kapsels, toners, trends, winterkleuren. Toelichting op de aanpak: r-blogs-herschrijven-seo.

09

Afhaak-plugin installeren

snel
Wat

Plugin hv-afhaak-vraag: één vraag in de huisstijl op /afspraak-maken/ aan bezoekers die afhaken.

Waarom

Er haken 401 mensen per maand af op dat formulier; de conversie is 17%. We weten wél dat ze weggaan, niet waaróm. Dit vervangt een betaalde enquêtedienst.

Hoe

Verschijnt na 45 seconden stilstand, één keer per bezoeker per 30 dagen, en nooit na een geslaagde afspraak. Antwoorden gaan naar een eigen database. Plugin is af en getest.

Stukken

De complete plugin staat hier: hv-afhaak-vraag.zip (php + assets). Installeren als gewone WordPress-plugin.

11

Tarievenpagina: creatie-kaarten toevoegen

nieuw — wacht op definitieve invulling
Wat

Een blok "Wat kost een creatie nu echt?" op /tarieven/: kaarten met een echte creatie uit de salon — foto, wat er gedaan is, duur, wat de klant mee naar huis krijgt en het exacte tarief van die creatie. Vijf kaarten: full head highlights, extensions 50 / 100 / 150 stuks, en keratine met drie tarieven (normale dikte, heel dik, extreem dik + lang).

Waarom

De tarievenpagina is de best bezochte pagina van de site, maar bij Kleuren staat geen enkel tarief en bij balayage alleen "vraag een offerte". Die onzekerheid schrikt af. Concrete voorbeelden geven houvast zonder een vaste prijslijst te beloven.

Hoe

Werkend visueel voorbeeld met de definitieve foto-URLs staat klaar: tarieven-creaties-voorstel.html. Onder het blok de bestaande WhatsApp-knop houden ("elke creatie is maatwerk"). De exacte tarieven en tijden levert Jamal aan; plaatsen kan zodra die zijn ingevuld.

Bewust uitgesteld

Dit punt staat er alleen zodat niemand denkt dat het vergeten is.

10

PHP en Avada bijwerken

nu niet
Wat

PHP staat op 7.4, dat wordt al lang niet meer ondersteund. In het thema zit een bekend lek (CVE-2025-64634).

Besluit

Jamal heeft besloten dit nu niet te doen. De site gaat tijdens de update kort plat en dat weegt op dit moment zwaarder.

Let op

Het lek blijft bestaan zolang dit wacht. Zodra er een rustig moment is: eerst een volledige backup, dan pas updaten.