Erstellen einer benutzerdefinierten Anmeldung vor Ort

Abend,

Ich versuche, eine einfache “Login” -function für meine Website zu erstellen. Ich würde lieber nur eine Dropdown-Box haben, und um sich einzuloggen, die Weiterleitung zurück zu der Seite, auf der Sie sie eingereicht haben.

Ich habe einen Code, den ich gefunden habe (ich bin sehr neu in WordPress), und es scheint nicht richtig zu funktionieren, wenn ich auf “Senden” klicke, ändert sich nichts. Die Seite gibt keine Fehler, und sie sitzt nur dort, es sagt nicht, dass ich mich eingeloggt habe, oder gebe irgendeinen Hinweis, dass sie sich anders verhält.

 

Login

<form action="https://wordpress.stackexchange.com/questions/58764/creating-a-custom-login-on-site/../../wordpress/wp-login.php" method="post"> <input type="text" name="log" id="log" value="" size="20" />

<input type="hidden" name="redirect_to" value="" />

<a href="https://wordpress.stackexchange.com/questions/58764/creating-a-custom-login-on-site//wp-login.php?action=lostpassword">Recover password

Logout

<a href="https://wordpress.stackexchange.com/questions/58764/creating-a-custom-login-on-site/">logout
admin

Solutions Collecting From Web of "Erstellen einer benutzerdefinierten Anmeldung vor Ort"

Es hängt davon ab, wo sich Ihr Anmeldeskript befindet. Dies ist mein Testskript (gespeichert als “index.php”):

   Testform   < ?php require_once '../wp-load.php'; var_dump($_COOKIE); if ( !( current_user_can('level_0') ) ){ wp_login_form(); } else { ?>  < ?php } ?>  

Ich habe WordPress in einem Unterverzeichnis auf meinem lokalen Server installiert ( testdoma.in/wordpress ). Wenn ich das Skript in einem Unterverzeichnis innerhalb meiner WordPress-Installation ( testdoma.in/wordpress/external ) testdoma.in/wordpress/external , funktioniert es. Wenn ich das Skript im root installiere (und require_once in wordpress/wp-load.php ), kann es nicht funktionieren.

Wenn Sie versuchen, auf WordPress-functionen zuzugreifen, müssen sich die Skripte in einem Unterordner von oder direkt in Ihrer WordPress-Installation befinden.

AKTUALISIEREN

Nach einiger Recherche ist es ein Cookie-Problem. Das Plugin root Cookie triggers das Problem.

Ändern Sie diese Zeile:

 

zu diesem:

 

Aktualisiert :

wp_login_form() Sie, einfach wp_login_form() . Siehe wp_login_form-Referenz für mögliche functionsargumente.

 < ?php if ( !( current_user_can('level_0') ) ){ wp_login_form(); } else { ?>  < ?php } ?>