Главная Каталог: Дополнения WP-Recall Profile Recall Стандартное предопределенное поле
12 ответ(ов) в теме
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
1
19:27

Версия WP-Recall: 16.10.4

Версия дополнения: 3.0.0

Создал произвольное поле с meta-key - user_registered.
Тип поля - Текстовое поле
Отображать для других пользователей - Да
Редактируется только администрацией сайта - Нет (обязательно, иначе будет совсем не ожидаемое поведение)

В итоге у пользователя поле выводится правильно (из таблицы wp_users), но при попытке редактирования создается ненужная запись в таблице wp_usermeta с новым значением, хотя в лк продолжает отображать правильное значение.

0
Андрей CS
не в сети 8 часов
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 9984
2
19:32

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

0
Otshelnik-Fm
не в сети 10 часов
На сайте с 27.01.2013
Модератор
Тем 26
Сообщения 11073
3
19:36

melet сказал(а)
В итоге у пользователя поле выводится правильно (из таблицы wp_users)

- это не запланированное поведение и так быть не должно. Поэтому как в итоге получается у вас - все верно. Все метополя юзера создаются в таблице wp_usermeta. И это верно.

Вы просто не баг а фичу нашли. Это незапланированное поведение

0
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
4
19:52

Хорошо, давайте назовем его "не предопределенное поле" (в том смысле, что его нет в колонке заранее предлагаемых полей), но это стандартное поле профиля wp.

Вы просто не баг а фичу нашли. Это незапланированное поведение

В принципе, мне такое поведение и нужно, чтобы пользователь не мог редактировать поля, которые я запрещаю к редактирования.

Нюанс в том, что если указать
Редактируется только администрацией сайта - Да
то поведение будет следующим:
- обычный пользователь может редактировать это поле, после редактирования значение поля в закладке Профиль подтягивается уже из таблицы wp_usermeta, т.е. неправильное
- у админа при попытке редактирования введенное значение хоть и сохраняется в wp_usermeta, но отображается старое правильное значение из wp_users
- в информации о профиле у всех отображается правильное значение из wp_user
- админ через wp-admin не может отредактировать это поле ни при каких настройках, хотя поле вроде как предполагает

Я согласен и на описанное в первом сообщении поведение, главное, чтобы оно не изменилось в будущем))

0
Otshelnik-Fm
не в сети 10 часов
На сайте с 27.01.2013
Модератор
Тем 26
Сообщения 11073
5
19:56

Вы называйте его по другому и тогда юзер раз заполнив его, в дальнейшем не сможет поменять. Только администрация сможет сменить такое поле

0
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
6
19:59

А я как раз и хочу вывести дату регистрации пользователя. Поэтому и взял этот метакей. И, соответственно, не хочу, чтобы это поле можно было поменять. Настройка Редактируется только администрацией сайта - Нет в данном случае позволяет достичь желаемого

0
Otshelnik-Fm
не в сети 10 часов
На сайте с 27.01.2013
Модератор
Тем 26
Сообщения 11073
7
20:25

melet сказал(а)
А я как раз и хочу вывести дату регистрации пользователя.

выводите вордпресс функцией.

Настройка Редактируется только администрацией сайта - Нет в данном случае позволяет достичь желаемого

- конечно ваше дело. Я правда не понимаю зачем это вам нужно (хотя если раз в год - и в бд исправить можно) - но ответ был - что это невозможно с другими таблицами отличными от wp_usermeta

0
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
8
20:33

выводите вордпресс функцией.

Меня устраивает функционал полей recall и как они выводятся. Можно подружить поле и результат функции?

конечно ваше дело. Я правда не понимаю зачем это вам нужно (хотя если раз в год - и в бд исправить можно) - но ответ был - что это невозможно с другими таблицами отличными от wp_usermeta

Простите, не совсем понял, о чем Вы говорите.. Мне как раз и не нужно совсем, что это поле правилось.

0
Otshelnik-Fm
не в сети 10 часов
На сайте с 27.01.2013
Модератор
Тем 26
Сообщения 11073
9
21:00

Если не надо чтобы оно правилось - зачем тогда вы его создаете? Я подумал что вам его вдруг править надо...

Просто ВП функцией выведите его стандартное поле времени регистрации из wp_users и проблем нету

То что вы придумали нестандартное поведение - никто его вам не будет поддерживать.

Вы напишите где хотите вывести - есть хуки,фильтры, есть функционал шаблонов в реколл - вывести всегда можно в 99%.

0
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
10
20:07

Еще только разбираюсь с wp-recall, до более глубоких познаний пока не дошел. Сейчас тратить время на изучение, кодинг/правки нет возможности, хотел обойтись имеющимися возможностями.

Вы напишите где хотите вывести - есть хуки,фильтры, есть функционал шаблонов в реколл - вывести всегда можно в 99%.

Хотелось бы вывести эту инфу в личном кабинете ниже имени и надписи в сети/не в сети.

0
Otshelnik-Fm
не в сети 10 часов
На сайте с 27.01.2013
Модератор
Тем 26
Сообщения 11073
11
20:23

Сниппет на это:

function otfm_user_register_date(){
    global $user_LK; // содержит id кабинета - он равен идентификатору юзера - автора кабинета
    
    $user_info  = get_userdata($user_LK);
    $date = $user_info->user_registered;
    
    echo '<div style="display: block;">Зарегистрирован: '.$date.'</div>';
}
add_action('rcl_area_actions','otfm_user_register_date', 5);

результат

Вы не можете просматривать опубликованные ссылки

Всё остальное делайте через css

Редакции сообщения
23.01.2018 20:23Otshelnik-FmПричина: не указано
1
melet
не в сети 1 неделя
На сайте с 16.01.2018
Участник
Тем 5
Сообщения 19
12
20:39

Спасибо, все получилось!

0
Тема закрыта. Публикация новых сообщений запрещена.