Installatie & activatie
Download, upload en activeer de plugin in je WordPress-dashboard in een paar minuten.
Download het .zip-bestand
Via je aankoop of via de WordPress Plugin Repository.
Upload naar WordPress
Ga naar Plugins → Nieuwe plugin → Uploaden. Upload het
.zip-bestand en klik op Nu installeren.Activeer de plugin
Klik op Plugin activeren. Bij activatie controleert de plugin automatisch de serververeisten.
Bij activatie worden de benodigde databasetabellen automatisch aangemaakt. Als PHP 8.0+ of cURL ontbreekt, wordt de plugin automatisch gedeactiveerd met een duidelijke foutmelding.
Vereisten bij activatie
| Vereiste | Minimum | Opmerking |
|---|---|---|
| PHP | 8.0+ | 8.1 of 8.2 aanbevolen |
| PHP cURL | — | Verplicht voor API-verbindingen |
| WordPress | 6.0+ | Aanbevolen: 6.5+ |
| MySQL | 5.7+ | — |
| HTTPS | — | Verplicht voor AI-providers |
Eerste configuratie
Minimale stappen om de chatbot direct aan de praat te krijgen.
Na activatie zie je bovenaan je WordPress-dashboard een setup-melding als er nog geen API-sleutel is ingesteld. Klik op Open instellingen om direct naar de configuratiepagina te gaan.
Minimale stappen
Ga naar Configuratie
Klik op Configuratie in het WordPress-menu (linkerkant).
Kies je AI-provider
Selecteer OpenAI of Anthropic Claude.
Voer je API-sleutel in
Plak je API-sleutel in het daarvoor bestemde veld.
Sla op
Klik op Wijzigingen opslaan. De chatbot verschijnt nu automatisch op alle pagina’s.
Gebruik de Verbinding testen-knop op de instellingenpagina om te controleren of je API-sleutel correct werkt.
OpenAI instellen
GPT-4o en GPT-4.1 koppelen via je eigen API-sleutel.
Claude instellen
Anthropic Claude Haiku, Sonnet of Opus koppelen.
De widget plaatsen
De chatbot laadt automatisch op alle pagina’s. Gebruik de shortcode voor meer controle.
De chatbot-widget laadt standaard automatisch op alle pagina’s via wp_body_open of wp_footer. Je hoeft niets te doen.
Shortcode gebruiken
Wil je meer controle over waar de widget verschijnt? Gebruik de shortcode:
Zie de Shortcode referentie voor alle beschikbare parameters zoals prompt, theme en welcome.
Wil je de widget alleen op bepaalde pagina’s tonen? Verwijder de automatische weergave en gebruik de shortcode alleen op de gewenste pagina’s.
OpenAI instellen
Koppel je eigen OpenAI API-sleutel. Kies uit GPT-4.1 mini, GPT-4o of GPT-4.1.
Maak een account aan
Ga naar platform.openai.com en maak een account aan of log in.
Genereer een API-sleutel
Ga naar API keys en maak een nieuwe sleutel aan. Kopieer de sleutel — je ziet hem maar één keer.
Plak in Promptskills
Ga naar Configuratie → API-sleutel (OpenAI) en plak de sleutel. Zorg dat AI-provider op OpenAI staat.
Beschikbare modellen
| Model-ID | Naam | Geschikt voor |
|---|---|---|
| gpt-4.1-mini | GPT-4.1 mini | Snel, kostenefficiënt |
| gpt-4o | GPT-4o | Gebalanceerd |
| gpt-4.1 | GPT-4.1 | Hoogste kwaliteit |
Anthropic Claude instellen
Koppel je eigen Anthropic API-sleutel voor Claude Haiku, Sonnet of Opus.
Maak een account aan
Ga naar console.anthropic.com en maak een account aan of log in.
Genereer een API-sleutel
Ga naar API Keys en klik op Create Key. Kopieer de sleutel — je ziet hem maar één keer.
Plak in Promptskills
Ga naar Configuratie → API-sleutel (Claude), plak de sleutel en zet AI-provider op Anthropic Claude.
Beschikbare modellen
| Model-ID | Naam |
|---|---|
| claude-haiku-4-5-20251001 | Haiku 4.5 — Snel & zuinig |
| claude-sonnet-4-5 | Sonnet 4.5 — Gebalanceerd |
| claude-opus-4-5 | Opus 4.5 — Hoogste kwaliteit |
Voor een gemiddelde MKB-site (±500 chats/maand) reken je op €2–8/maand aan AI-kosten bij gebruik van Haiku of GPT-4.1 mini.
Algemeen
Kernopties voor AI-provider, model, temperatuur en rate limiting.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| AI-provider | openai | Keuze: openai of claude |
| AI-model | gpt-4o | Afhankelijk van geselecteerde provider |
| Temperatuur | 0.4 | Creativiteit (0.0–2.0). Lager = consistenter. |
| Max. history | 6 | Aantal vorige berichten (turns) als context |
| Max. tokens | 512 | Maximale lengte van het AI-antwoord |
| Rate limiting | 20/min | Maximaal aantal berichten per gebruiker per minuut |
| Logging | aan | Gesprekken opslaan in de database |
| Widgetpositie | rechts | rechts of links op het scherm |
Uiterlijk & stijl
Kleuren, thema, launcher, avatar en aangepaste CSS van de chatwidget instellen.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Primaire kleur | #7C3AED | Hoofdkleur widget en launcher |
| Accentkleur | #4f46e5 | Secundaire kleur |
| Launcher-grootte | 60px | Diameter van de openknop |
| Widget border-radius | 16px | Afronding van het chatvenster |
| Thema | auto | light, dark of auto (volgt systeeminstelling) |
| Launcher-label | Stel hier je vraag! | Tekst naast de openknop |
| Branding | aan | “Powered by Promptskills” (verwijderbaar op Pro/Business) |
| Aangepaste CSS | — | Vrij CSS-veld voor extra stijlaanpassingen |
| Typewriter-snelheid | 0 ms/teken | Animatiesnelheid AI-antwoord. Pro/Business |
Gesprek & gedrag
Welkomstbericht, persona-naam, toon en taal van de chatbot instellen.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Welkomstbericht | Hallo! Waar kan ik mee helpen? | Eerste bericht dat de bot toont |
| Persona-naam | — | Naam in de widget-header (bijv. “Emma”) |
| Persona-toon | none | none, formal of informal — beïnvloedt de systemprompt |
| Taal | nl | nl of en |
Privacy & GDPR
GDPR-melding, log-retentie en wat de plugin wel en niet opslaat.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| GDPR-melding | aan | Toont een banner als logging ingeschakeld is |
| GDPR-tekst | standaardtekst | Configureerbare toestemmingstekst |
| Log-retentie | 90 dagen | Na hoeveel dagen worden gesprekken verwijderd (0 = nooit) |
Wat wordt opgeslagen
- Gespreksinhoud (tijdelijk, configureerbaar)
- Geanonimiseerde IP-hash (nooit het volledige IP-adres)
- Naam en e-mailadres (alleen als Lead Capture ingeschakeld is)
Wat NIET wordt opgeslagen
- Trackingcookies — de widget plaatst er geen
- Volledige IP-adressen
De plugin registreert automatisch een privacy policy-tekst voor de WordPress Privacy Policy-pagina. Gesprekken worden in de browser opgeslagen via localStorage met een TTL van 24 uur.
Streaming antwoorden (SSE)
Antwoorden verschijnen letter voor letter via Server-Sent Events — geen wachttijd op het volledige antwoord.
Standaard stuurt de plugin berichten in real-time via Server-Sent Events (SSE). De gebruiker ziet het antwoord direct verschijnen.
Het SSE-endpoint (/wp-json/promptskills/v1/chat_stream) wordt automatisch uitgesloten van caching door WP Rocket, LiteSpeed Cache en W3 Total Cache.
Gebruik je een ander cachingplugin? Voeg dan het pad /wp-json/promptskills/v1/chat_stream handmatig toe aan de uitsluitingslijst van je cachingplugin.
Kennisbank (RAG)
Geef de AI context over jouw business zodat het relevante, correcte antwoorden geeft.
De kennisbank is de bron van waarheid voor de AI. Hoe beter de kennisbank, hoe beter de antwoorden. Je kunt op vier manieren content toevoegen:
1. URL importeren
Voer een URL in en de plugin haalt de tekst automatisch op van die pagina.
2. Handmatige tekst
Ga naar Promptskills → Kennisbank → Nieuw document. Plak tekst of schrijf direct. Geschikt voor FAQ’s, retourbeleid en openingstijden.
3. Sitemap importeren
4. WooCommerce-producten
Importeer productinformatie als kennisbankdocumenten. Zie WooCommerce integratie voor details.
Limieten per plan
| Plan | Max. kennisbank-items |
|---|---|
| Free | 0 |
| Pro | 10 |
| Business | 500 |
AI Instructies (Prompts)
Beheer meerdere systeemprompts en stuur het gedrag, de toon en de rol van de AI.
Een systemprompt bepaalt hoe de AI zich gedraagt: toon, rol, beperkingen en context. Je kunt meerdere prompts aanmaken en een standaard instellen.
Mogelijkheden
- Meerdere prompts aanmaken met een naam en slug
- Een standaard prompt instellen die altijd wordt gebruikt
- Per pagina een andere prompt activeren via shortcode:
[promptskills_chatbot prompt="sales"]
Prompt Generator Pro/Business
Beschrijf kort je bedrijf en doelgroep, en laat de AI automatisch een concept-systemprompt schrijven.
URL-routing Pro/Business
Activeer automatisch de juiste prompt op basis van het URL-patroon van de huidige pagina. Bijvoorbeeld: /winkel/ → prompt “verkoop”.
FAQ – Statische antwoorden
Vaste antwoorden op veelgestelde vragen — geen API-kosten, directe respons.
Definieer veelgestelde vragen met vaste antwoorden. Als een gebruikersbericht overeenkomt met een FAQ-vraag, wordt het statische antwoord direct getoond — zonder API-aanroep.
Voordelen
- Snellere respons dan via de AI
- Geen API-kosten voor standaardvragen
- Consistente antwoorden op gevoelige onderwerpen
Lead Capture
Verzamel naam en e-mailadres vóór het eerste bericht. Leads zijn direct terug te vinden in het dashboard.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Lead Capture | uit | Inschakelen of uitschakelen |
| Formuliertitel | Stel jezelf voor | — |
| Naam | optional | none, optional of required |
| E-mailadres | required | none, optional of required |
Verzamelde leads zijn terug te vinden onder Configuratie → Gesprekken → Leads.
Vereist Pro of Business plan.
Human Handover
Bied bezoekers automatisch een doorverwijsknop aan op basis van triggerwoorden.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Handover | uit | Inschakelen of uitschakelen |
| Triggerwoorden | medewerker,agent,contact,bellen | Kommagescheiden |
| Tekst | Wil je liever met een medewerker praten? | — |
| Knoplabel | Neem contact op | — |
| URL | — | Link naar contactpagina, e-mail of telefoonnummer |
Conversation Starters
Klikbare startvragen direct onder het welkomstbericht — zonder dat de bezoeker iets hoeft te typen.
Voer elke startvraag op een nieuwe regel in via Configuratie → Gesprek → Conversation Starters.
Standaard startvragen
Proactieve berichten
Laat de widget automatisch openen na een instelbaar aantal seconden om passieve bezoekers te activeren.
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Proactieve berichten | uit | Inschakelen of uitschakelen |
| Vertraging | 5 sec | Wachttijd voordat de widget opent (1–60 sec) |
| Bericht | Hallo! Kan ik je ergens mee helpen? | — |
| URL-patroon | — | Alleen activeren op pagina’s met dit patroon (leeg = alle) |
Proactieve berichten worden niet meegestuurd als AI-context.
Quick Replies
De AI retourneert klikbare vervolgvragen — de gebruiker hoeft ze alleen aan te klikken.
Activeer via Configuratie → Gesprek → Quick Replies inschakelen. De AI geeft als onderdeel van zijn antwoord klikbare vervolgvragen terug via een specifiek JSON-formaat.
Vereist Pro of Business plan.
WooCommerce integratie
Verbind de chatbot met je WooCommerce-winkel zodat de AI productinformatie kent.
Handmatige sync
Ga naar Kennisbank
Ga naar Configuratie → Kennisbank.
Klik op importeren
Klik op WooCommerce producten importeren.
Klaar
De plugin importeert producttitels, beschrijvingen, prijzen en categorieën.
Automatische sync Business
| Instelling | Standaard | Omschrijving |
|---|---|---|
| Auto-sync | uit | Dagelijkse of wekelijkse automatische sync |
| Frequentie | daily | daily of weekly |
| Categorieën | alle | Kommagescheiden categorie-ID’s (leeg = alles) |
A/B Testing
Test twee AI-instructies tegelijkertijd en vergelijk CSAT-scores om de beste prompt te vinden.
Bezoekers worden willekeurig aan variant A of B toegewezen. Via de CSAT-scores (duim omhoog/omlaag) zie je welke prompt beter presteert.
Ga naar AI Instructies
Ga naar AI Instructies → A/B Test.
Selecteer prompts
Selecteer Prompt A en Prompt B.
Activeer de test
Schakel de test in. Resultaten zijn terug te vinden in het Analytics-dashboard.
Vereist Pro of Business plan.
Webhooks
Stuur automatisch HTTP POST-verzoeken naar Zapier, Make of je eigen CRM bij bepaalde events.
Beschikbare events
| Event | Wanneer |
|---|---|
| chat.completed | Na elk volledig AI-antwoord |
| lead.captured | Als Lead Capture een naam/e-mail ontvangt |
| csat.submitted | Als een gebruiker duim omhoog/omlaag geeft |
Beveiliging: Elk verzoek bevat een X-PSC-Signature header — een HMAC-SHA256 handtekening op basis van een instelbaar geheim. Verifieer deze handtekening om te bevestigen dat het verzoek van jouw site afkomstig is.
Voorbeeld payload (chat.completed)
Analytics & Rapporten
Inzicht in gesprekken, tokenverbruik, CSAT-scores en leads per plan.
Beschikbare statistieken
| Statistiek | Free | Pro | Business |
|---|---|---|---|
| Totaal gesprekken | ✓ | ✓ | ✓ |
| Tokens gebruikt vandaag | ✓ | ✓ | ✓ |
| Gesprekslog + zoeken | — | ✓ | ✓ |
| CSAT-overzicht | — | ✓ | ✓ |
| CSV-export gesprekken | — | ✓ | ✓ |
| Tokenverbruik over tijd | — | — | ✓ |
| Leads-overzicht + export | — | — | ✓ |
| A/B test-vergelijking | — | — | ✓ |
Gesprekken worden automatisch verwijderd na de ingestelde retentieperiode (standaard 90 dagen). Stel in op 0 om automatisch verwijderen uit te schakelen.
Shortcode referentie
Alle parameters van [promptskills_chatbot] op een rij.
Parameters
| Parameter | Voorbeeld | Omschrijving |
|---|---|---|
| prompt | prompt=”sales” | Gebruik een specifieke AI-instructie (slug) op deze pagina |
| welcome | welcome=”Goedendag!” | Overschrijf het welkomstbericht |
| theme | theme=”dark” | light, dark of auto |
| launcher_text | launcher_text=”Hulp nodig?” | Overschrijf de labeltekst van de launcher |
Voorbeelden
Plannen & limieten
Overzicht van alle functies per plan: Free, Pro en Business.
| Functie | Free | Pro | Business |
|---|---|---|---|
| AI-chat (OpenAI + Claude) | ✓ | ✓ | ✓ |
| Streaming antwoorden (SSE) | ✓ | ✓ | ✓ |
| FAQ statische antwoorden | ✓ | ✓ | ✓ |
| Conversation Starters | ✓ | ✓ | ✓ |
| Human Handover | ✓ | ✓ | ✓ |
| CSAT-stemming | ✓ | ✓ | ✓ |
| Kennisbank-items | 0 | 10 | 500 |
| Analytics dashboard (volledig) | — | ✓ | ✓ |
| Lead Capture | — | ✓ | ✓ |
| Proactieve berichten | — | ✓ | ✓ |
| Quick Replies | — | ✓ | ✓ |
| URL-routing (prompts per pagina) | — | ✓ | ✓ |
| CSV-export gesprekken | — | ✓ | ✓ |
| Branding verwijderen | — | ✓ | ✓ |
| A/B Testing | — | — | ✓ |
| Webhooks (Zapier/Make) | — | — | ✓ |
| WooCommerce auto-sync | — | — | ✓ |
Systeemvereisten
Minimale en aanbevolen serveromgeving voor Promptskills.
| Vereiste | Minimum |
|---|---|
| WordPress | 6.0 of hoger |
| PHP | 8.0 of hoger |
| PHP-extensies | cURL, OpenSSL (aanbevolen) |
| MySQL | 5.7 of hoger |
Aanbevolen: PHP 8.1 of 8.2, OpenSSL beschikbaar (voor AES-256-CBC encryptie van API-sleutels) en WP-Cron actief (voor kennisbank auto-sync en log cleanup).
Veelgestelde vragen
Antwoorden op de meest gestelde vragen over Promptskills.
Wordt mijn API-sleutel veilig opgeslagen?
Ja. De API-sleutel wordt versleuteld opgeslagen met AES-256-CBC, gebaseerd op de SECURE_AUTH_KEY uit jouw wp-config.php. Zolang OpenSSL beschikbaar is op je server, is de sleutel versleuteld in de database.
Werkt de plugin met een page builder zoals Divi of Elementor?
Ja. De widget laadt automatisch via wp_body_open of wp_footer en is onafhankelijk van de gebruikte page builder. Je kunt ook de shortcode gebruiken.
Kan ik de chatbot op slechts één pagina tonen?
Standaard laadt de widget op alle pagina’s. Wil je dit beperken, gebruik dan de shortcode alleen op de gewenste pagina(‘s) en verwijder de automatische weergave via een filter in je thema.
Wat gebeurt er met gesprekken als ik de plugin verwijder?
Bij het verwijderen van de plugin worden alle databasetabellen en plugin-opties automatisch gewist via uninstall.php. Er blijven geen gegevens achter.
Ondersteunt de plugin meerdere talen?
De widget detecteert automatisch de browsertaal van de gebruiker en past de interface-teksten aan (NL, EN, DE, FR, ES). De AI-antwoorden zijn afhankelijk van de geconfigureerde systemprompt en taalinstelling.
Hoe reset ik een gesprek?
De gebruiker kan op de reset-knop (↺) in de widget-header klikken om een nieuw gesprek te starten. De gesprekshistorie in localStorage wordt gewist.
Changelog
Overzicht van alle versies en wijzigingen.
v1.0.6 — Huidig
- Kleine bugfixes en stabiliteitverbeteringen.
v1.0.0 — 2026-03-21
- Scroll-naar-beneden knop bij nieuwe berichten buiten beeld
- Copy-to-clipboard knop per botbericht
- Offline-detectie met banner in het chatvenster
- Rate-limit countdown (60 seconden bij HTTP 429)
- Uitbreidbare textarea (automatisch meeschalend)
- Automatische caching-uitsluitingen voor WP Rocket en LiteSpeed Cache
- Systeemvereistencheck bij activatie (PHP 8.0+, cURL)
- Privacy Policy integratie
- Admin setup-melding als API-sleutel nog niet is ingesteld
v0.9.0 — 2026-03-07
- Multi-taal widget (NL, EN, DE, FR, ES — automatische detectie)
- Typewriter-animatie met instelbare snelheid (Pro/Business)
- Reset-knop in de widget-header
- Gesprekspersistentie via localStorage (24u TTL)
v0.8.0 — 2026-02-15
- WooCommerce auto-sync (Business)
- Webhooks met HMAC-beveiliging (Business)
- A/B testing van prompts met CSAT-vergelijking (Pro/Business)
- Conversatie-export naar CSV en PDF (Pro/Business)
- Proactieve berichten
v0.7.0 — 2026-01-28
- Lead Capture formulier (Pro/Business)
- Human Handover met triggerwoorden
- Conversation Starters
v0.6.0 — 2026-01-10
- GDPR consent-banner (configureerbaar)
- Log-retentie met automatische WP-cron cleanup
- Quick Replies
v0.5.0 — 2025-12-18
- OpenAI & Claude API-sleutel encryptie (AES-256-CBC)
- Rate limiting
- FAQ statische antwoorden
v0.4.0 — 2025-12-01
- Analytics dashboard
- CSV-export gesprekken en leads
- CSAT-stemming (duim omhoog/omlaag)
v0.3.0 — 2025-11-15
- WooCommerce kennisbank (handmatige productsync)
- Prompt-bibliotheek (meerdere prompts beheren)
- Shortcode
[promptskills_chatbot]
v0.2.0 — 2025-11-01
- Streaming chat via Server-Sent Events (SSE)
- RAG kennisbank (documenten als AI-context)
- Donker thema (light/dark/auto)
v0.1.0 — 2025-10-15
- Eerste release: basis AI-chat via OpenAI REST API
- WordPress admin-instellingen
- Widget autoload op alle pagina’s