Thema-instellingen
wpis-settings.json
Section titled “wpis-settings.json”Plaats een optioneel JSON-bestand in het actieve thema (child-thema wanneer er een wordt gebruikt) om pluginopties te overschrijven zonder het tabblad Configuratie in de admin te gebruiken.
{active-theme}/wpis-settings.jsonDe plugin leest het met get_stylesheet_directory(), dus een bestand in het parent-thema wordt niet gebruikt wanneer een child-thema actief is.
Alleen de sleutels die u instelt, worden toegepast. Laat al het andere weg om databasewaarden of codedefaults te behouden.
//-regelcommentaar en /* */-blokcommentaar worden vóór het parsen verwijderd, zodat u een sleutel kunt uitschakelen door die te becommentariëren zonder de rest van het bestand ongeldig te maken.
Voorrang
Section titled “Voorrang”- Sleutel aanwezig in
wpis-settings.json→ die waarde (inclusieffalse,0, of"") - Anders de waarde opgeslagen in de tabel
wpis_settings(tabblad Configuratie in de admin) - Anders de codedefault hieronder vermeld
Het tabblad Configuratie laadt opgeslagen waarden uit de tabel wpis_settings en legt vervolgens de sleutels uit wpis-settings.json eroverheen. Runtime gebruikt SettingsManager::get(), dat het voorkeur geeft aan het JSON-bestand.
Sleutels voor formulierbeveiliging kunnen worden ingesteld via het tabblad Formulaires in de admin. Rewrite-slugs kunnen worden ingesteld via het tabblad Slugs in de admin. Sleutels voor pand-SEO kunnen worden ingesteld via het tabblad SEO in de admin. Als dezelfde sleutel aanwezig is in wpis-settings.json, toont het adminveld die waarde, is het uitgeschakeld, en toont het een melding dat die uit het bestand wordt gelezen. Opslaan overschrijft een door JSON vergrendelde sleutel niet.
Niet-opgeslagen rewrite-slugs vallen terug op de sitelocale via PO-bestanden (_x(..., 'rewrite slug', 'wpis')). Engels behoudt de technische defaults (wpis_estates, city, …). Franse locales gebruiken biens, ville, equipements, en Nederlands (nl_BE, nl_NL) gebruikt panden, stad, voorzieningen. Opgeslagen waarden die nog overeenkomen met die Engelse msgids worden behandeld als niet-ingesteld, zodat de vertaalde default kan gelden. Een slug opslaan die gelijk is aan de huidige localedefault wordt niet gepersisteerd.
Gebruik native JSON-types:
- Booleans:
true/false(de strings"0"/"1"werken ook) - Gehele getallen:
900,60,2 - Strings:
"wpis_estates","agency@example.com"
Een lege string "" overschrijft nog steeds de default. Dat is van belang voor rewrite-slugs: "" wordt als zodanig toegepast.
Eén beveiligingscontrole uitschakelen
Section titled “Eén beveiligingscontrole uitschakelen”{ "formSecurityFastSubmission": false}Volledig voorbeeld
Section titled “Volledig voorbeeld”{ "debug": false,
"formSecurityEnabled": true, "formSecurityCsrf": true, "formSecurityHoneypot": true, "formSecurityFastSubmission": true, "formSecurityRateIp": true, "formSecuritySimilarFields": true, "formSecurityCsrfTtl": 900, "formSecurityFastSubmissionSeconds": 2, "formSecurityRateTtl": 60, "formSecurityWeeklyReport": true, "formSecurityWeeklyReportEmail": "agency@example.com",
"formEnableContactSaving": true, "formEnableRecipientEmail": true, "formEnableClientEmail": true, "formEmailDefaultReceiver": "agency@example.com", "formEmailDefaultSender": "noreply@example.com", "formEmailDefaultSenderName": "Agency name",
"enableImportSystem": true, "enableImportCustomPostType": false, "customPostType": "", "enableProjectManagement": false, "enableProjectManagementCustomPostType": false, "projectCustomPostType": "", "enableAgentManagement": false, "enableAgentManagementCustomPostType": false, "agentCustomPostType": "", "enableTaxonomies": false,
"postTypeEstateSlug": "wpis_estates", "postTypeProjectSlug": "wpis_projects", "postTypeAgentSlug": "wpis_agents", "taxonomyEstateCitySlug": "city", "taxonomyEstateCategorySlug": "category", "taxonomyEstatePurposeSlug": "type", "taxonomyEstateAmenetySlug": "amenities",
"enableSyncAutomation": false, "enableCronImport": false, "enableCronUpdate": false, "enableCronRemove": false, "autoRemoveUpdatedEstates": false, "enablePartialRemove": false,
"enableEstateSeo": true, "enableEstateJsonLd": true, "enableEstateOpenGraph": true, "noindexSoldEstates": true, "noindexSoftDeletedEstates": true,
"enableVueShortcodes": false}| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
debug |
bool | false |
Extra synchronisatielogging en debugvlaggen die door admin-API-antwoorden worden teruggegeven. |
Formulierbeveiliging
Section titled “Formulierbeveiliging”Publieke formulieren ([wpis-form-contact], [wpis-form-estate], [wpis-form-evaluation]) voeren deze controles uit voordat een contact wordt opgeslagen of e-mails worden verzonden. Alle controles staan standaard aan. Ze kunnen ook worden gewijzigd via het tabblad Formulaires in de admin; sleutels die aanwezig zijn in wpis-settings.json blijven daar vergrendeld.
Controlevolgorde: CSRF → honeypot → snelle indiening → rate / IP → gelijkaardige velden.
Snelle indiening gebruikt de tijdstempel van het CSRF-token. Het uitschakelen van formSecurityCsrf slaat snelle indiening ook over.
| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
formSecurityEnabled |
bool | true |
Hoofdschakelaar. false slaat elke controle over en injecteert het token of de honeypot niet. |
formSecurityCsrf |
bool | true |
Vereist een geldig _wpis_token. Ongeldige of verlopen tokens geven een fout terug. |
formSecurityHoneypot |
bool | true |
Verborgen veld website. Indien ingevuld, geeft de plugin een nep-succes terug en slaat het contact niet op. |
formSecurityFastSubmission |
bool | true |
Weigert posts die minder dan N seconden na uitgifte van het token worden verzonden. Vereist CSRF. |
formSecurityRateIp |
bool | true |
Eén verbruikende indiening per client-IP per venster. |
formSecuritySimilarFields |
bool | true |
Weigert wanneer voornaam en achternaam hetzelfde zijn (na trim en case-fold). |
formSecurityCsrfTtl |
int (seconden) | 900 |
Levensduur van het CSRF-token. Niet-positieve waarden vallen terug op 900. |
formSecurityFastSubmissionSeconds |
int (seconden) | 2 |
Drempel voor snelle indiening. Niet-positieve waarden vallen terug op 2. |
formSecurityRateTtl |
int (seconden) | 60 |
IP-rate-limitvenster. Niet-positieve waarden vallen terug op 60. |
formSecurityWeeklyReport |
bool | true |
Verzendt elke maandag om 08:00 (WordPress-tijdzone) een wekelijkse e-mail met geblokkeerde indieningen van de laatste 7 dagen. Er wordt geen e-mail verzonden wanneer er geen rijen zijn. |
formSecurityWeeklyReportEmail |
string | Site-admin-e-mail | Inbox voor het wekelijkse rapport van geblokkeerde indieningen. |
Boolean false, 0, en "0" schakelen een controle uit. Ontbrekende sleutels behouden de default (ingeschakeld).
Formulieren
Section titled “Formulieren”| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
formEnableContactSaving |
bool | true |
Slaat indieningen op in de WordPress-contactentabel. |
formEnableClientEmail |
bool | true |
Verzendt een meldingse-mail naar het agentschap wanneer een formulier wordt ingediend. |
formEnableRecipientEmail |
bool | true |
Verzendt een bevestigingse-mail naar de bezoeker. |
formEmailDefaultReceiver |
string | Site-admin-e-mail | Inbox voor agentschapsmeldingen. |
formEmailDefaultSender |
string | Site-admin-e-mail | From-adres op de bevestiging aan de bezoeker. |
formEmailDefaultSenderName |
string | Sitenaam | From-naam op de bevestiging aan de bezoeker. |
Import / posttypes
Section titled “Import / posttypes”| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
enableImportSystem |
bool | false |
Maakt WordPress-posts aan vanuit ImmoSync-panden. |
enableImportCustomPostType |
bool | false |
Importeert panden in een bestaand posttype in plaats van wpis_estates. |
customPostType |
string | — | Doelposttype wanneer enableImportCustomPostType aan staat. |
enableProjectManagement |
bool | false |
Importeert en beheert projecten. |
enableProjectManagementCustomPostType |
bool | false |
Importeert projecten in een bestaand posttype in plaats van wpis_projects. |
projectCustomPostType |
string | — | Doelposttype wanneer enableProjectManagementCustomPostType aan staat. |
enableAgentManagement |
bool | false |
Importeert en beheert agents. |
enableAgentManagementCustomPostType |
bool | false |
Importeert agents in een bestaand posttype in plaats van wpis_agents. |
agentCustomPostType |
string | — | Doelposttype wanneer enableAgentManagementCustomPostType aan staat. |
enableTaxonomies |
bool | — | Registreert taxonomieën stad, categorie, bestemming en voorzieningen op panden. |
Rewrite-slugs
Section titled “Rewrite-slugs”Gebruikt als de rewrite.slug van het overeenkomende posttype of de taxonomie. Opslaan via het tabblad Slugs in de admin regenereert permalinks bij het volgende verzoek. Als u een slug alleen in wpis-settings.json wijzigt, spoel dan de permalinks door (Instellingen → Permalinks → Opslaan).
Niet-opgeslagen defaults volgen de sitelocale (zie voorrang). De Engelse msgid staat hieronder vermeld.
| Sleutel | Type | Standaard (en) | Beschrijving |
|---|---|---|---|
postTypeEstateSlug |
string | wpis_estates |
Permalink-slug van het pandposttype. |
postTypeProjectSlug |
string | wpis_projects |
Permalink-slug van het projectposttype. |
postTypeAgentSlug |
string | wpis_agents |
Permalink-slug van het agentposttype. |
taxonomyEstateCitySlug |
string | city |
Slug van de stadstaxonomie. |
taxonomyEstateCategorySlug |
string | category |
Slug van de categorietaxonomie. |
taxonomyEstatePurposeSlug |
string | type |
Slug van de taxonomie voor transactietype. |
taxonomyEstateAmenetySlug |
string | amenities |
Slug van de voorzieningentaxonomie. De spelling Amenety van de sleutel is vereist. |
Synchronisatie-automatisering
Section titled “Synchronisatie-automatisering”| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
enableSyncAutomation |
bool | — | Staat cron-gestuurde synchronisatie toe. Inschakelen vanuit de admin genereert ook cronKey als die ontbreekt. Inbound REST-auth vereist deze sleutel niet langer; het activatietoken wordt eerst gebruikt. |
enableCronImport |
bool | — | Cronfase: nieuwe panden aanmaken. |
enableCronUpdate |
bool | — | Cronfase: bestaande panden bijwerken. |
enableCronRemove |
bool | — | Cronfase: panden verwijderen die het remote feed hebben verlaten. |
autoRemoveUpdatedEstates |
bool | — | Verwijdert en herimporteert panden waarvan de afbeeldingen zijn gewijzigd. |
enablePartialRemove |
bool | — | Soft-delete in plaats van de post te verwijderen: behoudt het pand en de hoofdafbeelding, stelt wpis_soft_deleted in. |
Pand-SEO
Section titled “Pand-SEO”Wordt uitgegeven op singular geïmporteerde pandpagina’s. Alle vijf sleutels kunnen ook worden gewijzigd via het tabblad Configuratie SEO in de admin; sleutels die aanwezig zijn in wpis-settings.json blijven daar vergrendeld.
JSON-LD vereist enableEstateSeo en enableEstateJsonLd. Open Graph vereist enableEstateSeo en enableEstateOpenGraph. Noindex vereist enableEstateSeo plus de overeenkomende noindex-vlag. Zie Estate SEO.
| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
enableEstateSeo |
bool | true |
Hoofdschakelaar. false slaat JSON-LD, Open Graph en robots-overrides over. |
enableEstateJsonLd |
bool | true |
Geeft schema.org RealEstateListing / Offer / Place JSON-LD uit. Genegeerd wanneer SEO uit staat. |
enableEstateOpenGraph |
bool | true |
Geeft Open Graph-tags voor afbeelding, prijs en status uit. Genegeerd wanneer SEO uit staat. |
noindexSoldEstates |
bool | true |
noindex, follow op panden met wpis_status_id = 3. Genegeerd wanneer SEO uit staat. |
noindexSoftDeletedEstates |
bool | true |
noindex, follow op panden met wpis_soft_deleted. Genegeerd wanneer SEO uit staat. |
Shortcodes
Section titled “Shortcodes”| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
enableVueShortcodes |
bool | false |
Laadt de publieke listing-shortcode-assets (Vue). Laat uit als die shortcodes niet worden gebruikt. |
Intern / ongebruikt
Section titled “Intern / ongebruikt”| Sleutel | Type | Standaard | Beschrijving |
|---|---|---|---|
cronKey |
string | Gegenereerd wanneer automatisering is ingeschakeld | Legacy-geheim voor cron-URL’s. Inbound REST (/sync, /logs, /blocked-submissions) geeft de voorkeur aan het activatietoken opgeslagen in wpis_connexion. Commit deze waarde niet naar een openbare repository. |
estatePageId |
mixed | — | Aanvaard door het admin-endpoint voor het opslaan van instellingen. Ongebruikt bij runtime. |