Automatické prihlásenie správcu WordPress v PHP

Dnešný príspevok bude iba krátky, v ktorom vám ukážem, ako nainštalovať elegantnú malú funkciu na váš web WordPress. Ak sa používa bezpečne, môže to byť veľmi pohodlné. Je určený na použitie na stránkach WordPress, ktoré ponúkajú generický účet, do ktorého sa môžu používatelia prihlásiť. Napríklad na mnohých ukážkových ukážkach WordPress autor vytvorí „demo“ účet, do ktorého sa budú potenciálni zákazníci prihlasovať ako a hrať sa so svojím produktom. Autor častejšie zobrazí notifikáciu;


užívateľské meno: demonštrácie
heslo: demonštrácie

Je to trochu pre chodcov. Určite dokážeme, aby demo vyzeralo trochu efektívnejšie a profesionálnejšie? Dám vám rýchly úryvok na automatické prihlásenie do správcu WordPress s týmito povereniami. Toto môže byť buď vložené do súboru funkcií témy, alebo môže byť vložené do vlastného súboru doplnku a aktivované.

To by mohlo byť užitočné, ak;

  • Vaša stránka má všeobecný účet, do ktorého sa môžu anonymní používatelia prihlásiť.
  • Chcete odkaz na prihlásenie jedným kliknutím.
  • Chcete maximalizovať konverziu ukážky produktu poskytnutím rýchlej a efektívnej cesty k ukážke a minimalizovaním potrebných krokov.
  • Chcete nasmerovať návštevníkov priamo na príslušné miesto (napr. Stránka nastavení).

dôležité: Nikdy nepoužívajte na prihlásenie k účtom so skutočnou silou; eg. Účty správcu / editora atď.
Tento útržok používajte opatrne.

Dobre, tak ako som to urobil vo svojich ďalších návodoch, najskôr vám dám kompletný anotovaný kód, aby sa všetci, ktorí nie sú fanúšikmi čítania, mohli priamo s ním experimentovať. Nasledujúci úryvok bol navrhnutý ako samostatný doplnok (moje osobné preferencie).

Harri Bell-Thomas o Githubovi

/ *
Názov doplnku: Automatické prihlásenie
URI doplnku: http://hbt.io/
Verzia: 1.0.0
Autor: Harri Bell-Thomas
URI autora: http://hbt.io/
* /

funkcia autologin () {
// PARAMETER NA KONTROLU
if ($ _GET ['autologin'] == 'demo') {

// ÚČET UŽÍVATEĽA, KTORÝ SA PRIHLÁSÍ
$ creds ['user_login'] = 'demo';

// ÚČTOVNÉ HESLO NA POUŽITIE
$ creds ['user_password'] = 'demo';

$ kreditov ['pamätať'] = true;
$ autologin_user = wp_signon ($ kredity, false);

if (! is_wp_error ($ autologin_user))
hlavička ('Umiestnenie: wp-admin'); // UMIESTNENIE, KTORÉ SA ZMIERÍ
}
}
// PRIDAJTE KÓD, KTORÝ JE PREDLOŽENÝ HLAVAMI A COOKIES
add_action ('after_setup_theme', 'autologin');

VYUŽITIE

Toto je veľmi jednoduché použitie. Používateľské meno a heslo účtu sú uvedené v súbore doplnku (vyššie uvedený kód) a na prihlásenie stačí navštíviť; http://example.com/wp-login.php?autologin=demo

Okamžite by ste mali byť presmerovaní na wp-admin, prihlásení na určený účet. Ak sú však poverenia nesprávne, mali by ste vidieť iba prihlasovací formulár, ako je obvyklé.

CUSTOMIZE

Tento úryvok je veľmi ľahko prispôsobiteľný. V podstate budete musieť upraviť iba 3 veci a všetky tieto zmeny sa majú vykonať v nasledujúcom bloku kódu (riadky 11 až 17 úplného kódu).

if ($ _GET ['login'] == 'dummy_account') {

// ÚČET UŽÍVATEĽA, KTORÝ SA PRIHLÁSÍ
$ creds ['user_login'] = 'dummy';

// ÚČTOVNÉ HESLO NA POUŽITIE
$ creds ['user_password'] = 'pa55word';

Na prvom riadku uvidíte podmienenú kontrolu parametra adresy URL. Vyššie uvedený blok kódu sa bude kontrolovať; wp-login.php? login = dummy_account

Tieto hodnoty môžu byť to, čo chcete, ale buďte opatrní, aby ste sa vyhli pôvodným parametrom WordPress, ako sú „odhlásenie“, „akcia“ a „presmerovanie_to“. Riadok 4 je miesto, kde zadáte meno používateľa, s ktorým sa chcete prihlásiť; prispôsobený útržok kódu sa pokúsi prihlásiť do účtu „figuríny“. Ako pravdepodobne viete, v riadku 7 sa uvádza heslo. Vyššie uvedené heslo je „pa55word“. Vyplňte tieto hodnoty a mali by ste byť dobrí!

EXTENSIONS

Momentálne je náš útržok nastavený iba na automatické prihlásenie do jedného účtu. Čo ak chceme rôzne prihlasovacie odkazy pre rôzne účty? Je to pomerne rýchle a ľahké a nevyžaduje sa opakovanie celého útržku znova a znova. Pozrite sa nižšie na moje riešenie.

/ *
Názov doplnku: Automatické prihlásenie
URI doplnku: http://hbt.io/
Popis: Vytvorte pohodlné odkazy na automatické prihlásenie a rýchlo sa prihláste na všeobecné účty. Nakonfigurujte zdrojový kód na vykonanie zmien.
Verzia: 1.0.0
Autor: Harri Bell-Thomas
URI autora: http://hbt.io/
* /

// Vyhlásiť globálne var
globálny $ login_parameter, $ accounts;

// PARAMETRE NA KONTROLU
// napr. http://exmaple.com/wp-login.php?param_name=account
$ login_parameter = "autologin";

// BLOK KÓDU ÚČTU
$ accounts [] = array (
"user" => "demo",
"pass" => "demo",
"location" => "wp-admin",
);
// BLOKOVACÍ KÓD KONCOVÉHO ÚČTU

// ÚPRAVA A OPAKOVANIE KÓDU KÓDU, KTORÉ MAJÚ POTREBNÉ ÚČTY

// Ďalší príklad iterácie
$ accounts [] = array (
"user" => "tcwp",
"pass" => "demo",
"location" => "wp-admin /? tcwp-sent-me",
);


// ZOBRAZIŤ PREDCHÁDZAJÚCI PRÍKLAD PRE PODROBNOSTI O TEJTO FUNKCII
funkcia autologin () {
globálny $ login_parameter, $ accounts;
foreach ($ accounts as $ account) {
if ($ _GET [$ login_parameter] == $ účet ['user']) {
$ creds ['user_login'] = $ account ['user'];
$ creds ['user_password'] = $ account ['pass'];
$ kreditov ['pamätať'] = true;
$ autologin_user = wp_signon ($ kredity, false);
if (! is_wp_error ($ autologin_user))
hlavička ('Location:'. $ account ['location']);
}
}
}
add_action ('after_setup_theme', 'autologin');

Vo svojom jadre je to v podstate rovnaké, ale je to hodené aj s drzou foreach slučkou plus pole účtov. Anatómia funkcie autologin () je identická, s výnimkou skutočnosti, že jej kód sa opakuje (pomocou foreach slučky) pre každý účet. Všetky relevantné podrobnosti sú teraz uložené v globálnom poli. Vyššie uvedený príklad je nastavený na 2 účty, ale náš útržok môže pojať toľko, koľko potrebujeme. Ak chcete pridať ďalšie účty, jednoducho upravte a pridajte toľko nasledujúcich kódových blokov, koľko potrebujete.

// BLOK KÓDU ÚČTU
$ accounts [] = array (
"user" => "otheraccount",
"pass" => "public_password",
"location" => "http://YouCanPutURLsHereToo.com/",
);
// BLOK KÓDU KONCOVÉHO ÚČTU

Tiež si všimnete, že som presunul aj názov parametra do globálnej premennej: nie je to potrebné, ale urobil som to tak, aby som z funkcie autologin () odstránil všetky pevne kódované hodnoty..

ZÁVER

Tento úryvok je iba jednoduchá funkcia navrhnutá pre ľahké použitie, napríklad na demonštračnej stránke produktu, ale má potenciál byť použitý pre oveľa zložitejšie prihlasovacie scenáre. Zvyšok kódu by mal byť celkom samozrejmý, ale ak máte nejaké otázky týkajúce sa toho, čo som urobil alebo prečo som to urobil, jednoducho zanechajte komentár nižšie alebo mi napíšte tweet. Ak máte nejakú spätnú väzbu / návrhy / nápady, zanechajte komentár v sekcii komentárov nižšie!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map