Vil du vide det automatiske login til wordpress admin?
Dagens blog vil være kort, og jeg vil lære dig, hvordan du tilføjer en nyttig funktion til dit WordPress-websted. Dette kan være ret nyttigt, hvis det anvendes korrekt. Dette er beregnet til brug på WordPress-websteder, der giver brugerne en generisk konto til at logge ind.
På mange backend WordPress-demoer vil forfatteren for eksempel oprette en 'demo'-konto, som potentielle kunder kan logge ind på og udforske med hans eller hendes produkt.
Ofte vil forfatteren bare poste en meddelelse, der siger;
Brugernavn: demo
Adgangskode: demo
I denne artikel vil vi orientere, hvordan man opretter et system til automatisk at logge ind på WordPress-administrationspanelet med blot et enkelt linkklik.
Hvordan fuldfører man automatisk login til wordpress dashboard?
Jeg vil tilbyde dig et kort uddrag ved automatisk login til WordPress-administratoren med disse legitimationsoplysninger. Dette kan inkluderes i dit temas funktionsfil eller placeres i dets plugin-fil og aktiveres.
Dette kunne være nyttigt, hvis:
- Dit websted har en generisk konto, som anonyme brugere kan logge ind på.
- Du vil have et 'one click' login-link.
- Du ønsker at maksimere produktdemokonvertering ved at give en hurtig og effektiv vej til demoen, hvilket minimerer de nødvendige trin.
- Du ønsker at dirigere besøgende direkte til det relevante sted (f.eks. siden Indstillinger).
vigtig: Brug aldrig dette til at logge ind på konti med reel kraft; f.eks. administrator/editorkonti osv.
Brug dette uddrag forsigtigt.
Opret nu et simpelt plugin til automatisk login til WordPress Dashboard.
Opret en plugin-mappe på din WordPress-mappe: wp-content > plugins
- Opret en ny mappe som: auto-login
- Åbn denne mappe og opret en ny PHP-fil som:
auto-login.php - Kopier denne kode og indsæt.
Tilpas kode til en forfatter
/*
Plugin Name: Auto Login
Plugin URI: https://themedev.net/
Version: 1.0.0
Author: ThemeDev
Author URI: https://themedev.net/
*/
function themedev_autologin() { // PARAMETER TO CHECK FOR if ($_GET['autologin'] == 'demo') { // ACCOUNT USERNAME TO LOGIN TO $creds['user_login'] = 'demo'; // ACCOUNT PASSWORD TO USE $creds['user_password'] = 'demo'; $creds['remember'] = true; $autologin_user = wp_signon( $creds, false ); if ( !is_wp_error($autologin_user) ) header('Location: wp-admin'); // redirect to }
}
// ADD CODE JUST BEFORE HEADERS AND COOKIES ARE SENT
add_action( 'after_setup_theme', 'themedev_autologin');Disse værdier kan være, hvad du vil, men originale WordPress-parametre som 'logget ud', 'handling' og 'omdirigering til' bør undgås.
Tilpas kode til flere forfattere
Vores uddrag er i øjeblikket kun sat op til automatisk at logge ind på én konto. Hvad hvis vi har brug for separate login-links til hver konto? Dette er en hurtig og enkel metode, der ikke kræver, at du gentager hele uddraget igen og igen. Tag et kig på min løsning nedenfor.
/*
Plugin Name: Auto Login
Plugin URI: https://themeedev.net/
Description: Create convenient auto-login links to quickly login to generic accounts. Configure source code to make changes.
Version: 1.0.0
Author: ThemeDev
Author URI: https://themeedev.net/
*/
// Declare global var's
global $login_parameter, $accounts;
// THE PARAMETER TO CHECK FOR
// eg. http://exmaple.com/wp-login.php?param_name=account
$login_parameter = "autologin";
// Another example iteration
$accounts[] = array( "user" => "campaign", "pass" => "campaign", "location" => "wp-admin/admin.php?page=nxc-dashboard", );
$accounts[] = array( "user" => "next3", "pass" => "next3", "location" => "wp-admin/admin.php?page=next3aws#ntab=settings", );
$accounts[] = array( "user" => "nextwoo", "pass" => "nextwoo", "location" => "wp-admin/admin.php?page=nextwoo#ntab=features", );
// SEE PREVIOUS EXAMPLE FOR DETAILS ABOUT THIS FUNCTION
function th_autologin() { global $login_parameter, $accounts; foreach ($accounts as $account) { if( !isset($_GET[$login_parameter]) ){ continue; } if ($_GET[$login_parameter] == $account['user']) { $creds['user_login'] = $account['user']; $creds['user_password'] = $account['pass']; $creds['remember'] = true; $autologin_user = wp_signon( $creds, '' ); if ( !is_wp_error($autologin_user) ) header('Location: ' . $account['location']); } }
}
add_action( 'after_setup_theme', 'th_autologin' );Dette er i det væsentlige det samme, men med en foreach loop og et kontoarray smidt ind for en god ordens skyld. Autologin()-funktionen har samme struktur som login()-metoden, med den undtagelse, at koden gentages (via foreach-løkken) for hver konto.
Det globale array har nu alle vigtige oplysninger. Eksemplet ovenfor viser, hvordan man opretter to konti, men vores uddrag kan håndtere så mange, som vi har brug for. Du skal blot tilpasse og tilføje så mange af følgende kodeblokke, som du har brug for for at tilføje ekstra konti.
// ACCOUNT CODE BLOCK
$accounts[] = array( "user" => "anotheraccount", "pass" => "public_password", "location" => "https://themedev.net/",
);
// END ACCOUNT CODE BLOCKDu vil også bemærke, at jeg også har flyttet parameternavnet til en global variabel: dette er ikke nødvendigt, men jeg gjorde det simpelthen for at fjerne alle hårdkodede værdier fra th_autologin()-funktionen.
Brug af URL til automatisk login til WordPress Dashboard
Dette er meget nemt at bruge. Kontobrugernavnet og adgangskoden er angivet i plugin-filen (kode ovenfor), og for at logge ind skal du blot besøge; http://example.com/wp-login.php?autologin=demo
Du skal tages til wp-admin og logges ind på den ønskede konto med det samme. Men hvis legitimationsoplysningerne er forkerte, bør du se login-formularen som normalt.
ende
Selvom dette uddrag blot er en simpel funktion beregnet til lysbrug, såsom på et produktdemosted, har det potentiale til at blive udnyttet til langt mere komplekse login-scenarier. Resten af koden skal være selvforklarende, men hvis du har spørgsmål om, hvad jeg gjorde, eller hvorfor jeg gjorde det, så læg en kommentar nedenfor eller send mig et tweet. Efterlad en bemærkning i feltet nedenfor, hvis du har feedback, anbefalinger eller tanker!
Hvis du kunne lide denne artikel, så abonner venligst på vores YouTube-kanal Til WordPress video tutorials. Du kan også finde os på kvidre samt face.