Unser Affiliate Theme ist da! Spare 10% mit dem Gutschein DRWP10 - mehr erfahren!

WordPress Kommentare mit AJAX befeuern

Wenn man in meinem WordPress Kommentar z.B. ein Feld vergisst, gelangt man nach dem Absenden auf eine neue Seite mit der Fehlermeldung. Ggf. kann es passieren das danach alle Eingaben verschwinden. Ich finde das sehr lästig und habe daher nach einer Lösung via AJAX gesucht. Dabei bin ich auf ein kleines JavaScript Snippet gestoßen und habe es etwas angepasst. Es gibt zwar diverse Plugins, die eine Ähnliche Funktion bieten, ich finde aber das für ein solch kleines Snippet kein extra Plugin notwendig ist.

Um euere Kommentare mit AJAX zu befeuern um so die lästige Seite mit der Fehlermeldung zu verhindern, baut einfach das folgende Snippet in eure Seite ein. Optimal ladet Ihr dieses Snippet nur auf den Seiten, wo auch Kommentare angezeigt werden. Daher wäre ein guter Platz die comments.php.

jQuery(document).ready(function($){
	var commentform=$('#commentform');
	commentform.prepend('<div id="comment-status" ></div>');
	var statusdiv=$('#comment-status');
	commentform.submit(function(){
		var formdata=commentform.serialize();
		statusdiv.html('<div class="alert alert-info">Verarbeite Kommentar... Bin gleich soweit.</div>');
		var formurl=commentform.attr('action');
		$.ajax({
			type: 'post',
			url: formurl,
			data: formdata,
			error: function(XMLHttpRequest, textStatus, errorThrown){
				statusdiv.html('<div class="alert alert-danger ajax-error"><strong>FEHLER:</strong> Bitte gib einen Kommentar ein.</div>');
			},
			success: function(data, textStatus){
				if(textStatus=="success") {
					statusdiv.html('<div class="alert alert-success ajax-error">Vielen Dank fr deinen Kommentar!</div>');
					window.location.href = document.URL;
				} else {
					statusdiv.html('<div class="alert alert-warning ajax-error">Bitte warte einen kurzen Moment bevor du deinen nchsten Kommentar postest.</div>');
					commentform.find('textarea[name=comment]').val('');
				}
			}
		});
		return false;
	});
});

Was passiert hier? Sobald das Kommentar abgeschickt wird, wird via AJAX geprüft ob alles in Ordnung ist. Falls z.B. ein Feld vergessen wurde, wird diese Fehlermeldung direkt oberhalb des Kommentar-Formulars angezeigt, ohne neuladen! Wenn der Kommentar erfolgreich gesetzt wurde, lädt die Seite neu.

Über Christian

Die Webentwicklung ist seit 2006 ein großer Teil meines Lebens und seit 2010 kann ich damit auch meine Brötchen verdienen. Ich beschäftige mich speziell mit WordPress und entwickle auch eigene Themes. Die Anpassungsfähigkeit von Wordpress begeistert mich immer wieder, daher möchte ich euch interessante Snippets und Plugins nicht vorenthalten.

WordPress Affiliate ThemeAnzeige

Keine Kommentare vorhanden

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <strong>, <em>, <u>, <a href="">, <del>, <ul>, <ol>, <blockquote>. Für Code benutze bitte pastebin.com und kopiere den Link in dein Kommentar.
*
*