180 lines
7.4 KiB
Markdown
180 lines
7.4 KiB
Markdown
---
|
|
name: website-taal-analyse
|
|
description: >
|
|
Voert een grondige analyse uit van een Nederlandstalige website op taal, consistentie en LLM-vindbaarheid,
|
|
en levert een professioneel PDF-rapport op. Gebruik deze skill wanneer de gebruiker vraagt om een
|
|
website te analyseren op taalgebruik, anglicismen, inconsistente categorienamen, navigatielogica,
|
|
aanspreekvorm, of vindbaarheid in AI-tools zoals ChatGPT of Gemini. Trigger ook bij vragen als
|
|
"analyseer de homepage", "bekijk de menunamen", "check de taal", "hoe scoort deze site in LLMs",
|
|
"maak een taalrapport", of wanneer een URL wordt gegeven met het verzoek om kwaliteit, consistentie
|
|
of professioneel taalgebruik te beoordelen. Genereert altijd een downloadbaar PDF-rapport.
|
|
---
|
|
|
|
# Website Taal-, Consistentie- & LLM-analyse
|
|
|
|
## Wat doet deze skill?
|
|
|
|
Analyseert een opgegeven website (standaard: homepage + producten/categoriepagina) op drie assen:
|
|
|
|
1. **Taal** — Zuiverheid Nederlands, anglicismen, aanspreekvorm, tone-of-voice passend bij doelgroep
|
|
2. **Consistentie** — Categorienamen, navigatielabels, hoofdlettergebruik, aanspreekvorm door de hele site
|
|
3. **LLM-vindbaarheid** — Paginatitels, H1-structuur, schema.org, FAQ-aanwezigheid, doelgroepomschrijving
|
|
|
|
Levert een **professioneel PDF-rapport** op met genummerde actiepunten, kleurcodering per thema en prioriteit, naamvergelijkingstabellen en een prioriteitsmatrix.
|
|
|
|
---
|
|
|
|
## Workflow
|
|
|
|
### Stap 1 — Begrijp de opdracht
|
|
|
|
Verzamel voor je begint:
|
|
- **URL** van de te analyseren pagina (verplicht)
|
|
- **Doelgroep** (bijv. B2B klein zakelijk, consument, horeca) — beïnvloedt de beoordeling van toon en jargon
|
|
- **Locale** (bijv. nl-NL, nl-BE) — bepaalt de taalstandaard
|
|
- **Extra pagina's** om mee te nemen (bijv. /alle-producten, /categorie/X)
|
|
|
|
Als de gebruiker alleen een URL geeft, ga dan uit van: doelgroep = zakelijk, locale = nl-NL.
|
|
|
|
### Stap 2 — Pagina's ophalen en analyseren
|
|
|
|
Gebruik de browser om de pagina('s) te bezoeken. Verzamel:
|
|
|
|
**Taal:**
|
|
- Alle Engelse woorden/termen in navigatie, koppen, buttons, categorienamen, footer
|
|
- Aanspreekvorm: wordt consistent 'je/jij' of 'u' gebruikt?
|
|
- Paginatitel (`<title>`): bevat merknaam? Correct Nederlands?
|
|
- H1: stellend of vraagzin? Informatief of sloganachtig?
|
|
- Informele of B2C-termen die niet passen bij de opgegeven doelgroep
|
|
|
|
**Consistentie:**
|
|
- Benoem elke categorie/sectie die op meerdere plekken anders heet (navigatie vs. pagina vs. footer)
|
|
- Hoofdlettergebruik in footer, navigatie, kopregels
|
|
- Cookie-popup taalgebruik vs. rest van de site
|
|
- Dubbele productvermeldingen of tegenstrijdige categorisering
|
|
|
|
**Navigatielogica (bij aanwezige productnavigatie):**
|
|
- Maak een mapping: nav-item → naam op overzichtspagina → naam in footer
|
|
- Noteer mismatches, ontbrekende items, dubbele categorieën
|
|
- Beoordeel het indelingsprincipe: productgericht vs. situatiegericht (of gemengd)
|
|
- Zijn er dubbele producten in meerdere categorieën?
|
|
|
|
**LLM-vindbaarheid:**
|
|
- Staat er een expliciete doelgroepomschrijving op de homepage?
|
|
- Is er een FAQ-sectie?
|
|
- Zijn schema.org / JSON-LD markup aanwezig? (check broncode of devtools)
|
|
- Is de blog/kennisbank zichtbaar op de homepage?
|
|
- Zijn USP-beloftes concreet en verifieerbaar, of vaag?
|
|
|
|
### Stap 3 — Genereer het PDF-rapport
|
|
|
|
Lees het scripttemplate: `scripts/rapport_generator.py`
|
|
|
|
Pas het script aan op basis van de gevonden bevindingen en genereer het PDF via:
|
|
|
|
```bash
|
|
pip install reportlab --break-system-packages -q
|
|
python scripts/rapport_generator.py
|
|
```
|
|
|
|
Sla het PDF op in `/mnt/user-data/outputs/` met een beschrijvende naam, bijv.:
|
|
`[merknaam]_Taal_Consistentie_LLM_[datum].pdf`
|
|
|
|
### Stap 4 — Presenteer het rapport
|
|
|
|
Gebruik `present_files` om het PDF aan de gebruiker te tonen.
|
|
|
|
Geef daarna een korte samenvatting in de chat van:
|
|
- De 3 meest impactvolle bevindingen
|
|
- Het totaal aantal actiepunten per thema
|
|
|
|
---
|
|
|
|
## Rapportstructuur
|
|
|
|
Het rapport bevat altijd de volgende secties (pas aan op basis van wat er geanalyseerd is):
|
|
|
|
| Sectie | Inhoud |
|
|
|--------|--------|
|
|
| **1. Taal** | Anglicismen, H1, paginatitel, tone-of-voice, aanspreekvorm |
|
|
| **2. Menunamen** | Tabel met elk nav-item + oordeel (✓ / △ / ✗) + toelichting |
|
|
| **3. Consistentie** | Aanspreekvorm, categorienamen, hoofdletters, footer |
|
|
| **4. LLM-vindbaarheid** | Doelgroepomschrijving, FAQ, schema.org, USPs, blog |
|
|
| **5. Navigatiestructuur** | Alleen als er een productoverzichtspagina is meegenomen: mapping nav ↔ overzichtspagina, logicafouten, dubbele producten |
|
|
| **6. Prioriteitsoverzicht** | Genummerde actielijst met thema, impact (rood/oranje/groen) en doorlooptijd |
|
|
|
|
---
|
|
|
|
## Actiepunt-format
|
|
|
|
Elk actiepunt bevat:
|
|
- **Thema-label** (T = Taal, C = Consistentie, L = LLM, N = Navigatie) + volgnummer
|
|
- **Prioriteit** (HOOG / MIDDEL / LAAG)
|
|
- **Titel** van het probleem
|
|
- **Probleem**: concrete omschrijving wat er fout is en waarom
|
|
- **Vindplaats**: exacte locatie op de pagina (bijv. "Hoofdnavigatie — item 9", "H1-heading", "footer kolom 'Samenwerken'")
|
|
- **Actie**: concreet, uitvoerbaar advies met voorbeeldtekst waar mogelijk
|
|
|
|
---
|
|
|
|
## Kleurenschema
|
|
|
|
| Thema | Kleur | Code |
|
|
|-------|-------|------|
|
|
| Taal | Blauw | `#1a3a6b` |
|
|
| Consistentie | Groen | `#1a6b2f` |
|
|
| LLM | Paars | `#5b2d8e` |
|
|
| Navigatie | Teal | `#0e6b5e` |
|
|
|
|
| Prioriteit | Kleur |
|
|
|------------|-------|
|
|
| HOOG | Rood `#b03030` |
|
|
| MIDDEL | Oranje `#c05c00` |
|
|
| LAAG | Groen `#1a6b2f` |
|
|
|
|
---
|
|
|
|
## Beoordelingskaders per thema
|
|
|
|
### Taal — wat telt als bevinding?
|
|
|
|
- Engelse woorden in navigatie, koppen of buttons die een Nederlands equivalent hebben
|
|
- Voorbeelden: Gifts → Relatiegeschenken, Merch → Promotiemateriaal, Flash Sale → Tijdelijke aanbieding
|
|
- Grensgevallen die geaccepteerd zijn: 'online', 'e-mail', 'blog', 'hoodies' (breed geaccepteerd)
|
|
- Paginatitel zonder merknaam, of met 'kwalitatief' als kwaliteitsaanduiding
|
|
- H1 als vraagzin of sloganachtige tekst
|
|
- Gemengde aanspreekvorm ('je' en 'u' door elkaar)
|
|
- Informele termen die niet passen bij de opgegeven doelgroep (bijv. 'spullen' op een zakelijke site)
|
|
- Onjuiste interpunctie of hoofdlettergebruik in koppen
|
|
|
|
### Consistentie — wat telt als bevinding?
|
|
|
|
- Dezelfde categorie heeft op 2+ plekken een andere naam
|
|
- Aanspreekvorm wisselt tussen pagina's of secties (bijv. cookie-popup vs. hoofdcontent)
|
|
- Hoofdlettergebruik in footer of navigatie volgt geen standaard Nederlands
|
|
- Productbenamingen in de URL wijken af van de naam in de navigatie (bijv. /beachvlaggen vs. "Beachflags")
|
|
|
|
### LLM-vindbaarheid — wat telt als bevinding?
|
|
|
|
- Geen expliciete doelgroepomschrijving ("HelloPrint is de drukkerij voor...")
|
|
- Paginatitel bevat de merknaam niet
|
|
- H1 is niet informatief/stellend
|
|
- Geen FAQ op de homepage of categoriepagina
|
|
- Geen zichtbare schema.org-markup (Organization, Product, AggregateRating)
|
|
- Blog/kennisbank niet gepromoot op de homepage
|
|
- USP-beloftes zijn subjectief of niet-verifieerbaar
|
|
|
|
### Navigatielogica — wat telt als bevinding?
|
|
|
|
- Nav-item en naam op overzichtspagina stemmen niet overeen
|
|
- Nav-item is een subproduct op de overzichtspagina (ongelijke diepte)
|
|
- Twee verschillende indelingsprincipes door elkaar (productgericht + situatiegericht)
|
|
- Hetzelfde product staat in meerdere categorieën (dubbeling)
|
|
- Categorienaam is te breed of te vaag voor oriëntatie (bijv. 'Drukwerk' op een drukkerijsite)
|
|
|
|
---
|
|
|
|
## Zie ook
|
|
|
|
- `scripts/rapport_generator.py` — Volledig ReportLab-script voor PDF-generatie, inclusief alle stijlfuncties
|
|
- `references/nl_taal_checklist.md` — Uitgebreide checklist met veelvoorkomende anglicismen en alternatieven |