Intereting Posts
Внешний вид> Редактор больше не виден Получать дополнительные пользовательские данные в столбце post из таблицы пользователей Геокодирование раздельного настраиваемого массива полей jquery tinymce и вложенные плагины wp Страницы становятся «архивами» вместо использования шаблона страницы Запуск интерфейса и бэкэнд WordPress в разных доменах Оценка внешнего правила перезаписи перед внутренним правилом перезаписи WordPress Добавить Metabox в страницу настроек / параметров Навигация, который работает выше и ниже заголовка Как правильно сгенерировать содержимое страницы из базы данных? Превосходные практики Nonce: скрытый ввод против wp_localize_script? Что делает wp-embed.min.js в WordPress 4.4? Удаление подкатегорий из постоянных ссылок Как сохранить the_title () в переменной для повторного использования значения, а не просто отбросить его Как проверить тип сообщения (включить пользовательский css)

фильтровать сообщения пользователя buddypress пользователями пользовательскими полями «xprofile»

Привет, я изо всех сил пытаюсь выяснить, как сделать фильтр для сообщений пользователей по своим полям профиля. Example = Форма регистрации пользователей имеет поле для раскрывающегося профиля школьных лет 2017, 2018, а затем они создают сообщение. фильтровать все сообщения по этой таксономии окончания года .. так что вы можете видеть только сообщения людей того учебного года. Кто-нибудь знает о плагине, который мог бы это сделать. запутанная часть – это сообщения, которые загружаются, но фильтруются деталями-членами. два отдельных каталога.

Пожалуйста, помогите или посоветуйте

Solutions Collecting From Web of "фильтровать сообщения пользователя buddypress пользователями пользовательскими полями «xprofile»"

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

define(FIELD_ID, /* Insert field id here */); /* Save all site users */ $users = bp_core_get_users(); /* Create array for save fields values */ $user_xprofile_school = array(); /* Loop over each user and save the id and the school field value */ foreach ( $users as $user ): $index = 0; foreach ( $user as $u ): /* Check if value exists before save */ if ( xprofile_get_field_data( FIELD_ID, $u->id, 'array' ) ): $users_xprofile_school[$index]['user_id'] = $u->id; $users_xprofile_school[$index]['field_school'] = xprofile_get_field_data(FIELD_ID, $u->id, 'array'); $index++; endif; endforeach; endforeach; 

Это приведет к возврату массива:

 array([0] => ([user_id] => 1, [field_school] => 'years 2017'), [1] => ([user_id] => 2, [field_school] => 'years 2018')) 

Затем вы можете зацикливать сообщения пользователей, используя индекс field_school и user_id .

Это не вся работа, но может быть хорошей отправной точкой. Надеюсь, это поможет вам.