WordPress Login-in jQuery-Popup - Wie validieren-login mit jQuery, Ajax?
Habe ich die WordPress-Login-form-arbeiten in der front-end von meiner website, damit meine Benutzer-login ohne Besuch des wp-login.php oder lassen Sie das Feld "Thema" oder die website.
Wenn Sie springen http://westendmediacentre.com/dev und klicken Sie auf anmelden, können Sie sehen, dass ich die form, die in ein jQuery-popup. Mein code HIERFÜR sieht wie folgt aus:
Formular-Code:
<div class="login-form">
<form action="<?php echo get_option('home'); ?>/wp-login.php" method="post">
<input type="text" name="log" id="log" value="Username<?php echo wp_specialchars(stripslashes($user_login), 1) ?>" size="20" class="login-fields" onclick="this.value='';" onblur="this.value=!this.value?'Username':this.value;"/>
<input type="password" name="pwd" id="pwd" value="Password" size="20" class="login-fields" onclick="this.value='';" onblur="this.value=!this.value?'Password':this.value;"/>
<input type="submit" name="submit" value="Login" class="login-button" />
<input type="hidden" name="redirect_to" value="<?php echo $_SERVER['REQUEST_URI']; ?>" />
</form>
</div>
jQuery:
$('.button-login').click(function() {
$('.login-box').fadeIn('slow', function() {
//Animation complete
});
$(".login-box").css({'z-index' : '10000'});
$("#the-lights").css({'display' : 'block'});
$("#the-lights").css({'z-index' : '1'});
$("#the-lights").fadeTo("slow",0.7);
});
$('.login-box-close').click(function() {
$('.login-box').fadeOut('fast', function() {
//Animation complete
});
$("#the-lights").fadeTo("slow",0);
$("#the-lights").css({'display' : 'none'});
});
Dieser funktioniert perfekt, jedoch, wenn Sie versuchen, sich mit einigen schlechten Anmeldeinformationen, erhalten Sie weitergeleitet, um eine WordPress-Seite geben Sie den Fehler.
Was ich tun möchte, ist, diese Fehler erscheinen, die in meiner jQuery-popup, so dass, wenn Sie versuchen, sich mit schlecht Anmeldeinformationen, gibt es eine Fehlermeldung vor oder nach der form, eher als re-Umleitung auf eine andere Seite mit der Fehlermeldung angezeigt.
Ich habe versucht, nach diesem tutorial, aber es hat nicht richtig funktioniert mit meinen vorhandenen code: http://www.tutorialstag.com/custom-wordpress-login-without-using-a-plugin.html
Wäre dankbar, wenn jemand posten könnte eine funktionierende Lösung
- Ihre Buchung nicht Ihre login via Ajax. Ihr einfach nur posten zu login.php. Das tutorial verwiesen wird, ist der richtige Weg, um post der login mit ajax.
- Wenn ich versuche, verwenden Sie das tutorial, auf eine leere Seite, kann ich es workign Recht. Aber wenn ich versuche, es mit meinen vorhandenen code,bekomme ich Probleme. Beim einloggen, es lädt die ganze Seite in meinem jQuery popup in der "Ergebnisse" div, statt nur das Ergebnis. Alles was ich brauche ist, wenn ein Fehler vorhanden ist, so steht es in der Ergebnis-div-Element, und wenn er erfolgreich war, um die Umleitung zu einer Seite. Wie kann ich das tun?
- dieser Frage gehen sollte wordpress.stackexchange.com
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist alles über wordperess' Struktur, zunächst einmal sollten Sie wissen, dass selbst wenn Sie die richtigen oder falschen Anmeldedaten Ihre Struktur leitet Benutzer wp-login.php (da)
< ?php echo get_option('home'); ?>/wp-login.php
Linie (ich meine, Sie sind einfach nur posten Sie Ihren Benutzernamen und Ihr Passwort an wp-login.php)Und dann, wenn die gelieferten Informationen richtig sind, dann ist wordpress wieder Umleitungen für Benutzer-homepage sofort, sonst erscheint eine Fehlermeldung (mit shake-Effekt), können Sie all diese Aktionen in wp-login.php Datei.
Es gibt zwei verschiedene Optionen, die Sie verwenden können.
wenn ein Benutzer nicht richtigen Benutzernamen/Passwort, dann lassen Sie ihn umleiten, Sie zurück zu http://www.westendmediacentre.com/dev/
Wenn Sie wählen Sie die zweite Möglichkeit, können Sie Steuern, diese post. Das ist sehr nützlich.
Bearbeiten Sie KEINE core-Dateien, wenn möglich.
Sie werden es bereuen, später.
Wenn du ein plugin schreiben und das plugin war der Umgang mit Ihren jQuery-popup - dann könnte man dies tun:
Um ein login-Formular, können Sie sich dieses plugin:
http://wordpress.org/extend/plugins/sidebar-login/
Dann würden Sie müssen nur den Hauptteil, die Logik in eine PHP-Datei, die Ihre AJAX-script posten. Wenn der login fehlgeschlagen ist, ist der zurückgegebene Daten bilden die PHP-Datei geschickt würden, um Ihre AJAX-Skript, und Sie würden gut sein.
können Sie versuchen, mit der unten WordPress-plugin, was würde Ihre Arbeit viel einfacher
http://wordpress.org/extend/plugins/simplemodal-login/
mit ein wenig css können Sie es passend zu Ihrem aktuellen Thema
Ihnen fehlt dieser Teil des Tutorials