Публикация в группе: Otshelnik-Fm - мои работы (код, плагины, дополнения, статьи и руководства)

Категории группы: Работаем с Wp-Recall

Часто задают похожие вопросы по форме входа и регистрации WordPress плагина WP-Recall. Теперь ответы собраны в одном месте.
Вторая часть (продолжение) здесь.

 

Немного подробностей о форме входа и регистрации от WP-Recall

Форма регистрации и входа у WP-Recall самодостаточные. Это значит, что стандартные формы от вордпресса не участвуют в работе. А это значит вы можете смело отключить регистрацию от вордпресса в админке, на странице «Настройки» - «Общие» (сняв галку «Любой может зарегистрироваться»). Таким образом файл wp-login.php перестанет принимать регистрацию. Через нее боты и регистрируются в большинстве случаев.

upd: с версии 15.7.0 плагин WP-Recall учитывает чекбокс из основных настроек вордпресса. И сняв там галку мы в форме входа не увидим пункт регистрации. Лечится простым сниппетом:

// включим регистрацию реколл когда в настройках вордпресса она отключена
function dd3_open_rcl_register(){
    $option = 1;
    return $option;
}
add_filter('rcl_users_can_register','dd3_open_rcl_register');

 

В форму регистрации можно добавить дополнительные поля и определить их – обязательные они или по желанию. Смотрим в админке «WP-Recall» - «Поля профиля». Читаем описание

Если вам нужно отключить форму входа и регистрации от WP-Recall - поставьте в общих настройках "Порядок вывода формы входа и регистрации" - "Формы WordPress", тогда WP-Recall будет использовать вордпресс форму.

Чтобы из формы WordPress убрать обязательное поле для указания пароля впишите этот сниппет:

// отключим поле пароля в вордпресс форме
add_action('register_form','snipp1765_remove_filters_regform',0);
function snipp1765_remove_filters_regform(){
    remove_all_filters('regform_fields_rcl');
}

 

У WP-Recall 3 типа форм – они выбираются в основных настройках WP-Recall.
1. Всплывающая форма. На мой взгляд самая оптимальная и вездесущая. Но до такой степени, что она не особо раздражает пользователей
2. Форма в виджете – она присутствует на всех страницах вашего сайта, съедая пространство вашего сайта. Ее я люблю меньше всех
3. На отдельной странице. Создается через шорткод loginform. Подходит для страниц брендинга или посадочных страниц.

 

Защита форм входа и регистрации

1. Плагин "Limit Login Attempts" – он от повторных запросов защитит (брутфорса – попытки перебора паролей) и по ip забанит злоумышленника на время.
2. Капчи. На этой странице: Wp-Recall сторонние плагины и сервисы. Интеграция  я указал, что WP-Recall работает с Really Simple CAPTCHA - выводит в форме регистрации капчу. Но реколл работает и с другими типами капч (вам лишь надо поискать и выбрать в официальном репозитории вордпресс). Например - WP Captcha, добавляет капчи на вход и регистрацию – прося выполнить легкое арифметическое действие. Или No CAPTCHA reCAPTCHA
3. Дополнение к плагину WP-Recall Kill wp-login & Fix Login - отбивает атаку на wp-login.php и исправляет вход на форму входа от плагина WP-Recall. Моё дополнение для защиты от авторегистраций, входа и сброса пароля, вам просто надо поставить галку «Я не бот». И это дополнение делает гораздо больше. Оно завязано на плагин WP-Recall и не создает нагрузок на ваш сайт как многие популярные плагины безопасности. Советую обратить вам на него внимание.
4. Без плагинов и дополнений для защиты регистрации - Заметка "Варианты защиты от спам регистраций" - первые два пункта.

 

Как вывести вход и регистрацию из соцсетей?

WordPress Social Login - плагин WordPress и дополнение что связывает его с WP-Recall - RCL WP Social Login

Возможно есть еще какие-то плагины входа соцсетей – пишите в комментариях.

 

Как вывести всплывающую форму входа и регистрации в произвольном месте?

В общих настройках реколл выставьте "Вход и регистрация" - "Порядок вывода" - "Всплывающая форма"

Достаточно кнопке на вход добавить класс rcl-login
А кнопке регистрации класс rcl-register

Пример:

<?php
    global $user_ID;
    if (!$user_ID) { // логично же кнопки показывать только гостям
        echo '<button class="rcl-login">Вход</button>
              <button class="rcl-register">Регистрация</button>'; 
    }
?>

Или расширенная версия - гостям кнопки входа, а залогиненным - вход в ЛК и выход

<?php
	if ( is_user_logged_in() ) {
	  global $rcl_user_URL;
	  echo '<a href="'. $rcl_user_URL . '"><i class="fa fa-user"></i><span>Личный кабинет</span></a><br />';
	  echo '<a href="' . wp_logout_url( home_url() ) . '">Выход</a>';
	} else {
	  echo '<a href="#" class="recall-button rcl-login" >Вход</a><br />';
	  echo '<a href="#" class="recall-button rcl-register" >Регистрация</a>';
	}
?>

А если сделать так:

http://ваш-сайт/нужная-страница/?action-rcl=login

- то перейдя по такой ссылке отобразится всплывающая форма входа.

Как вывести кнопки в меню сайта?

Если вы говорите про произвольное меню, которое формируется в админке «Внешний вид» - «Меню», то дополнение Rcl Menu Buttons - выводит кнопки плагина Wp-Recall в существующих меню сайта.

 

Как изменить вход от вордпреса, в форме комментирования, и еще много где?

Дополнение "You Need To Login" - Выводит ссылки на вход. Исправляет пути вордпресс логина на форму WP-Recall. Заменяет слова Войти, зарегистрироваться - в некоторых местах плагина WP-Recall на форму входа и регистрации от данного плагина. Позволит ваших гостей не упустить и превратить в зарегистрированных пользователей.

 

Что ещё?

  • Для отдельной страницы есть шорткод [ loginform ]
  • Анимацию всплывающей формы я разобрал в этой заметке
  • Можно сделать крутую форму входа и регистрации на отдельной странице, почитав про шаблоны form-register.php - форма регистрации, и form-sign.php - форма входа

Вторая часть тут

9

Автор публикации

не в сети 20 часов

Вова (Otshelnik-Fm)

4 506
Живой, бодрый, полон идей!
Комментарии: 2252Публикации: 250Регистрация: 27-01-2013Продаж/Покупок: 0/0