Публикация в группе: Плагин WP-Recall - Личный кабинет на WordPress

Категории группы: Обновления

Приветствую!

В данной версии была проведена большая работа в настройке взаимодействия функционала авторизации и регистрации плагина с формами входа и регистрации WordPress.

Теперь произвольные поля профиля выведенные в стандартной форме регистрации WordPress выглядят вполне себе приглядно, в едином стиле с другими полями формы и при проверке данных с формы регистрации теперь проверяются данные и из полей плагина, генерируется текст ошибки и выводится над формой как и в случае со стандартными полями.

Все ошибки возникающие при регистрации и авторизации теперь можно получить через объект WP_Error, поэтому при кастомном добавлении какого либо своего поля в форму регистрации, можно будет легко добавить вывод своего текста ошибки при неудачной проверке этого поля, например так:

add_action('rcl_registration_errors','my_check_register_captcha');
function my_check_register_captcha($errors){
	if ( ! $rcl_captcha_correct ) { //тут проверка
        $errors = new WP_Error();
        $errors->add( 'rcl_register_captcha', __('Field filled not right CAPTCHA!','rcl') );
    }
	return $errors;
}

В этой версии плагина был полностью переписан порядок вывода пользователей на сайте. Взамен старому функционалу был написан гибкий и более более понятный класс Rcl_Users, благодаря этом добавились новые настройки в шорткод userlist. Порядок получения пользователей из базы данных стал более логичным и упорядоченным. Удалось решить проблему с неверным количеством пользователей при выводе, если был указан определенный лимит. Было настроено взаимодействие фильтров вывода пользователей и формы поиска среди пользователей, т.е. можно сначала получить через поиск всех пользователей с именем "Николай", а затем отсортировать всех Николаев по рейтингу, кол-ву публикаций или комментариев. Пользователей выводимых во вкладке своих подписчиков и подписок теперь можно также сортировать. Остановимся подробнее на новых настройках шорткода userlist.

Теперь вы можете указывать те данные которые будут выводится в списке пользователей, для этого используем новый атрибут "data", для указания выводимых данных. Например, если мы хотим вывести список пользователей с выводом текста их статусов и указанием кол-ва публикаций, то шорткод будет выглядеть так:

не в сети 2 месяца

TylerRen

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

country-house

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

dim

Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

amalan1

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

trustandtrust@yandex.ru

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Wasp

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Charleslah

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Larryrow

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

minimix937

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

mvps@mail.ru

Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

antontm

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

862886622

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

865010550

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

zack58h087

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

KAV

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

dukalex

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

anho0071@yandex.ru

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

komiko

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

vyacheslav.elisov

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

PROFzone

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

smarty9

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

YITSHOCKS

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

lichnik5

Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

Robertcouby

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

rotant

Публикации: 5Продаж/Покупок: 0/0
не в сети 2 месяца

21d

Публикации: 7Продаж/Покупок: 0/0
не в сети 2 месяца

zbio53

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

hero163@yandex.ru

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Garraday

Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Станислав

Публикации: 1Продаж/Покупок: 0/0

полный же набор выводимых данных будет таким:

не в сети 2 месяца

TylerRen

0
Комментарии: 0Публикации: 0Регистрация: 15-01-2025Продаж/Покупок: 0/0
не в сети 2 месяца

country-house

0
Комментарии: 0Публикации: 0Регистрация: 01-03-2025Продаж/Покупок: 0/0
не в сети 2 месяца

dim

32
Комментарии: 26Публикации: 1Регистрация: 26-10-2019Продаж/Покупок: 0/0
не в сети 2 месяца

amalan1

0
Комментарии: 0Публикации: 0Регистрация: 21-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

trustandtrust@yandex.ru

0
Комментарии: 1Публикации: 0Регистрация: 12-04-2014Продаж/Покупок: 0/0
не в сети 2 месяца

Wasp

4
Комментарии: 3Публикации: 0Регистрация: 31-05-2019Продаж/Покупок: 0/0
не в сети 2 месяца

Charleslah

0
Комментарии: 0Публикации: 0Регистрация: 05-01-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Larryrow

0
Комментарии: 0Публикации: 0Регистрация: 28-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

minimix937

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

mvps@mail.ru

1
Комментарии: 11Публикации: 1Регистрация: 01-10-2020Продаж/Покупок: 0/0
не в сети 2 месяца

antontm

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

862886622

0
Комментарии: 0Публикации: 0Регистрация: 30-08-2019Продаж/Покупок: 0/0
не в сети 2 месяца

865010550

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

zack58h087

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

KAV

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

dukalex

2
Комментарии: 3Публикации: 0Регистрация: 26-12-2014Продаж/Покупок: 0/0
не в сети 2 месяца

anho0071@yandex.ru

0
Комментарии: 0Публикации: 0Регистрация: 05-05-2020Продаж/Покупок: 0/0
не в сети 2 месяца

komiko

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

vyacheslav.elisov

6
Комментарии: 7Публикации: 0Регистрация: 24-09-2017Продаж/Покупок: 0/0
не в сети 2 месяца

PROFzone

0
Комментарии: 1Публикации: 0Регистрация: 12-07-2019Продаж/Покупок: 0/0
не в сети 2 месяца

smarty9

0
Комментарии: 0Публикации: 0Регистрация: 24-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

YITSHOCKS

0
Комментарии: 0Публикации: 0Регистрация: 21-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

lichnik5

4
Комментарии: 2Публикации: 1Регистрация: 21-10-2014Продаж/Покупок: 0/0
не в сети 2 месяца

Robertcouby

0
Комментарии: 0Публикации: 0Регистрация: 22-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

rotant

10
Комментарии: 7Публикации: 5Регистрация: 21-05-2015Продаж/Покупок: 0/0
не в сети 2 месяца

21d

2
Комментарии: 6Публикации: 7Регистрация: 24-08-2017Продаж/Покупок: 0/0
не в сети 2 месяца

zbio53

0
Комментарии: 0Публикации: 0Регистрация: 17-06-2021Продаж/Покупок: 0/0
не в сети 2 месяца

hero163@yandex.ru

0
Комментарии: 0Публикации: 0Регистрация: 11-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Garraday

0
Комментарии: 0Публикации: 0Регистрация: 22-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Станислав

114
Комментарии: 202Публикации: 1Регистрация: 06-02-2017Продаж/Покупок: 0/0

Форма поиска и фильтры сортировки теперь не выводятся по-умолчанию, шорткод надо будет дополнить, атрибутом filters:

Поиск пользователей
Поиск

Всего пользователей: 102308

не в сети 2 месяца

TylerRen

0
Комментарии: 0Публикации: 0Регистрация: 15-01-2025Продаж/Покупок: 0/0
не в сети 2 месяца

country-house

0
Комментарии: 0Публикации: 0Регистрация: 01-03-2025Продаж/Покупок: 0/0
не в сети 2 месяца

dim

32
Комментарии: 26Публикации: 1Регистрация: 26-10-2019Продаж/Покупок: 0/0
не в сети 2 месяца

amalan1

0
Комментарии: 0Публикации: 0Регистрация: 21-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

trustandtrust@yandex.ru

0
Комментарии: 1Публикации: 0Регистрация: 12-04-2014Продаж/Покупок: 0/0
не в сети 2 месяца

Wasp

4
Комментарии: 3Публикации: 0Регистрация: 31-05-2019Продаж/Покупок: 0/0
не в сети 2 месяца

Charleslah

0
Комментарии: 0Публикации: 0Регистрация: 05-01-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Larryrow

0
Комментарии: 0Публикации: 0Регистрация: 28-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

minimix937

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

mvps@mail.ru

1
Комментарии: 11Публикации: 1Регистрация: 01-10-2020Продаж/Покупок: 0/0
не в сети 2 месяца

antontm

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

862886622

0
Комментарии: 0Публикации: 0Регистрация: 30-08-2019Продаж/Покупок: 0/0
не в сети 2 месяца

865010550

0
Комментарии: 0Публикации: 0Регистрация: 27-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

zack58h087

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

KAV

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

dukalex

2
Комментарии: 3Публикации: 0Регистрация: 26-12-2014Продаж/Покупок: 0/0
не в сети 2 месяца

anho0071@yandex.ru

0
Комментарии: 0Публикации: 0Регистрация: 05-05-2020Продаж/Покупок: 0/0
не в сети 2 месяца

komiko

0
Комментарии: 0Публикации: 0Регистрация: 26-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

vyacheslav.elisov

6
Комментарии: 7Публикации: 0Регистрация: 24-09-2017Продаж/Покупок: 0/0
не в сети 2 месяца

PROFzone

0
Комментарии: 1Публикации: 0Регистрация: 12-07-2019Продаж/Покупок: 0/0
не в сети 2 месяца

smarty9

0
Комментарии: 0Публикации: 0Регистрация: 24-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

YITSHOCKS

0
Комментарии: 0Публикации: 0Регистрация: 21-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

lichnik5

4
Комментарии: 2Публикации: 1Регистрация: 21-10-2014Продаж/Покупок: 0/0
не в сети 2 месяца

Robertcouby

0
Комментарии: 0Публикации: 0Регистрация: 22-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

rotant

10
Комментарии: 7Публикации: 5Регистрация: 21-05-2015Продаж/Покупок: 0/0
не в сети 2 месяца

21d

2
Комментарии: 6Публикации: 7Регистрация: 24-08-2017Продаж/Покупок: 0/0
не в сети 2 месяца

zbio53

0
Комментарии: 0Публикации: 0Регистрация: 17-06-2021Продаж/Покупок: 0/0
не в сети 2 месяца

hero163@yandex.ru

0
Комментарии: 0Публикации: 0Регистрация: 11-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Garraday

0
Комментарии: 0Публикации: 0Регистрация: 22-02-2025Продаж/Покупок: 0/0
не в сети 2 месяца

Станислав

114
Комментарии: 202Публикации: 1Регистрация: 06-02-2017Продаж/Покупок: 0/0

Если же мы захотим скрыть форму поиска, но оставить фильтры сортировки, то следует указать search_form="0":

Всего пользователей: 102308

не в сети 2 месяца

TylerRen

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

country-house

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

dim

32
Комментарии: 26Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

amalan1

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

trustandtrust@yandex.ru

0
Комментарии: 1Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Wasp

4
Комментарии: 3Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Charleslah

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Larryrow

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

minimix937

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

mvps@mail.ru

1
Комментарии: 11Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

antontm

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

862886622

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

865010550

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

zack58h087

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

KAV

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

dukalex

2
Комментарии: 3Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

anho0071@yandex.ru

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

komiko

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

vyacheslav.elisov

6
Комментарии: 7Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

PROFzone

0
Комментарии: 1Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

smarty9

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

YITSHOCKS

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

lichnik5

4
Комментарии: 2Публикации: 1Продаж/Покупок: 0/0
не в сети 2 месяца

Robertcouby

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

rotant

10
Комментарии: 7Публикации: 5Продаж/Покупок: 0/0
не в сети 2 месяца

21d

2
Комментарии: 6Публикации: 7Продаж/Покупок: 0/0
не в сети 2 месяца

zbio53

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

hero163@yandex.ru

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Garraday

0
Комментарии: 0Публикации: 0Продаж/Покупок: 0/0
не в сети 2 месяца

Станислав

114
Комментарии: 202Публикации: 1Продаж/Покупок: 0/0

Полное описание шорткода и его атрибутов можно найти на странице шорткодов плагина.

При желании вместо шорткода можно использовать функцию rcl_get_userlist(), передавая в нее нужные атрибуты в массиве:

rcl_get_userlist(array('data'=>'rating_total,comments_count,posts_count,description,user_registered', 'filters'=>1, 'search_form'=>0));

При желании, можно внести изменения в сам запрос на получение пользователей при текущих настройках, используя фильтр 'rcl_users_query'. Через этот фильтр будет получен массив в котором будут все данные текущего запроса, примерно с такой структурой:

$query = array(
            'select'    => array(),
            'join'      => array(),
            'where'     => array(),
            'group'     => '',
            'orderby'     => ''
        );

Массив с полученными данными пользователей можно получить через фильтр 'rcl_users'.

В процессе работы над обновлением также внесли свой вклад неравнодушные пользователи (ниже они будут указаны), благодаря чему удалось навести существенный порядок в процесс активации плагина и его дальнейшей работы. Был создан основной класс плагина WP_Recall, на который в будущем планируется возлагать всю нагрузку по упорядочиванию подключения скриптов, хуков и файлов, работе дополнений и тп. Был полностью переписан процесс активации и деактивации плагина.

Также был доработан порядок вывода панели Recallbar, добавлены новые ссылки, добавлена поддержка мобильных устройств.

В течении двух дней, данная версия будет доступна для тестирования на github проекта https://github.com/plechev-64/wp-recall, через два дня версия будет опубликована в репозитории.

В доработке этой версии принимали участие:

Пользователи не найдены

 

5

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

Пользователи не найдены