Как создать одну форму в WordPress для нескольких ролей пользователей - PullRequest
0 голосов
/ 28 января 2020

Я создаю веб-сайт WordPress, в котором мне нужна форма, в которой два пользователя будут заполнять эту единственную форму.

Как и раздел 1 будет заполнен гостем, а раздел 2 будет также существующим пользователем, мне нужно для отображения записей формы на панели инструментов.

Кроме того, для гостевых пользователей должен быть отключен раздел 2.

Я не уверен, как этого добиться. enter image description here

1 Ответ

0 голосов
/ 28 января 2020

У вас есть как минимум 2 довольно надежных варианта.

"Свободный" способ - создать собственную форму с PHP и использовать WordPress 'is_user_logged_in()* 1005. * функция, чтобы показать / скрыть вторую часть. (Вы хотите, чтобы нижняя половина даже не отображалась на странице, а просто была «скрыта» в качестве передового опыта).

Другой способ - использовать один из наиболее мощных из возможных Плагины Form Builder для WordPress: GravityForms . Обратите внимание, я не связан с ними, но мое агентство использовало Gravity Forms в течение десятилетия, и оно невероятно расширяемо. Как и в родном WordPress, в Gravity Forms имеется множество хуков и фильтров для изменения формы, вывода, отображения администратора и т. Д. c.

Вы можете создать всю форму и использовать * 1013. Фильтр * для изменения формы на основе значения, возвращенного из is_user_logged_in(). Недостатком этого является то, что это премиальный плагин, но у него огромное сообщество, которое сделало с ним действительно полезные вещи. Положительным моментом является то, что он уже имеет готовые дисплеи записи на приборной панели, поэтому вам не нужно будет делать много в этом ключе.

В любом случае, у вас для вас достаточно много работы (будь то использование пользовательская форма PHP или плагин), но logi c, стоящая за отображаемыми разделами, довольно проста и будет основана на функции is_user_logged_in().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...