Jamal vroeg: klopt alles wat Conductor over haarvisie.nl beweert, en wat moet er op alle fronten gebeuren?
5 agents hebben de site doorgelicht. Alles read-only. Niets aangepast, niet ingelogd.
Dimensies: snelheid, SEO-techniek, veiligheid, content/UX, data (GSC + GA4).
Zwaarste interne vondst: Wordfence meldt 2 KRITIEKE lekken (Avada Builder + Avada Core) en de site draait PHP 7.4.33 (end-of-life). Updaten = prioriteit 1.
Grootste fout in de inventarisatie: het HairSalon-schema ontbreekt NIET. Het staat er juist rijk in, voor beide vestigingen.
Grootste juridische risico: GA4, Hotjar en de Meta Pixel vuren zonder cookiebanner. Dat is een AVG-probleem. 3 agents bevestigen dit onafhankelijk.
Grootste veiligheidsrisico: het Avada-thema draait versie 7.13 met een bekende kwetsbaarheid (CVE-2025-64634). Updaten is urgent.
Grootste SEO-winst zit in titels en meta's. Site-brede CTR is maar 1,24% bij 268.765 impressies. Alleen al balayage laat ~300 clicks per maand liggen.
De site is snel aan de serverkant (TTFB ~75-95 ms, WP Rocket werkt). Maar de pagina's zelf zijn zwaar: 69 JS-bestanden, 682KB HTML, amper WebP.
Er lekt indexwaarde weg: een duplicaat-homepage (/?p=Home) staat in Google, robots.txt is leeg, en 283 dunne testimonial-pagina's vullen 41% van de sitemap.
Content heeft slordigheden: het verboden woord "prijzen" staat op 2 plekken, footer zegt nog "2025", spelfout "Hairextentions", dubbele H1's, blog ligt 3,5 maand stil.
Data bevestigt de foto-regel: foto's worden op meerdere plekken door CSS afgesneden (hero, thumbnails, blog). Dat botst met Jamals regel "foto's nooit bijsnijden".
Mobiel is koning: 78% van de sessies is mobiel, 81% komt uit organic search. Social levert bijna niks (18 sessies in 28 dagen).
1. PHP-versie verouderd — KLOPT, en het is erger dan gedacht.
Conductor checkte het in wp-admin (Sitediagnose): de site draait PHP 7.4.33. PHP 7.4 krijgt sinds november 2022 geen beveiligingsupdates meer. Wordfence adviseert 8.2 of hoger. De update gaat via het TransIP-paneel. Let op: eerst plugin-compatibiliteit checken.
2. Ongeveer 6 updates klaar — KLOPT, met 1 nuance.
Conductor zag de volledige lijst in wp-admin: 4 plugins (ACF PRO 6.4.2 naar 6.8.6, Filter Everything, Media Cleaner, Spellbook) + Avada 7.13 naar 7.15.6 + vertalingen. Nuance: WordPress zelf is WEL actueel (7.0.2 = nieuwste, auto-updates staan aan).
3. Wordfence heeft 2 meldingen — ONDERSCHAT, het is veel erger.
Conductor zag in wp-admin: 33 meldingen en 7 scan-resultaten, waarvan 2 KRITIEK: de plugins "Avada Builder" en "Avada Core" hebben een bekend beveiligingslek (gevonden 16-7). Plus 1 hoog: een aangepast WordPress-core-bestand (wp-includes/css/dist/block-library/common.min.css — kan een cache-artefact zijn, maar moet gecheckt). Dit maakt de Avada-update (actiepunt 2) nóg urgenter.
4. Yoast heeft 3 meldingen — badge klopt, maar het echte verhaal is groter.
Conductor zag in wp-admin: 245 pagina's/berichten zijn nooit geanalyseerd (geen focus-zoekwoord ingevuld) tegenover maar 25 met score "goed". Plus 22 stuks met slechte leesbaarheid. Er ligt dus veel SEO onbenut. Yoast draait de gratis versie.
5. Geen cookiebanner terwijl trackers laden — KLOPT.
3 agents vonden onafhankelijk: GA4-tag (GT-KDDNZGC), Hotjar (1673089) én Meta Pixel (1383599900413698) vuren direct, en er is 0 spoor van een consent-plugin of Google Consent Mode. Extra: de Meta Pixel staat er dus inmiddels WEL op (dat was eerder "ontbreekt").
6. Foto's worden afgesneden door containers — KLOPT.
Content/UX vond de concrete boosdoeners in de CSS: hero-slider met vaste hoogte 900px + object-fit cover, specialiteiten-thumbnails die bewust 20px breder zijn dan hun container, en blogthumbnails met een harde 30vh-topcrop. Kleine nuance van de SEO-agent: hoe erg het er visueel uitziet is niet met screenshots beoordeeld.
7. Google Business Profiel is de grootste vindbaarheids-winst — GENUANCEERD.
De data ondersteunt het: "kapper rijswijk" staat op positie 2,6 maar haalt maar 5,3% CTR (hoort 10-20% te zijn), wat wijst op local-pack-concurrentie. Maar "grootste" is niet hard te bewijzen: de titel/meta-CTR-kans is qua meetbaar volume minstens zo groot. GBP-cijfers zelf konden de agents niet inzien.
8. HairSalon-structured-data ontbreekt — KLOPT NIET.
2 agents vonden onafhankelijk TWEE volledige HairSalon-schema-blokken (Rijswijk + Wateringen) met adres, telefoon, openingstijden en geo-data. Deze bewering moet uit de inventarisatie. Wel 3 schema-fouten gevonden: een Product-schema met eigen reviews (tegen Googles richtlijnen), een los NewsArticle-blok op de homepage, en Wateringen mist geo-coördinaten.
Gesorteerd op prioriteit. 1 = nu doen. Werk: S = klein, M = middel, L = groot.
Cookiebanner + Google Consent Mode v2 plaatsen (bijv. Complianz). Waarom: GA4, Hotjar en Meta Pixel vuren nu zonder toestemming. Grootste juridische risico, en retargeting op de pixel is zonder consent wankel. Werk: M
Avada updaten naar de nieuwste versie (na backup + staging-test). Waarom: 7.13 heeft een bekende kwetsbaarheid (CVE-2025-64634). Werk: M
PHP updaten van 7.4.33 naar 8.2+ via TransIP (na backup, eerst plugin-check). Waarom: Conductor bevestigde in wp-admin dat de site op het al jaren onveilige PHP 7.4 draait. Werk: M
/?p=Home met 301 naar / sturen (Redirection-plugin staat er al). Waarom: Google indexeert nu een duplicaat-homepage naast de echte. Werk: S
robots.txt vullen met minimaal de sitemap-regel en sturing voor ?p=-parameters. Waarom: hij is nu helemaal leeg. Werk: S
Titles en meta's herschrijven van balayage, keratine, haartoners en haar-verven (lokaal + voor/na + tarief-indicatie). Waarom: elke +0,5% CTR site-breed = ~1.300 extra clicks per 28 dagen. Alleen balayage al ~300 clicks per maand extra. Goedkoopste winst van de hele lijst. Werk: M
283 testimonial-pagina's op noindex + uit de sitemap; reviews tonen op /reviews/. Plus: /ervaringen/ en /bruids-arrangementen/ uit de sitemap, /hairextensions/ (404) 301'en. Waarom: 41% van de sitemap is dun spul, dat verdunt de crawl. Werk: M
Foute schema's opruimen: Product-reviewschema weg (richtlijn-risico bij Google), NewsArticle-blok van de homepage af, geo-coördinaten toevoegen bij Wateringen. Waarom: rich-result-penalty voorkomen. Werk: S
Tekst- en merkfixes in 1 ronde: "prijzen" overal naar "tarieven" op /afspraak-maken/, oude /prijzen/-link naar /tarieven/, spelfout "Hairextentions", footer naar 2026, dubbele H1's naar 1 per pagina. Waarom: merkregel + professionaliteit. Werk: S
Security-headers toevoegen in nginx: HSTS, X-Frame-Options, nosniff, Referrer-Policy, Permissions-Policy, basis-CSP. Waarom: ontbreken nu allemaal. Klein werk, veel winst. Werk: S
WP Rocket: "Delay JavaScript execution" + defer aanzetten, trackers in de delay-lijst, en de dubbele Swiper van testimonial-pro dequeuen. Waarom: 69 JS-bestanden (1,1MB) blokkeren nu de mobiele interactiviteit, en 78% van je bezoek is mobiel. Werk: M
Beelden naar WebP (Imagify/ShortPixel), max 1600px serveren, en de 10 Pinterest-hotlinks lokaal hosten. Waarom: scheelt grofweg de helft van 1,86MB per paginaweergave. Werk: M
Google Business Profiel optimaliseren (beide vestigingen): foto's, posts, reviews, diensten. Waarom: het local pack pakt nu de clicks die de site op positie 2,6 laat liggen. Werk: M
Generator-tags verbergen + readme.html blokkeren. Waarom: minder fingerprinting van je software-versies. Werk: S
MCP-adapter op productie uitschakelen als hij niet nodig is (anders IP-allowlist). Plus Wordfence login-limiting en 2FA aanzetten. Waarom: onnodig aanvalsoppervlak verkleinen. Werk: S
Extensions-cluster uitbouwen: een bredere hairextensions-pagina die meelift op de kracht van de krul-extensions-pagina. Waarom: generiek "hairextensions" staat op positie 19,9 terwijl krul-varianten op 1-3 staan. Werk: M
Blog reactiveren (laatste post 3 april). Waarom: 349 posts zijn een sterke basis, maar 3,5 maand stilte oogt inactief en de blogposts trekken bewezen verkeer. Werk: M
Social-tagging checken (UTM's) en de link Instagram naar site herstellen. Waarom: 18 sessies uit social in 28 dagen is bijna nul; of het verkeer komt niet, of het wordt niet gemeten. Werk: S
Foto-crops structureel fixen: beelden aanleveren in de juiste verhouding per plek, de +20px-randcrop en 30vh-topcrop uit de CSS, hero-beelden per breakpoint. Waarom: jouw regel is "foto's nooit bijsnijden", en de CSS doet nu het tegenovergestelde. Werk: M
Afsprakenflow verkorten of live booking invoeren. Waarom: /afspraak-maken/ is met 756 views je op 1 na drukste pagina, maar 14 velden is lang op mobiel en elke afspraak is nog een verzoek dat de salon moet afhandelen. Werk: L
HTML-bloat aanpakken (682KB home, 1,1MB over-ons): Avada performance-wizard, ongebruikte Fusion-elementen uit. Of meenemen in de geplande rebuild. Werk: L
Eerlijkheid voorop. Dit kon van buitenaf niet:
~~Alles achter wp-admin~~ — inmiddels door Conductor zelf gecheckt en verwerkt in dit verslag (PHP 7.4.33, update-lijst, Wordfence 33 meldingen + 2 kritiek, Yoast 245 niet geanalyseerd).
Officiële PageSpeed/Lighthouse-scores: de API gaf een quota-fout (429). Eigen curl-metingen zijn de vervanging, maar LCP/CLS/INP van echte gebruikers ontbreken.
Visuele beoordeling van de foto-crops: de CSS bewijst dat er gecropt wordt, maar er zijn geen screenshots gemaakt van hoe erg het oogt.
Mobiele weergave van het afspraakformulier: statische HTML-audit, niet gerenderd getest.
Google Business Profiel-cijfers: geen toegang tot GBP-data. De "grootste winst"-claim blijft daarom een inschatting.
Of de cookiebanner misschien puur via JS rendert: zeer onwaarschijnlijk (0 sporen van een consent-plugin in de HTML), maar een visuele check in de browser maakt het 100% dicht.