Если Вы нуждаетесь в кнопке входа и выхода на сайт, но у Вас не хватает знаний самостоятельно ковырять код WP, то из этой записи Вы узнаете как самостоятельно без особых знаний PHP сделать такую кнопку на своем сайте.
У моего хорошего знакомого возникла надобность прикрутить кнопку входа и выхода в меню сайта (на WordPress), причем главная задумка кнопки заключалась в отображении только кнопки «ВХОД» в случае если пользователь не авторизирован на сайте, если же пользователь залогинен, должна отображаться кнопка «ВЫХОД». Его решение по своей простоте мне пришлось весьма по душе. А теперь разберем что именно было сделано моим другом.
Для начала мы установим три плагина:
Login Logout Menu — С помощью этого плагина вы можете добавить в меню кнопку входа и выхода из системы с учетом авто переключения, то есть когда вы еще не вошли на сайт отображается кнопка ВХОД, если же Вы уже авторизованы на сайте то будет отображаться кнопка ВЫХОД. Кроме отображения кнопки, вы можете установить страницу редиректа на которую вы хотите перенаправить пользователя после входа или выхода.
](http://www.mediadoma.com/wp-content/uploads/2016/09/Login-Logout-Menu-min.jpg)[Shortcodes in Menus](https://wordpress.org/plugins/shortcode-in-menus/) — Решает часто возникающую задачу, такую как добавить шорткод (shortcode) в меню WordPress.[
Redirection — Плагин основная задача которого перенаправление (редирект) с одной страницы на другую.
Better Font Awesome — Плагин подключающий шрифты Fontawesome в WordPress, который кроме подключения шрифтов еще добавляет такие плюшки как шорткоды и значок на шорткоды в редактор TinyMCE.
После того как плагины были установлены, перейдем в меню, как видите в нем появился новый пункт «Login/Logout links v1.3.3»
Давайте добавим нашу кнопку входа и выхода для сайта в меню, для этого отметим галкой пункт плагина «Войти|Выйти», и нажмем кнопку «Добавить меню».
Новый пункт меню будет выглядеть вот таким образом:
Работа с шорткодами и кодом:
Откройте новый пункт меню и согласно инструкции автора плагина «Login/Logout links» вставьте в поле URL данный текст:
#bawloginout#login.php|logout.php
Разберемся подробнее что именно мы вставили:
login.php – страница для авторизации пользователя
| — значение разделяющее два значения
logout.php – страница для деавторизации
То есть данной строкой мы указали плагину на какую страницу будет отправлен пользователь для авторизации и при выходе из сайта. Что бы было более понятно читайте FAQ автора полагина.
В поле «Текст ссылки» вставьте данный текст:
[login]|[logout]
Конструкцию с двумя шорт кодами нам помогает осуществить плагин «Shortcodes in Menus», каждый шорт код отвечает за вид кнопки в меню. Следовательно, [login] отвечает за вид кнопки «ВОЙТИ», [logout] за вид кнопки «ВЫЙТИ».
В итоге у нас должно получится кнопка меню с вот таким содержимым в админке:
Теперь перейдем на сайт и посмотрим, что у нас получилось:
Как видите кнопка выхода есть, но вид у нее далеко не самый лучший, а нам нужно что б кнопка была красивой с иконкой… Давайте это исправим.
Исправление отображения кнопок:
Перейдите в каталог плагина по FTP:
wp-content/plugins/baw-login-logout-menu/inc
откройте файл frontend-noajax.inc.php и замените:
Строка 73 / [login] shortcode /:
$content = $content != '' ? $content : __( 'Log In' );
На
Строка 108 / [logout] shortcode /:
$content = $content != '' ? $content : __( 'Logout' );
На
После того как мы исправили строки в файле обновляем страницу и видим вот такую кнопку для входа:
И вот такую кнопку для выхода:
На этом все, если же Вам необходимо реализовать при входе или выходе перенаправление не на стандартные страницы WordPress используйте плагин Redirection.
Redirection — Плагин основная задача которого перенаправление (редирект) с одной страницы на другую.
Источник записи: https://mediadoma.com