Front-end авторизация и излизане в WordPress
1. Създайте форма за влизане и връзка за излизане.
Това е визуална част от кода, която показва как да внедрите формата за влизане и връзката за излизане. Можете да го поставите навсякъде в шаблона, като например модален прозорец, или можете да създадете отделна страница с персонализиран шаблон, както искате.
2. Видях как jQuery обработва подаването на формуляр за вход и връзката за излизане.
Поставете този код навсякъде, основното е, че след jQuery и jQuery-форми. Класът userform ще има всички потребителски формуляри, така че се нуждаем само от един код, който ще изпрати всички тези формуляри. Създадох отделен файл в папката my_template/js/for_users.js и поставих кода там, след което го включих в routes.php (вижте следващия параграф).
3. Нека подготвим WP за използване на Ajax и да създадем манипулираща структура.
За удобство няма да пъхам целия код вfunction.php, но ще създам папкаfor_users вътре в шаблона, където ще поставя цялата обработка разделена на файлове, така че всеки файл да отговаря само за своята конкретна задача, на същото място ще създам файлroute.php, който ще разпределя какво къде и кой файл да се свърже и само ще го включа във function.php.
Разбира се, можете да поставите всичко във function.php или да го подредите като плъгин - зависи от вас.
Тук поставяме това нещо вroute.php :
Добавката jQuery-forms е включена не само за удобство, ще научите защо в една от следващите статии.
Някои ще кажат, че не е необходимо да използватеwp_localize_script за предаване на пътя към обработката на Ajax, но можете просто да напишете/wp-admin/admin-ajax.php веднага, но това се прави така, че заявката да отиде точно където е необходимо, за случаите, ако сайтът е в подпапка или сайтът е преместен или нещо друго, и изобщо не се излагайте на показ иПрави каквото кажа. xD
И включете този файл вfunctions.php :
И така, формулярът за влизане беше изпратен, параметърътaction=login_me стартира функциятаlogin_me(), която включва файлаlogin.php :
Функциитеwp_send_json_error() иwp_send_json_success() връщат масив с данни в сериализиран JSON низ с параметър успех = true или false и спират по-нататъшната работа на скрипта. Това е родна функция на WordPress, удобно нещо.
4. Обработка на излизане.
Сега същото, само че данните идват с параметъраaction=logout_me, функциятаlogout_me() беше стартирана, която включваше файлаlogout.php :
Не забравяйте да харесате и пипнете статията, добре, какво сте. =)