Intereting Posts
Как изменить имя пользователя и пароль учетной записи администратора разместил wordpress.com в локальном каталоге? Можно ли использовать фильтр wp_insert_post_data для сохранения пользовательских данных поля? Невозможно загрузить пользовательский файл CSS в дочернюю тему Сортировка гридов с помощью основных гридов и событий Сделать персональную таксономию категории Использовать родительский шаблон Как добавить атрибут rel к изображениям, которые содержат их категории? Сделать элемент отмеченным по умолчанию для всех пользователей в панели «Параметры экрана» Как передать определенный идентификатор сообщения из списка «все сообщения» в панели администратора Организация загрузки мультимедиа Как таксономия родителя автоматически добавляется в сообщение при использовании `wp_set_object_terms ()`? post_row_actions для пользовательского типа сообщения Изображения внутри заголовка сообщения Список подкатегорий с изображением Электронная почта существует в ERROR в форме регистрации Ajax

Как отобразить полевые данные профиля 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; ?>