Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Wie man das Navigations-Popup für Formulare in WordPress bestätigt

Wenn eine Seite versehentlich geschlossen wird, ohne dass ein Kommentar abgegeben wurde, oder wenn ein Formular nur halb ausgefüllt ist, kann das sehr frustrierend sein. Kürzlich fragte uns einer unserer Benutzer, ob es möglich sei, seinen Besuchern ein Popup zur Bestätigung der Navigation anzuzeigen.

Dieses winzige Popup-Fenster warnt die Benutzer und verhindert, dass sie versehentlich halb ausgefüllte und nicht abgeschickte Formulare hinterlassen. Es ist eine gute Möglichkeit, die Benutzererfahrung zu verbessern und zu verhindern, dass die Besucher etwas von Grund auf neu beginnen müssen.

Wenn diese Funktion jedoch nicht richtig eingerichtet ist, kann sie lästig sein und Ihre Website stören und die Benutzer frustrieren. Sie brauchen eine zuverlässige Methode, um diese Funktion reibungslos hinzuzufügen und diese Probleme zu vermeiden.

Deshalb wollen wir Ihnen zeigen, wie Sie dies mit einem individuell erstellten Plugin tun können. Keine Sorge, es ist einfacher als Sie denken!

In diesem Artikel zeigen wir Ihnen, wie Sie das Navigations-Popup für WordPress-Formulare anzeigen können.

Confirm navigation popup when user leaves a form unsubmitted

Was ist ein Popup zur Bestätigung der Navigation? Warum brauchen Sie es?

Nehmen wir an, ein Benutzer schreibt einen Kommentar in Ihrem WordPress-Blog. Er hat bereits einige Zeilen geschrieben, aber er wird abgelenkt und vergisst, Kommentare abzuschicken. Wenn sie nun ihren Browser schließen, geht der Kommentar verloren.

Das Popup-Fenster zur Bestätigung der Navigation gibt ihnen die Möglichkeit, ihren Kommentar zu beenden.

Diese Funktion wird in der Ansicht des WordPress Editors für Beiträge in Aktion gezeigt. Wenn Sie nicht gespeicherte Änderungen haben und versuchen, die Seite zu verlassen oder den Browser zu schließen, wird ein Warn-Popup angezeigt.

Unsaved changes warning popup in WordPress post editor

Die Einrichtung eines Popup-Fensters zur Bestätigung der Navigation kann die Benutzererfahrung, die Konversionsraten und das Vertrauen der Benutzer verbessern.

Und so geht’s: Indem Sie den Benutzern eine Warnfunktion anbieten, zeigen Sie, dass Ihnen die Erfahrung Ihrer Benutzer wichtig ist, was die Loyalität und die Wiederbesuche fördern kann. Benutzer füllen eher Formulare oder Kommentare aus, wenn sie wissen, dass sie ihren Fortschritt nicht verlieren werden.

Deshalb zeigen wir Ihnen, wie Sie diese Warnfunktion zu WordPress-Kommentaren und anderen Formularen auf Ihrer Website hinzufügen können. Hier ist ein kurzer Überblick über alle Dinge, über die wir in diesem Leitfaden sprechen werden:

Sind Sie bereit? Dann fangen wir an.

Popup zur Navigationsbestätigung für nicht abgeschickte Formulare in WordPress anzeigen

Für dieses Tutorial werden wir ein individuelles Plugin erstellen, aber keine Sorge. Sie können das Plugin auch am Ende dieses Tutorials herunterladen, um es auf Ihrer Website zu installieren.

Zum besseren Verständnis des Codes möchten wir Sie jedoch bitten, Ihr eigenes Plugin zu erstellen. Sie können dies zunächst auf einer lokalen Installation oder einer Website tun.

Zunächst müssen Sie einen neuen Ordner auf Ihrem Computer erstellen und ihn confirm-leaving nennen. Innerhalb des confirm-leaving-Ordners erstellen Sie einen weiteren Ordner und nennen ihn js.

Öffnen wir nun einen einfachen Texteditor wie Notepad und erstellen eine neue Datei. Fügen Sie darin einfach den folgenden Code ein:

[php]
<?php
/**
 * Confirm Leaving
 * Plugin Name: Confirm Leaving
 * Plugin URI:  https://www.wpbeginner.com
 * Description: This plugin shows a warning to users when try they forget to hit submit button on a comment form.
 * Version:     1.0.0
 * Author:      WPBeginner
 * Author URI:  https://www.wpbeginner.com
 * License:     GPL-2.0+
 * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
 */

function wpb_confirm_leaving_js() { 

     wp_enqueue_script( 'Confirm Leaving', plugins_url( 'js/confirm-leaving.js', __FILE__ ), array('jquery'), '1.0.0', true );
}
add_action('wp_enqueue_scripts', 'wpb_confirm_leaving_js');
[/php]

Diese PHP-Funktion fügt einfach eine JavaScript-Datei in das Frontend Ihrer Website ein.

Speichern Sie diese Datei confirm-leaving.php im Hauptordner confirm-leaving.

Nun müssen wir die JavaScript-Datei erstellen, die dieses Plugin lädt. Dazu erstellen Sie eine neue Datei in Ihrem Texteditor und fügen diesen Code darin ein:

[javascript]
jQuery(document).ready(function($) { 

$(document).ready(function() {
    needToConfirm = false;
    window.onbeforeunload = askConfirm;
});

function askConfirm() {
    if (needToConfirm) {
        // Put your custom message here
        return "Your unsaved data will be lost.";
    }
}

$("#commentform").change(function() {
    needToConfirm = true;
});

 })
[/javascript]

Dieser JavaScript-Code erkennt, ob der Benutzer nicht gespeicherte Änderungen im Kommentarformular vorgenommen hat. Wenn ein Benutzer versucht, die Seite zu verlassen oder das Fenster zu schließen, wird ein Warn-Popup angezeigt.

Diese Datei müssen Sie dann als confirm-leaving.js im Ordner js speichern.

Nachdem Sie beide Dateien gespeichert haben, sollte Ihre Ordnerstruktur wie folgt aussehen:

Plugin file structure

Nun müssen Sie eine Verbindung zu Ihrer WordPress Website mit einem FTP-Client herstellen. Eine Schritt-für-Schritt-Anleitung finden Sie in unserer Anleitung zum Hochladen von WordPress-Dateien mit FTP.

Sobald die Verbindung hergestellt ist, müssen Sie den Ordner confirm-leaving in den Ordner/wp-contents/plugins/ auf Ihrer Website hochladen.

Uploading plugin files to your WordPress site

Danach müssen Sie sich im WordPress-Administrationsbereich anmelden und zu „Plugins“ gehen.

Von hier aus sollten Sie das Plugin „Austritt bestätigen“ in der Liste der installierten Plugins sehen. Klicken Sie dann auf den Link „Aktivieren“ darunter.

Activate plugin

Das war’s schon. Sie können nun jeden beliebigen Beitrag auf Ihrer Website besuchen, etwas Text in ein beliebiges Feld des Kommentarformulars schreiben und dann versuchen, die Seite zu verlassen, ohne den Beitrag zu senden.

Es erscheint ein Popup-Fenster, das Sie darauf hinweist, dass Sie im Begriff sind, eine Seite mit nicht gespeicherten Änderungen zu verlassen.

Popup notification warning user about unsaved changes

Hinzufügen des Warn-Popups zu anderen Formularen auf Ihrer WordPress Website

Sie können dieselbe Code-Basis verwenden, um beliebige Formulare auf Ihrer WordPress-Website anzusprechen. Hier zeigen wir Ihnen ein Beispiel für die Verwendung für ein Kontaktformular.

In diesem Beispiel verwenden wir das WPForms Plugin, um ein Kontaktformular zu erstellen. Die Anweisungen sind dieselben, wenn Sie ein anderes Plugin für Kontaktformulare auf Ihrer Website verwenden.

Als Erstes müssen Sie die Seite aufrufen, auf der Sie Ihr Kontaktformular hinzugefügt haben. Dann fahren Sie mit der Maus über das erste Feld Ihres Kontaktformulars, klicken mit der rechten Maustaste und wählen im Browser-Menü die Option „Prüfen“.

Finding form ID

Von hier aus müssen Sie die Zeile suchen, die mit dem <form>-Schlagwort beginnt, um das Attribut ID zu finden. In diesem Beispiel lautet die ID unseres Formulars wpforms-form-170.

Sobald Sie das Schlagwort gefunden haben, kopieren Sie das ID-Attribut.

Bearbeiten Sie nun die Datei confirm-leaving.js und fügen Sie das Attribut ID nach #commentform ein. Stellen Sie sicher, dass Sie #commentform durch ein Komma von der ID Ihres Formulars trennen. Sie müssen auch ein #-Zeichen als Präfix für das ID-Attribut Ihres Formulars hinzufügen.

Ihr Code sieht nun wie folgt aus:

[javascript]
jQuery(document).ready(function($) { 

$(document).ready(function() {
    needToConfirm = false;
    window.onbeforeunload = askConfirm;
});

function askConfirm() {
    if (needToConfirm) {
        // Put your custom message here
        return "Your unsaved data will be lost.";
    }
}

$("#commentform,#wpforms-form-170").change(function() {
    needToConfirm = true;
});

 })
[/javascript]

Wenn alles gut aussieht, können Sie Ihre Änderungen speichern und die Datei wieder auf Ihre Website hochladen.

Jetzt können Sie einen beliebigen Text in ein beliebiges Feld Ihres Kontaktformulars eingeben und dann versuchen, die Seite zu verlassen, ohne das Formular abzuschicken. Es erscheint ein Popup-Fenster mit einer Warnung, dass die Änderungen nicht gespeichert wurden.

Sie können das Plugin zum Bestätigen des Verlassens hier herunterladen, installieren und aktivieren Sie es wie gewohnt. Wenn Sie Hilfe benötigen, können Sie unseren Leitfaden zur Installation eines WordPress Plugins durchgehen.

Beachten Sie, dass es auf das Kommentarformular abzielt, aber Sie können das Plugin so bearbeiten, dass es auf Ihr Benutzer-Registrierungsformular, Befragungen, Feedback-Formular, Bewerbungsformular oder andere Formulare abzielt.

Bonustipp: Verbessern Sie die Leistung Ihrer WordPress-Formulare

Nachdem Sie das Popup zur Bestätigung der Navigation hinzugefügt haben, sollten Sie verfolgen, wie oft Benutzer ihre Formulare abbrechen.

Wenn Sie wissen, wie viele Besucher die Website verlassen, ohne sie zu beenden, können Sie feststellen, wie gut Ihre Website für sie funktioniert. Auf diese Weise können Sie herausfinden, was sie zum Verlassen der Seite veranlasst, und Verbesserungen vornehmen.

Eines der besten Werkzeuge zur Verfolgung von Formularabbrüchen ist MonsterInsights.

MonsterInsights' homepage

Es ist das beste Google Analytics Plugin, mit dem Sie ganz einfach sehen können, wie Benutzer mit Ihren Formularen interagieren und wo sie dazu neigen, abzubrechen – und das alles von Ihrem WordPress-Dashboard aus.

Weitere Einzelheiten finden Sie in unserem Leitfaden zur Verfolgung und Reduzierung von Formularabbrüchen.

Wenn Sie möchten, können Sie auch einen A/B-Splittest durchführen. Das bedeutet, dass Sie verschiedene Versionen Ihrer Formulare ausprobieren, um zu sehen, welche besser abschneidet.

Edit your variation

So können Sie beispielsweise den Wortlaut des Popups zur Bestätigung der Navigation ändern oder Ihr Formular individuell anpassen. Durch die Analyse der Ergebnisse können Sie feststellen, was die Benutzer bei der Stange hält und dazu beiträgt, die Abbruchraten zu senken.

Thrive Optimize ist das beste Plugin für diese Aufgabe. Mit ihm können Sie A/B-Split-Tests ohne Programmierung durchführen und Ihre Daten sicher aufbewahren.

Weitere Informationen finden Sie in unserem Leitfaden für A/B-Split-Tests in WordPress.

Wir hoffen, dass dieser Artikel Ihnen geholfen hat, das Popup zur Bestätigung der Navigation für WordPress-Formulare zu zeigen. Vielleicht möchten Sie auch unsere Expertenauswahl der besten Online-Formularersteller und unsere Anleitung zum Hinzufügen besserer individueller Benachrichtigungen lesen.

Wenn Ihnen dieser Artikel gefallen hat, dann abonnieren Sie bitte unseren YouTube-Kanal für WordPress-Videotutorials. Sie können uns auch auf Twitter und Facebook finden.

Offenlegung: Unsere Inhalte werden von unseren Lesern unterstützt. Das bedeutet, dass wir möglicherweise eine Provision verdienen, wenn Sie auf einige unserer Links klicken. Mehr dazu erfahren Sie unter Wie WPBeginner finanziert wird , warum das wichtig ist und wie Sie uns unterstützen können. Hier finden Sie unseren redaktionellen Prozess .

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Das ultimative WordPress Toolkit

Erhalte KOSTENLOSEN Zugang zu unserem Toolkit - eine Sammlung von WordPress-bezogenen Produkten und Ressourcen, die jeder Profi haben sollte!

Reader Interactions

19 KommentareEine Antwort hinterlassen

  1. Igor

    Tried to use your code in bbpress forum. Unfortunately no popup message appears after user dose not post his comment. Tried all variations of changing id in JS file but still nothing appears.

  2. Bob Garrett

    Further to my previous query I have now tried using the form’s parent div id and modified the code. This almost works but…

    The text shown by the pop-up is not the text entered in the code.

    Even if the form is completed and submit hit, then going to another page still results in the warning.

    How can I resolve this?

  3. Tom Kelley

    Have tried this vvvvv to no avail. Working with Gravity Forms. All else works well, but the warning still comes up when hitting the submit button on a completed form. Any advice?

    WPBeginner Support
    Nov 27, 2016 at 6:52 am

    Hi Bonnie,

    We tested the plugin with WPForms and it worked. You will need to edit the confirm-leaving.js file and replace #commentform with the wpforms container div id. Typically it is wpforms-12 where 12 is the ID of your form. You can also see it using the inspect element tool in your browser.

    • Bonnie Ramthun

      I’m still trying to figure out how to make sure the popup DOESN’T appear when the user presses the „Submit“ button. The confirm leaving popup shouldn’t appear if the user has entered all the information required, but this code makes it pop up every time.

      I would so appreciate the help, if there is a solution available.

  4. Swayam Dhawan

    I Need the same function when someone navigate from particular page in website and while click on stay , they must navigate to home page of the website.

    waiting for the response.

  5. Bonnie Ramthun

    I am so happy for your wonderful confirm navigation code! I need it desperately because many of my clients users can’t get it through their head that they need to press the „Submit“ button on the form.

    The code works perfectly, except for one problem. When I press the „Submit“ button on my WPForms form, the confirm navigation code pops up. I would like the „confirm navigation“ to happen only when the user doesn’t press the „Submit“ button. I can’t figure out how to do this. Can you help?

    • WPBeginner Support

      Hi Bonnie,

      We tested the plugin with WPForms and it worked. You will need to edit the confirm-leaving.js file and replace #commentform with the wpforms container div id. Typically it is wpforms-12 where 12 is the ID of your form. You can also see it using the inspect element tool in your browser.

      Admin

  6. Will C

    I have two separate multi-page gravity forms on my site. When this plugin is active, I get a confirmation popup when clicking „Next Step“ on one of the forms (undesired), but not the other. Are you aware of any issues with gravity forms and „window.onbeforeunload“? Thanks

    • Nipa Sarker

      Having same issues with buddy press create group steps.

      • Nipa Sarker

        I ma using the code for buddy-press multi step create group from.It is working fine except while clicking on the next step button or save button it is showing the same alert.
        I ma using the form id „#create-group-form“ instead of the #commentform

  7. Luis Zarza

    Hi, nice post!

    It helped a lot. But your solution won’t work while logged in. It only works for users that fill in the form and are logged out. I need it also to work for logged in users, please!
    Could you provide a solution for that?

    Thanks.

    • Luis Zarza

      Sorry, it does actually works when you create the plugin. At first I did it only throwing the JS to the page I wanted without creating the plugin, because I didn’t want the script to be loaded on all the pages of my site.

  8. Alain Aubry

    Hi

    Contact Form 7 does not use an ID in their form, how can I make this work?

    • WPBeginner Support

      Contact Form 7 uses an ID with all the forms. The line that contains form ID will look something like this:

      <div role="form" class="wpcf7" id="wpcf7-f85-p11-o1" lang="en-US" dir="ltr">
      

      In this example, the form’s ID attribute is wpcf7-f85-p11-o1. Hope this helps.

      Admin

  9. Betty L Van Fossen

    I have two problems. One I get these pop up in my mail all the time,q it’s aggravating. I’m 89 in yrs.therefore a little short on patience and I start using my pointer to fast hitting other things, so I get myself in lots of problems. Two –guess(I know) I have to many cookies they say. What are the cookies –how do I eleminate them? What do you mean subscribe without commenting. I prefer the e-mail. O.K..to personal and meaningful conversation.

    • Betty L Van Fossen

      Does Pop Ups work the same for e-mail as WordPress for removing?

        • Betty L Van Fossen

          Safari said I could not get in cause I had to many cookies. In the meantime I was on my e-mail and the pop ups came on, while on my e-mail they are always popping up. I got on google and asked for help on cookies and pop ups and gave me lots to choose from. Now word press got in here, what is word press. I’m not going to write a book,just NEED HELP. Answer by e-mail. I’m turning you off now I’m really tired now.

      • Betty L Van Fossen

        I will wait for your reply in my e-mail as I’m tired so will turn off now.

Eine Antwort hinterlassen

Danke, dass du einen Kommentar hinterlassen möchtest. Bitte beachte, dass alle Kommentare nach unseren kommentarpolitik moderiert werden und deine E-Mail-Adresse NICHT veröffentlicht wird. Bitte verwende KEINE Schlüsselwörter im Namensfeld. Lass uns ein persönliches und sinnvolles Gespräch führen.