Achtung!

Dieser Artikel enthält PHP-Code und richtet sich an Entwickler. Wir stellen diesen Code als Service zur Verfügung, bieten jedoch keine Unterstützung für Codeanpassungen oder die Entwicklung durch Dritte.

Für zusätzliche Hilfe siehe das Tutorial von WPBeginner zum Hinzufügen von benutzerdefiniertem Code.

Schließen

So blockieren Sie Formularübermittlungen mit anstößigen Wörtern

Möchten Sie Formulareinsendungen blockieren, die anstößige Wörter enthalten? Sie können ganz einfach eine Liste von Schimpfwörtern erstellen, die jede Formulareinsendung stoppt, wenn sie in Ihrem Absatztext oder in einem Feld Einzeiliger Text mithilfe eines kleinen Code-Snippets gefunden werden. In diesem Tutorial führen wir Sie durch die Schritte, wie Sie dies mit PHP erreichen.

Erstellen Ihres Formulars

Zuerst müssen Sie ein neues Formular erstellen und entweder einen Absatztext oder einen Einzeiligen Text hinzufügen.

Wenn Sie Hilfe beim Erstellen eines Formulars benötigen, lesen Sie bitte diese Dokumentation.

Fügen Sie ein Formularfeld für einzeiligen oder Absatztext zu Ihrem neuen Formular hinzu

Blockieren von Einsendungen mit anstößigen Wörtern

Als Nächstes erstellen Sie eine Liste von Wörtern, die Sie Ihrem Filter für anstößige Wörter hinzufügen möchten. Sobald Sie die zu blockierenden Wörter identifiziert haben, müssen Sie einen dieser Snippets zu Ihrer Website hinzufügen. Wenn Sie Hilfe beim Hinzufügen von Snippets zu Ihrer Website benötigen, lesen Sie bitte diese Dokumentation.

Sie fügen jedes Wort durch ein Komma getrennt zu Ihrem $blocked_words hinzu.

Formularfeld Absatztext

/**
 * Prevent profanity words from Paragraph Text form fields.
 *
 * @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
 */

function wpf_dev_profanity_filter_paragraph( $field_id, $field_submit, $form_data ) {

        // Create your list of profanity words separated by commas
	$blocked_words = array( 
		'badword1', 
		'badword2'
	);

    foreach( $blocked_words as $word ) {
        if(strpos($field_submit, $word) !== FALSE ) {
            wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
            return;
        }
    }

}

add_action( 'wpforms_process_validate_textarea', 'wpf_dev_profanity_filter_paragraph', 10, 3 );

Die Verwendung dieses Snippets blockiert Einsendungen, die anstößige Wörter im Formularfeld Absatztext enthalten

Formularfeld Einzeiliger Text

/**
 * Prevent profanity words from Single Line Text form fields.
 *
 * @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
 */

function wpf_dev_profanity_filter_single_text( $field_id, $field_submit, $form_data ) {

        // Create your list of profanity words separated by commas
	$blocked_words = array( 
		'badword1', 
		'badword2'
	);

    foreach( $blocked_words as $word ) {
        if(strpos($field_submit, $word) !== FALSE ) {
            wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
            return;
        }
    }

}

add_action( 'wpforms_process_validate_text', 'wpf_dev_profanity_filter_single_text', 10, 3 );

Formularfeld Rich Text

/**
 * Prevent profanity words from Rich Text form fields.
 *
 * @link https://wpforms.com/developers/how-to-block-form-submissions-containing-profanity/
 */

function wpf_dev_profanity_filter_rich_text( $field_id, $field_submit, $form_data ) {

        // Create your list of profanity words separated by commas
	$blocked_words = array( 
		'badword1', 
		'badword2'
	);

    foreach( $blocked_words as $word ) {
        if(strpos($field_submit, $word) !== FALSE ) {
            wpforms()->process->errors[ $form_data[ 'id' ] ][ $field_id ] = esc_html__( 'No profanity allowed.', 'plugin-domain' );
            return;
        }
    }

}

add_action( 'wpforms_process_validate_richtext', 'wpf_dev_profanity_filter_rich_text', 10, 3 );

Und das ist alles! Sie haben jetzt einen Filter für anstößige Wörter für Ihre Formularfelder Einzeiliger Text und Absatztext erstellt und implementiert. Möchten Sie verhindern, dass URLs in Ihr Formular eingegeben werden? Sehen Sie sich unser Tutorial an So blockieren Sie URLs in den Formularfeldern.

Referenzaktionen