Домой Wp-Recall WP-Recall: Проблемы и решения Баг запрета на редактирование полей в профиле + при авторизации не ставится "Запомнить"
20ответ(ов) в теме
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
1
22:46
Версия WP-Recall: 16.4.9

1. Wordpress 4.8, WP-Recall 16.4.9
2. Некорректно работает запрет редактирования полей в профиле
Порядок воспроизведения ошибки:
1) установил чистый WordPress, тему не трогал (Twenty Seventeen дефолтная)
2) установил WP-Recall из раздела плагины (через поиск в магазине плагинов)
3) WP-Настройки - Общие - включил "Любой может зарегистрироваться"
4) WP-Recall - Поля профиля - добавил готовое поле "Имя":
---а) заголовок оставил как есть ("Имя")
---б) плейсхолдер заполнил ("Отображаемое имя")
---в) Pattern, Макс. кол-во знаков, подпись к полю - оставил пустыми
---г) обязательное поле - "нет"
---д) отображать для других пользователей - "да"
---е) редактируется только администрацией сайта - "да"
---ж) отображать в форме регистрации - "нет"
5) WP-Внешний вид - Виджеты - в колонку Blog Sidebar добавил виджет "Текст" и вписал в него [loginform]
6) Вышел из под админа, перешел на сайт и зарегистрировался как обычный пользователь
7) Под пользователем перешел в профиль, заполнил поле "Имя", нажал "Обновить"
8) После обновления страницы заполненное имя осталось в поле, само поле при этом не кликабельно (действует запрет редактирования)
9) Ничего не меняя в профиле жму еще раз "Обновить"
10) После обновления страницы заполненное имя исчезло и само поле стало кликабельно - доступно для заполнения (в этом и ошибка)

Проблему наблюдал на хостинге, на сайте с кучей плагинов. На этом сайте в форме авторизации не ставилась галочка "Запомнить". Счел это за какой-то конфликт плагинов, забил на нее и просто убрал эту галку через display:none;
Перед тем, как постить этот репорт воспроизвел ошибку с запрещенным полем профиля на локалке (Open Server), установив с нуля только WP и WP-Recall. Попутно обратил внимание, что проблема с установкой галочки "Запомнить" актуальна.
Еще раз хочу подчеркнуть, что и на хостинге и на локалке я выводил форму авторизации через виджет "Текст" и шорткод [loginform].

Буду рад исправлениям.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
2
06:44

---д) отображать для других пользователей - "да"
---е) редактируется только администрацией сайта - "да"

- "редактируется только администрацией сайта" уберите

Но, я попытался повторить на этой версии плагина (16.4.9) - первый раз заполнить имя дало. сохранил. Поле стало не редактируемым.
Нажал обновить второй раз - (ничего не меняя) - поле не доступно для редактирования.
Ради интереса перешел на главную, снова в профиль и нажал обновить - поле "Имя" невозможно отредактировать повторно.
Проблемы не наблюдаю - работает как и надо.

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

в форме авторизации не ставилась галочка "Запомнить".

- т.е. как это не ставилась галочка? Вы не смогли чекбокс поставить? У меня ставится

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

p.s. я бы разбирался с проблемами используя тестовый домен (чистый вп, никаких плагинов и тема twenty от разработчиков - тут вы все верно сделали) - но на нормальном хостинге, а не на локальном сервере. Ни опенсерверам ни денверам я не доверяю - т.к. по сути это сборки. И они работают в большинстве случаев с проблемами. Не первый раз сталкиваюсь с проблемами при их использовании.
Заведите тестовый поддомен на нормальном хостинге и пробуйте там.

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
3
07:52

Повторил все то же самое на хостинге (spaceweb).

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

Все точно так же, как и на локальном. При повторном нажатии на синюю кнопку "Обновить" - Имя исчезает, и чекбокс не ставится.
В личку скинул данные для входа.

В этот раз проверил на обоих браузерах (Chrome + Firefox), все то же самое. Обратил внимание еще на лишние
в форме авторизации. Из-за них поля формы отображаются не очень красиво, с прогалами.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
4
11:02

В общих настройках "Вход и регистрация" - покажите нам скриншотом что у вас выставлено

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
5
14:19

Выслал в личку лог+пас учетки суперадмина, можете посмотреть любые настройки

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
6
14:34

Выбирайте не всплывающая форма, а форма в виджете - вы же виджетом пользуетесь:

5) WP-Внешний вид - Виджеты - в колонку Blog Sidebar добавил виджет "Текст" и вписал в него [loginform]

Доступ к вашему сайту я не просил - я не буду заниматься вашим сайтом. По рекомендациям из этой темы делайте самостоятельно. Или наймите администратора на свой сайт - который будет техническими вопросами заниматься.

0
garry
не в сети 2 недели
На сайте с 04.01.2014
Участник
Тем 146
Сообщения 2925
7
14:39

Антон сказал(а)
(spaceweb)

Ремарочка, хостинг не причем, в эту сторону не смотрите, на свебе прекрасно работают все формы и все чекбоксы... И ставьте сразу ssl на домен, они же бесплатно на год дают, про сертификат просто совет не относящийся к проблеме.

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
8
15:14

Доступ к вашему сайту я не просил - я не буду заниматься вашим сайтом.

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

Ссылка выше - это не коммерческий сайт (мой или чей-то еще), это тестовая площадка, которую я развернул сегодня утром на поддомене. Установил свежескачанный WordPress и сразу установил из WP-репо плагин WP-Recall. Больше ничего не устанавливал для чистоты эксперимента.

В решении проблемы есть некоторый прогресс.
Я выяснил, что не важно - какой тип формы выбран в Общих настройках (виджет, всплывающая или др, это влияет только на отображение), важно установить в сайдбар виджет, который называется "Панель управления". Я же устанавливал в сайдбар виджет "Текст" и вписывал в него шорткод [loginform] (изначально не подумал, что Панель управления - это форма реги/логина, название неинтуитивное). Один кусок кода отвечает или нет, но результат получился разный. В случае виджета "Панель управления" поля формы авторизации расположены как положено, без лишних отступов, а также, работает чекбокс "Запомнить". В случае виджета "Текст" - между полями прогалы и чекбокс не работает.

Теперь по поводу исчезающего имени в поле Имя в профиле. Удалось выяснить, что баг есть только если пользователь не админ. Когда я обновлял профиль будучи под админом - значение в поле сохранялось. Когда же я перезашел под пользователем, то ошибка снова проявилась - после повторного обновления профиля поле Имя само очищалось (касается любого доп. поля в профиле, не только Имя).

Повторные испытания проводил уже после обновления WP-Recall до последней версии (16.4.10). Из WP-репо скачивается 16.4.9.

p.s. давайте будем вежливы. Я не собирался садиться на шею. Безусловно, я хочу решить свои личные задачи, но и в ваших интересах довести продукт до идеального вида.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
9
15:23

Антон сказал(а)
и чекбокс не работает

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

Читаем описание шорткода

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

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

что баг есть только если пользователь не админ

- так я и не админом проверял и не подтвердил.

Это хорошо что вы хотите разобраться.
По багу - не подтверждаю, а по настройке - если вы ее выполняете неверно - обращайтесь на форум - подскажем. Но сразу присылать доступы в личку - я посчитал это перекладыванием своей проблемы на чужие спины.

1
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
10
15:36

После установки WP и WP-Recall я включил "Любой может зарегистрироваться" и добавил поле Имя в профиль, настройки ниже.
Что я не так сделал или что нужно сделать дополнительно, чтобы от лица пользователя поле Имя не очищалось при повторном нажатии кнопки "Обновить" в профиле?
upd
Пользователь - роль Автор, которая стоит в WP по умолчанию для новых зарегистрировавшихся.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
11
15:43

Антон сказал(а)
Что я не так сделал или что нужно сделать дополнительно, чтобы от лица пользователя поле Имя не очищалось при повторном нажатии кнопки "Обновить" в профиле?

- я именно так и повторил

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

- и не увидел проблемы:

Otshelnik-Fm сказал(а)
Но, я попытался повторить на этой версии плагина (16.4.9) - первый раз заполнить имя дало. сохранил. Поле стало не редактируемым.
Нажал обновить второй раз - (ничего не меняя) - поле не доступно для редактирования.
Ради интереса перешел на главную, снова в профиль и нажал обновить - поле "Имя" невозможно отредактировать повторно.
Проблемы не наблюдаю - работает как и надо.

Как вариант - отключите Да:

Otshelnik-Fm сказал(а)
- "редактируется только администрацией сайта" уберите

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
12
15:51

Тест на внимательность я провалил. Я то создавал текстовое поле, а у вас имя first_name. Это не отображаемое имя - поле с отображаемым именем - Meta-key: display_name

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

- его вам и нужно использовать.

Но сейчас я проверил и на этом типе first_name. Не стирается ничего. Единственный баг - это то что поле не видит опции "редактируется только администрацией сайта" - т.е. доступно всегда для правки.

Но ничего не стирается. У вас произвольных полей в профиле может много - и вы в лимиты передачи упираетесь? У меня 23 поля - и ниодно не стирается.

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
13
15:54

Нет, я добавлял всего одно - Имя. Я выяснил - в чем проблема.
Дело в том, что поля в профиль можно добавить двумя способами.
Я добавлял способом номер 2 - перетаскивая заготовку drag&drop,
а вы добавили способом номер 1 - вписав данные в раскрытую форму поля-шаблона.
Так вот при способе 1 проблем нет, а при способе 2 - есть.

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
14
16:01

Единственный баг - это то что поле не видит опции "редактируется только администрацией сайта" - т.е. доступно всегда для правки.

Именно это я и имел в виду, создавая данный топик. Только сформулировал иначе, по внешним признакам.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
15
16:01

Фамилия - это last_name метакей. Вы же скрин в 10 м сообщении с first_name привели. Я и проверил и отписал в 12м сообщении с first_name.
Проблему стирания я не вижу.

Но вам совет - отображаемое имя вы должны выбрать display_name - именно его многие плагины и шаблоны выводят и на него ориентируются. Просто в некоторых местах - если вы выберите не его - у юзера будет отсутствовать имя.

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
16
16:03

Антон сказал(а)
Именно это я и имел в виду, создавая данный топик. Только сформулировал иначе, по внешним признакам.

но вы еще описали его как

После обновления страницы заполненное имя исчезло

чтобы от лица пользователя поле Имя не очищалось при повторном нажатии кнопки "Обновить" в профиле?

- ничего же не очищается. Или у вас именно очищается? т.е. пропадает

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
17
16:18

Да, именно пропадает. Касается это только родных user-полей. Custom-поля типа текст не исчезают.
И происходит это, если именно обновлять профиль синей кнопкой, а не обновлять страницу браузера.
В моем случае нужны user-поля Имя и Фамилия, при этом с запретом на редактирование.
А отображаемое имя - это отдельная история, с которой я уже разобрался (вносил некоторые правки в модуль WP Social Login и в user.php, чтобы display_name автоматически составлялось из first_name и last_name, а в случае их отсутствия - из user_login)

0
Вова (Otshelnik-Fm)
не в сети 1 час
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18642
18
16:30

Посмотрел - баг подтвердил. В post не передаются данные с этих полей - вот они и очищаются

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

приняли в работу

1
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
19
16:31

Спасибо за оперативный отклик!

0
Антон
не в сети 4 года
На сайте с 10.07.2017
Участник
Тем 2
Сообщения 12
20
13:39

Обновился до 16.4.11, проблемы больше нет, ура!
Благодарю разработчиков за внимание 8)

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