Intereting Posts
Зашифрован ли пароль перед его отправкой? Если да, то как я шифрую его так же? Nonce for Trashing Item Почему сообщение изменено не равно последней дате пересмотра последнего сообщения Вычисление байесовского среднего для пользовательского типа сообщения Настройка WordPress Media Manager – окно мультимедиа content-single.php не отображает the_content () Удаление пользователей из внешнего интерфейса с помощью wp_delete_user () Что такое сингулярный.php? Реструктуризация объектов из Rest-Api Добавить плагин перед основным контейнером Как получить данные из раздела и отобразить их на странице? Как создать пользовательскую кнопку для визуального редактора, который добавляет 4 неразрывных пробела? (плагин или простой код) Как редактировать почтовые метаданные в блоге WordPress? Получите пользовательские результаты поиска wp_query, которые будут отображаться на search.php Как отсоединить текстовый редактор с именами элементов textarea

Как отобразить полевые данные профиля BuddyPress в многопользовательских блогах

Я пытаюсь отобразить поле xprofile BuddyPress в многостраничном блоге WordPress. Я думал, что это может сделать трюк, но display_user, похоже, не работает вне BP? Есть простой способ сделать это? Я знаю, что есть старый плагин, который делает это в виджетах, но мне это совсем не нужно, и я бы предпочел поставить это прямо в тему.

Вот что я пробовал в теме в многосайтовом блоге. Это работает с loggedin_user-> id, но, конечно, для того, что я снимаю, это данные профиля для администратора блога. Возможно ли это получить?

<?php global $bp; $myfield = xprofile_get_field_data( 'Counties Served', $bp->displayed_user->id, $multi_format = 'comma' ); $data = xprofile_format_profile_field('checkbox', $myfield); echo $data; ?> 

Solutions Collecting From Web of "Как отобразить полевые данные профиля BuddyPress в многопользовательских блогах"

Поиграв с ним немного больше, вот что, наконец, помогло мне:

 global $bp; $thisblog = $current_blog->blog_id; $user_from_email = get_user_by('email', get_blog_option($thisblog, 'admin_email')); $user_id = $user_from_email->ID; $myfield = xprofile_get_field_data( 'Counties Served', $user_id, $multi_format = 'comma' ); $data = xprofile_format_profile_field('checkbox', $myfield); echo $data; 

Идентификатор $bp->displayed_user->id возвращает тот же идентификатор, что и идентификатор автора, поэтому, когда вы не находитесь внутри цикла членов или на странице участников, вам нужно получить идентификатор пользователя, используя функции WordPress.

 <?php global $bp, $post; $myfield = xprofile_get_field_data( 'Counties Served', $post->post_author, $multi_format = 'comma' ); $data = xprofile_format_profile_field('checkbox', $myfield); echo $data; ?>