Documentatie · Ontwikkelaarsdocumentatie
Sanitizing en Escaping
Deze pagina beschrijft de aanpak van de plugin voor sanitizing en escaping op hoofdlijnen. Interne helper-namen, validator-pipelines en exacte maskeerregels zijn implementatiedetails en worden hier niet gepubliceerd.
Aanpak
De plugin volgt de standaard WordPress beveiligingsrichtlijnen:
- Sanitiseer bij invoer. Elke onbetrouwbare waarde wordt gesanitiseerd met de juiste WordPress API voor het betreffende type voordat deze wordt opgeslagen of gebruikt.
- Escape bij uitvoer. Elke dynamische waarde wordt geëscaped op het moment van renderen met de juiste WordPress escaping-API voor de specifieke context (HTML, attribuut, URL, JavaScript, JSON).
- Valideer, sanitiseer en escape vervolgens. Validatie weigert waarden die buiten het bereik vallen; sanitizing normaliseert de vorm; escaping beschermt de uitvoercontext.
- Maskeer geheimen in diagnostische gegevens. Diagnostische uitvoer bevat nooit leesbare geheimen, tokens, autorisatie-headers of ondertekende aanvraag-headers.
Voor ontwikkelaars
Bij het schrijven van code die integreert met de plugin (aangepaste templates, theme-overrides, hook-callbacks):
- Behandel elke waarde die afkomstig is van request-parameters, opties, post-meta of API's van derden als onbetrouwbaar.
- Gebruik de WordPress sanitizing-API (
sanitize_text_field,sanitize_email,wp_kses_post,absint, enz.) bij invoer. - Gebruik de WordPress escaping-API (
esc_html,esc_attr,esc_url,esc_js,wp_json_encode) op het moment van uitvoer. - Toon geconfigureerde geheimen of inloggegevens nooit in gerenderde uitvoer of logregels.
Ondersteunde openbare integratie-interfaces
Gebruik bij integratie met de plugin bij voorkeur deze stabiele interfaces:
- De beheerinstellingen-UI van de plugin.
- De gedocumenteerde shortcodes.
- Template-overrides op thema-niveau zoals beschreven in Template System And Overrides.
- Het algemene Developer Overview voor oriëntatie.
Interne klassenamen, optiesleutels, databasetabellen, REST- en AJAX-endpoints, cron-hooknamen, capability- en nonce-identificaties, en de release- en update-infrastructuur worden beschouwd als implementatiedetails. Deze kunnen tussen releases zonder voorafgaande kennisgeving wijzigen en maken geen deel uit van het openbare integratiecontract.
Stabiliteits- en wijzigingsbeleid
Alles wat hierboven niet als ondersteunde openbare interface is vermeld, wordt beschouwd als een intern implementatiedetail. Interne API's, opslagstructuren en beveiligingsimplementaties kunnen tussen releases wijzigen. Vertrouw hier niet op vanuit code van derden, thema's of externe systemen. Directe schrijfacties in de database worden niet ondersteund.
Kennisgeving openbare documentatie. Deze pagina biedt uitsluitend een integratie-overzicht op hoofdlijnen. Interne implementatiedetails, privé-API's, interne opslag en beveiligingsgevoelige release-infrastructuur worden afzonderlijk onderhouden en maken geen deel uit van de openbare documentatie. Ondersteunde integratie-interfaces zijn de gedocumenteerde shortcodes, template-overrides, de instellingen-UI en alle uitbreidingspunten die expliciet in deze sectie zijn gepubliceerd.