Máte na svém webu puštěné registrace a chcete přidat formulář pro přihlášení do stránky? Využívání výchozího formuláře, nacházejícího se na adrese www.vase-domena.cz/wp-admin nebo www.vase-domena.cz/wp-login.php není vhodné řešení, protože se poté obvykle uživatel přesměruje do administrace WordPressu. Nevýhody tohoto žešení jsou, že to může být pro uživatele matoucí, grafika formuláře nezapadá do designu šablony a pro vás to znamená bezpečnostní riziko.
V tomto článku si ukážeme jak vložit přihlašovací formulář, registrační formulář a formulář pro obnovu hesla přímo na stránky webu.
Kdy a proč je vhodné využít přihlášení uživatele vložené do stránky?
Ve výchozím nastavení jsou uživatelé WordPressu přesměrování do administrace WordPressu na stránku úpravy svého profilu. Pokud tito uživatelé nemají žádná další práva (například psaní příspěvku) je naprosto zbytečné je do administrace posílat.
Umožněním přihlášení uživatele přímo ze stránek (anglicky frond-end) vylepšíte uživatelský zážitek na webu, protože pak bude uživatel moci pokračovat v tom, co chtěl udělat a nebude přesměrován do administrace.
Návod jak vložit přihlašovací formulář do stránky
Nejprve si nainstalujte a aktivujte plugin Theme My Login. Plugin se nachází v oficiálním repozitáři a můžete jej nainstalovat přímo z administrace WordPressu.
Jakmile plugin nainstalujete vytvoří vám pět nových stránek. Běžte tedy do sekce Stránky a nově vytvořené stránky přejmenujte do češtiny.
- Log In – Přihlášení
- Log Out – Odhlášení
- Lost Password – Ztracené heslo
- Register – Registrace
- Reset Password – Reset hesla
Doporučuji upravit u URL adresu stránek.
Stránku si můžete i zobrazit a ihned vidíte, co se na ní nachází a jak vše funguje.
TIP: pro tento plugin jsem připravil i češtinu, stáhnout si ji můžete zde nebo na stránce Čeština.
Plugin Theme My Login funguje i bez jakéhokoliv nutného nastavení, nicméně pokud budete chtít, nastavení najdete v administraci WordPressu v sekci TML.
Nastavení Theme My Login
General (Obecné)
- Stylesheet – Enable „theme-my-login.css“ – povolí načtení stylů ze souboru theme-my-login.css
- Login Type
- Username only – přihlášení pomocí pouze uživatelského jména.
- Email only – přihlášení pomocí pouze emailu.
- Username or Email – přihlášení pomocí emailu i uživatelského jména.
Modules (Moduly)
Plugin My Themes Login také obsahuje několik modulů, které můžete v případě potřeby aktivovat.
Při aktivaci modulu se v nabídce TML přidá podsekce, kde můžete daný modul nastavit.
1. Enable Custom E-mail (Povolit vlastní email)
Umožní odesílání vlastních emailů při dokončení registrace. Můžete vytvořit vlastní email pro registrovaného uživatele i pro administrátora. Emaily můžete nastavit na stránce TML -> E-mail.
2. Enable Custom Passwords (Povolit vlastní hesla)
Po aktivaci se do registračního formuláře přidají políčka Heslo a Potvrďte heslo. Deaktivuje se tedy možnost, kdy WordPress po registraci pošle na email vygenerované heslo. Tento modul nemá žádné vlastní nastavení.
3. Enable Custom Redirection (Povolit vlastní přesměrování)
Ve výchozím nastavení WordPressu bude uživatel po přihlášení přesměrován do administrace na stránku svého profilu. Pomocí tohoto modulu můžete přesměrování ovlivnit.
Na stránce TML -> Redirection můžete poté nastavit URL adresy, kam bude daný uživatel přesměrován po přihlášení a odhlášení. Můžete nastavit různé nastavení pro každou uživatelskou roli.
Na výběr máte vždy ze tří možností:
- Default (Výchozí) – ponechá výchozí nastavení WordPressu
- Referer – vrátí uživatele na stránku, na které se nacházel před přihlášením / odhlášením.
- Poslední možnost je zadání vlastní URL adresy, kam bude uživatel přesměrován.
4. Enable Custom User Links (Povolit vlastní uživatelské odkazy)
Tento modul přidá možnost přiřazení vlastních odkazů pro uživatele. Tyto odkazy se poté zobrazí při použití widgetu My Theme Login. Opět si zde můžete nastavit různé odkazy pro dané uživatelské role. Nastavení najdete v TML -> User Links.
Ve výchozím nastavení jsou zde odkazy vedoucí do administrace a na úpravu profilu uživatele.
5. Enable reCAPTCHA (Povolit reCAPTCHA)
Už z názvu je jasné, že tento modul povoluje integraci reCAPTCHA v registračním formuláři. Pro konfiguraci tohoto modulu běžte do TML -> reCAPTCHA. Je třeba zde zadat Site Key (Klíč stránky) a Secret Key (Tajný klíč). Tyto klíče si můžete vygenerovat na stránce reCAPTCHA.
6. Enable Security (Povolit bezpečnostní modul)
Modul Bezpečnost umožní tři dodatečné bezpečnostní nastavení pro vaši stránku. Můžete si zde vynutit, že uživatel musí být přihlášen pro procházení stránky (možnost Private Site), deaktivovat wp-login.php (možnost Private Login) a nastavit maximální počet pokusů pro přihlášení a délku zabanovaní při překročení (možnost Login Attempts).
Toto nastavení provedete v administraci WordPressu v sekci TML -> Security.
7. Enable Themed Profiles (Povolit úpravu profilu na stránce)
Tento modul umožní úpravu uživatelského účtu přímo na webu. Na stránce TML -> Themed Profiles pak můžete vybrat u kterých uživatelských rolí to půjde.
- Themed Profiles – zaškrtnutím dané uživatelské role umožníte úpravu uživatelského nastavení přímo na stránce.
- Restrict Admin Access (Omezit přístup do administrace) – zaškrtnutím dané uživatelské role jí zakážete přístup do WordPress administrace.
8. Enable User Moderation (Povolit moderování uživatele)
Otevření registrací na webu spustí také vlnu spam registrací. Aktivováním tohoto modulu můžete vynutit další možnosti pro dokončení registrace.
Můžete zde vybrat z následujících možností dokončení registrace:
- None – výchozí nastavení, nic se nezmění.
- E-mail Conformation (Potvrzení emailem) – zaškrtnutím této možnosti bude po registraci zaslán email, který bude obsahovat odkaz a skrze něj se registrace dokončí.
- Admin Approval (Schválení administrátorem) – registraci bude muset dokončit admin a to tak, že uživatele schválí.
Tento blok můžete nastavit v administraci TML -> Moderation.
Přidání přihlašovacího formuláře do sidebaru
Kromě všeho výše popsaného obsahuje plugin také speciální widget, pomocí kterého můžete přidat přihlašovací formulář do sidebaru. Po aktivaci pluginu najdete widget mezi ostatními v administraci Vzhled -> Widgety.
Widget stačí pouze přetáhnout na místo, kde se má zobrazovat a nastavit jeho funkcionalitu.
Widget obsahuje následující nastavení:
- Default Action (Výchozí akce) – přihlášení, registrace, reset hesla.
- Show When Logged In (Zobrazit přihlášenému uživateli)
- Show When Logged Out (Zobrazit odhlášenému uživateli)
- Show Title (Zobrazit titulek widgetu)
- Show Login Link (Zobrazit odkaz pro přihlášení)
- Show Register Link (Zobrazit odkaz pro registraci)
- Show Lost Password Link (Zobrazit odkaz pro stránku ztracené heslo)
- Show Gravatar (Zobrazit Gravatar) – zobrazí avatar uživatele
- Gravatar Size (Velikost Gravataru) – v pixelech můžete nastavit velikost avataru
To je asi vše co potřebujete pro použíti pluginu Theme My Login vědět.
Dobrý den, po aktivaci pluginu je přihlašování do WORDPRESS (do hlavního okna administrátora přes – http://www.xxx.cz/wp-login.php) přesměrováno na stránku, kde je plugin aktivní. To je správně?
Ano.
Dobrý den vše jsem udělal podle návodu a nejde se mi přehlásit do administrace mého webu
Zdravím,
pokud máte zablokovanou administraci, můžete plugin deaktivovat pomocí FTP tak, že jeho složku v wp-content/plugins/ přejmenujete.
Dobry den, po instalacii pluginu sa do Stranok nepridaju ziadne stranky Log In, Log Out….a pridanim CZ prekladu taktiez nic nezobrazuje. Moze byt problem v kompatibilite s WP alebo niekde inde?
Zkuste stránky vytvořit ručně a dát do nich shortcode [theme-my-login] pokud to nepomůže, doporučil bych kontaktovat autora pluginu https://wordpress.org/support/plugin/theme-my-login
Dobrý den, nevíte prosím jak do editace profilu uživatele která již není v administraci přidám uživatelsky definované pole?
Děkuji
Dobrý den,
přidat pole do profilu uživatele není problém je na to řada návodů.
Například tento: http://justintadlock.com/archives/2009/09/10/adding-and-using-custom-user-profile-fields
Děkuji za reakci, návod je dobrý, ale nějak mne neposunul dál. Využívám zde popsaný plugin a mám povolený bod 7. Enable Themed Profiles (Povolit úpravu profilu na stránce). Tento formulář potřebuji rozšířit o pole ktrá jsem si nadefinoval v plaginu Advanced Custom Fields. V editaci uživatele WP jsou tato pole k dispozici.
Díky
prosím je někde v tomhle pluginu možnost vložení svého vlastního gravataru pro registrované?
Myslím, že ne. Bude k tomu třeba použít další plugin.
Dobrý den,
zajímalo by mě, jak nainstalovat češtinu pro tento plugin? Zip soubor s češtinou jsem si stáhl a obsahuje dva soubory. Nevím, ale kam je nahrát.
Děkuji za odpověď
Zdravím, nahrajte je pomocí FTP na hosting do WordPress složky /wp-content/plugins/theme-my-login/languages/
Děkuji za bleskovou reakci. Měl bych přeci jen ještě jeden dotaz k tomuto pluginu. Dejme tomu, že uživatel zapomněl svoje heslo. Klikne tedy na políčko zapomenuté heslo u přihlášení, a zadá buď své přihlašovací údaje nebo svůj e-mail. Email s novým heslem mu, ale nepřijde. Nevím v čem by mohl být problém?
Zkuste spam, a klasický WordPress email pošle?
Ve spamu nic a klasické přihlášení přes „http://xxx.xxx.cz/wp-login.php“ taky nezasílá email s novým heslem.
Dobrý večer, plugin a i čeština jsou super. Bohužel jsem ale narazil na problém. U okna widgetu je místo např. Vítejte napsáno bbPress, několik políček je také ještě anglicky (Generate password apod.) a narazil jsem i na problém s českými znaky, např. u nápisu webové stránky se zobrazuje jako WĂ©bovĂ© stránky. Chci se zeptat zda-li nějaká možnost si „doeditovat“ nebo upravit tyto položky? Děkuji, Zdeněk
Dobrý den,
ano, upravit si to můžete nejlépe pomocí programu Poedit.
Děkuji za odpověď, Poedit určitě vyzkouším.
Dobrý den Tomáši,
chtěl jsem poděkovat za návod na překlad s POEDIT, moc to pomohlo.
Dobrý den,
Tuto stránku jsem si velice oblíbil a měl bych další dotaz. Jde o to, že při registraci nového uživatele přes TML se neodešle email s informací o registraci, popř. o potvrzení registrace. Nevím jak to nastavit, kde co ošetřit..budu rád za tipy.
Hezký den, Zdeněk
Dobrý den,
Prosím o radu jak jak mám nastavit aby přihlašovací formulář byl vidět pouze když nejsem přihlášen a jakmile se přihlásím aby se nezobrazoval? Vložil jsem do stránky [theme-my-login], když nejsem přihlášen je to v pořádku jsem vyžádán k vyplnění ale když už jsem přihlášen tak nechci aby tam ten formulář byl. Děkuji za radu
Zdravím,
nevím přesně jak to tam máte, ale co zkusit třeba to skrýt pomocí pluginu Front-End Only Users.
Myslím že by to mělo jít nějak jednodušeji. Zkrátka jednou už jsem přihlášený, tak přece nemusí přihlašovací formulář vyskakovat. Možná to ošetřit nějakou podmínkou přímo ve scriptu?
Tak obvykle si toto hlídá sám ten plugin a pokud je člověk přihlášený, tak jej automaticky přesměrovává. Bohužel takhle radit, když to člověk „nevidí“ je dost těžké.
Ahoj Tome,
je prosím tě tento plugin zdarma pro komerční užití – výdělek z affiliate a adsense? Bohužel se mi nikde nepodařilo najít nějaké podmínky užití. Předem děkuji za odpověď a super článek.
Ahoj,
jelikož je v repozitáři WordPress.org, tak je pod licencí GPLv2 nebo pozdější. Takže ano.
Super, děkuji za odpověď.
Dobrý den,
Zajímalo by mě zda se dá u tohoto pluginu nastavit aby pro každého uživatele se dal nastavit jiný po přihášení? Děkuji
Zdravím, co jiného?
Ahoj, když něco občas řeším s WP, tak vaše stránky patří mezi několik, kdy hledám a nacházím rady. Díky
Ahoj, jeden dotaz bych měl: Když zadám při registraci vyloženě slabé heslo, objeví se nad polem „Uživatelské jméno“ červené, prázdné pole, ale žádná hláška, zda se registrace povedla či ne nebo že je heslo nevyhovující a jaké znaky se mají zadávat.
Zdravím, můžu nějak vyřešit to, že TML má přihlašovací form bez CAPTCHA, takže když to někdo vyplní, chce to po něm (anglicky) vyřešit součet, že není robot a pak se musí přihlašovat znovu a k tomu ještě znovu CAPCHA… dá se to nějak odbourat, aby TML dalo rovnou CAPTCHA a už to dál neotravovalo? Díky
To si snad dělá srandu s tou češtinou
dobrý večer Tomáši,
neměl byste nějaký jiný tip na plugin s vlastními položkami při přihlašování? Vámi doporučovaný je po upgradu na v.7 nějaký zmršený a tudíž ho uživatelé nedoporučují. Díky za případný návod/link. https://wordpress.org/support/plugin/theme-my-login/
Ahoj Tome, plugin vypadá dobře, ale můj problém zřejmě neřeší úplně. Potřeboval bych, aby ten plugin (nebo jiný) umožnil při registraci uživatele krom vložení Gvatara i možnost nahrát víc fotografií. A další dotaz, když jako admin schválím registraci daného uživatele, tak jakou bude mít daný uživatel roli? Umožňuje tento plugin rovnou nastavit i uživatelskou roli nebo budu muset pak roli ještě definovat samostatně? Případně jaký plugin umožňuje registraci s vložením několika fotografií, vč.Gravatara + rovnou nastavení uživatelské role.
Dobrý den,
já bohužel nemám po instalaci nastavení TML aby nepřesměrovával do wordpressu.
Mám je hodně obecné nastavení.
Musím si ještě něco přiinstalovat?