/** * MainWP Code Snippet — Praktijk-sites (Fluent Forms + Elementor JetFormBuilder) * * PLAK DIT in MainWP > Code Snippets > New Snippet. * Type: "Execute on Site" (niet "Return Info") * Doel: tag "Praktijk" * * Alle option-keys hieronder zijn afgeleid uit de LIVE opslag-payload van * Fluent Forms op adamdoctors.nl — niet gegokt. * * Wat het doet (idempotent — meermaals draaien is veilig): * 1. E-mail samenvattingen UIT (email_report.status = 'no') * 2. IP logging uitschakelen AAN (misc.isIpLogingDisabled = true) * 3. Honeypot security AAN (misc.honeypotStatus = 'yes') * 4. Token Based Spam Protection AAN (misc.tokenBasedProtectionStatus = 'yes') * 5. Demo-formulieren "Contact Form Demo" + "Subscription Form" verwijderen * — ALLEEN als ze 0 inzendingen hebben (veiligheidsslot) * 6. Elementor Custom Code "JetFormBuilder" vervangen door de nieuwe CSS/JS * * Wat het NIET doet: de licentie activeren. Die sleutel voer je zelf in. */ global $wpdb; $log = array(); /* ------------------------------------------------------------------ * * 1. Globale Fluent Forms instellingen (misc) * ------------------------------------------------------------------ */ $opt = get_option( '_fluentform_global_form_settings' ); if ( is_array( $opt ) ) { if ( ! isset( $opt['misc'] ) || ! is_array( $opt['misc'] ) ) { $opt['misc'] = array(); } // Alleen deze drie sleutels aanraken; de rest blijft ongemoeid. $opt['misc']['isIpLogingDisabled'] = true; // let op: FF schrijft "Loging" met één g $opt['misc']['honeypotStatus'] = 'yes'; $opt['misc']['tokenBasedProtectionStatus'] = 'yes'; update_option( '_fluentform_global_form_settings', $opt ); $log[] = 'misc: ip-logging uit, honeypot aan, token-protection aan'; } else { $log[] = 'LET OP: _fluentform_global_form_settings niet gevonden of geen array'; } /* ------------------------------------------------------------------ * * 2. E-mail samenvattingen uitzetten * De optienaam kan per FF-versie verschillen, dus we zoeken de optie * op aan de hand van zijn inhoud ("sending_day") in plaats van te gokken. * ------------------------------------------------------------------ */ $report_opts = $wpdb->get_col( "SELECT option_name FROM {$wpdb->options} WHERE option_name LIKE '%fluentform%' AND option_value LIKE '%sending_day%'" ); if ( empty( $report_opts ) ) { $log[] = 'e-mail samenvatting: geen optie gevonden (mogelijk al nooit ingesteld)'; } foreach ( $report_opts as $name ) { $val = get_option( $name ); if ( is_array( $val ) && isset( $val['status'] ) ) { $val['status'] = 'no'; update_option( $name, $val ); $log[] = 'e-mail samenvatting uit via optie: ' . $name; } } /* ------------------------------------------------------------------ * * 3. Demo-formulieren verwijderen (alleen zonder inzendingen) * ------------------------------------------------------------------ */ $forms_t = $wpdb->prefix . 'fluentform_forms'; $meta_t = $wpdb->prefix . 'fluentform_form_meta'; $entries_t = $wpdb->prefix . 'fluentform_submissions'; if ( $wpdb->get_var( "SHOW TABLES LIKE '{$forms_t}'" ) === $forms_t ) { $targets = array( 'Contact Form Demo', 'Subscription Form' ); foreach ( $targets as $title ) { $form_id = $wpdb->get_var( $wpdb->prepare( "SELECT id FROM {$forms_t} WHERE title = %s", $title ) ); if ( ! $form_id ) { $log[] = "formulier '{$title}': niet aanwezig"; continue; } // Veiligheidsslot: nooit een formulier met inzendingen weggooien. $count = 0; if ( $wpdb->get_var( "SHOW TABLES LIKE '{$entries_t}'" ) === $entries_t ) { $count = (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM {$entries_t} WHERE form_id = %d", $form_id ) ); } if ( $count > 0 ) { $log[] = "formulier '{$title}': OVERGESLAGEN — heeft {$count} inzending(en)"; continue; } $wpdb->delete( $forms_t, array( 'id' => $form_id ), array( '%d' ) ); if ( $wpdb->get_var( "SHOW TABLES LIKE '{$meta_t}'" ) === $meta_t ) { $wpdb->delete( $meta_t, array( 'form_id' => $form_id ), array( '%d' ) ); } $log[] = "formulier '{$title}' (id {$form_id}) verwijderd"; } } else { $log[] = 'Fluent Forms tabellen niet gevonden'; } /* ------------------------------------------------------------------ * * 4. Elementor Custom Code "JetFormBuilder" vervangen * ------------------------------------------------------------------ */ $new_code = <<<'JFBCODE' JFBCODE; /* * LET OP: de titel verschilt per site! * adamdoctors.nl -> "JetFormBuilder" * 043arts.nl -> "FormBuilder" * Daarom matchen we op '%FormBuilder%', wat beide dekt. */ $snippets = $wpdb->get_results( "SELECT ID, post_title, post_content FROM {$wpdb->posts} WHERE post_type = 'elementor_snippet' AND post_status = 'publish' AND post_title LIKE '%FormBuilder%'" ); if ( empty( $snippets ) ) { $log[] = 'Elementor snippet "*FormBuilder*": NIET GEVONDEN'; } foreach ( $snippets as $s ) { // Al bijgewerkt? Dan overslaan (houdt de run idempotent en snel). if ( trim( $s->post_content ) === trim( $new_code ) ) { $log[] = 'Elementor snippet "' . $s->post_title . '" (id ' . $s->ID . ') was al up-to-date'; continue; } // wp_update_post ontsnapt content niet stuk; slashes toevoegen is nodig. wp_update_post( array( 'ID' => $s->ID, 'post_content' => wp_slash( $new_code ), ) ); $log[] = 'Elementor snippet "' . $s->post_title . '" (id ' . $s->ID . ') vervangen'; } /* ------------------------------------------------------------------ * * Rapport * ------------------------------------------------------------------ */ echo get_bloginfo( 'url' ) . "\n"; echo implode( "\n", $log );

Laatste nieuws

Afscheid Augusta

Na jarenlang een vertrouwd gezicht te zijn geweest voor veel mensen zal Augusta vanaf 16 juni 2026 stoppen met haar werkzaamheden als praktijkonder...
Nieuwsbrief Huisartsenpraktijk Lepelaar april 2026  Vertrek praktijkondersteuner Augusta Tot mijn spijt moet ik u mededelen dat Augusta na 17 jaar ...

Lage rugklachten

Lage rugklachten Lage rugklachten komen veel voor en kunnen erg vervelend zijn. We leggen uit wat je zelf kunt doen en wanneer het verstandig is om...

Beter slapen

Goed slapen is belangrijk voor je gezondheid en welzijn. In dit bericht lees je wat oorzaken van slecht slapen kunnen zijn en wat je zelf kunt doen...

Overgewicht en Obesitas

In dit bericht informeren we je over overgewicht en obesitas, hoe je kunt nagaan of je een gezond gewicht hebt en wat je zelf kunt doen om gezonder...

Blaasontsteking

Als je last hebt van een blaasontsteking kan je klachten ervaren van een pijnlijk of branderig gevoel met plassen en/of je moet vaak en steeds maar...

Vermoeidheid

Veel mensen hebben in hun leven wel eens te maken met een periode van moeheid: je voelt je minder fit en hebt weinig energie. Meestal gaan deze kla...

Wratten

Wratten worden veroorzaakt door een infectie met het humaan papilloma virus (HPV). Via kleine wondjes raakt de huid geïnfecteerd met het virus. De ...

Het Centrum voor levensvragen Eemland

Het leven brengt telkens weer nieuwe fases en daar bij horen vragen. U voelt zich eenzaam of krijgt te maken met ziekte, verlies, kwetsbaarheid of ...