Произвольные вкладки личного кабинета плагина WP-Recall уже достаточно давно поддерживают использование в своем контенте шаблонов для вывода значений произвольных полей пользовательского профиля. Обновление плагина до версии 16.8.2 немного расширило этот функционал, рассмотрим его подробнее в этой статье.
Произвольные вкладки личного кабинета - удобный функционал плагина WP-Recall, позволяющий добавлять новые вкладки в личный кабинет пользователя с заданным контентом без необходимости писать дополнение или править php-код - все делается из административной части, справиться с этим может и домохозяйка. В произвольной вкладке можно вывести какой то фиксированный контент, а также любые зарегистрированные на сайте шорткоды, но, зачастую, и этого бывает недостаточно.
Для расширения возможностей по выводу контента в произвольные вкладки была добавлена поддержка неких переменных сущностей-шаблонов, которые при выводе контента вкладки подменяются на установленные значения, которые могут быть обычными константами или даже результатом работы отдельных php-функций. Рассмотрим действующие внутри произвольной вкладки шаблоны, их список со временем может изменяться.
{RCL-UM:usermeta_key}
Данный шаблон позволяет выводить значения как произвольных полей профиля хозяина текущего личного кабинета, созданных через административную часть плагина, так и стандартных полей, необходимо только знать их meta_key:
- user_registered - дата регистрации пользователя
- user_login - логин пользователя
- user_email - емейл пользователя
- user_url - URL, указанный в настройке "Сайт"
- display_name - отображаемое имя
Порядок применения:
Выведем значение произвольного поля профиля, имеющего meta_key - telefon_12:
{RCL-UM:telefon_12}
Выведем дату регистрации пользователя:
{RCL-UM:user_registered}
Будет выводится только значение произвольного поля, без каких либо тегов или прочих обёрток.
{USERID} и {MASTERID}
{USERID} - выводит идентификатор текущего пользователя.
{MASTERID} - выводит идентификатор хозяина текущего личного кабинета.
Наиболее практичное применение этих шаблонов предполагается при использовании внутри произвольной вкладки шорткодов, тогда становится возможным указывать внутри шорткода атрибуты ожидающие указание пользовательских идентификаторов.
Например, на основе описания шорткода вывода групп grouplist можно будет его использовать, выбрав только группы, созданные хозяином текущего личного кабинета:
[grouplist admin_id="{MASTERID}"]
или наоборот, показав группы, которые он не создавал:
[grouplist admin_id__not_in="{MASTERID}"]
А применив шорткод userlist можно будет вывести карточку текущего пользователя:
[userlist include="{USERID}"]
Описанные возможности значительно расширяют сферу применения произвольных вкладок внутри личного кабинета, очень полезно о них знать и уметь применять, чтобы каждый раз не создавать вкладку через php.
Статья актуальна для версии WP-Recall 16.8.2 и выше.
Полезные ссылки:
Менеджер вкладок личного кабинета WP-Recall
Давняя идея наконец-то получила реализацию. Спасибо.
Действительно будет удобно для шорткодов что требуют идентификатор.
Вкладки личного кабинета станут еще персональней.
Спасибо однозначно.
Заметил такой момент, если {RCL-UM:usermeta_key} размещен с пустым значением во вкладке, тогда в ней выводиться надпись "не указано". До обновления такого не было.
О, ура)
УРААААААААА! Нашла то, что мне нужно! Вы - волшебники! Всё получается! Наконец-то получается вывести любое значение произвольного поля в любой вкладке! 😉
День добрый! Начну сразу с проблемы: добавил произвольное поле чекбокс, а при выводе во вкладке показывает "Array", кто может подсказать, как вывести все выбранные пользователем опции?
Здравствуйте. Подобные вопросы задаем на форуме поддержки. Создаем новую тему там https://codeseller.ru/forum/ и даем примеры и подробности
Здравствуйте, я вижу что можно добавить форму настраиваемую что-бы она например заполняла инфу в новую категорию типа [public-form post_type="post" form_id="3"]
А какой код надо написать что-бы вывести публикации списком из новой категории от сооствествующего пользователя у него в профиле в закладке? Я вижу что их можно создавать в "Менеджер вкладок личного кабинета" - но какой код там писатьѝ?
Перерыл все инструкции но пока не нашел ответа...