Похоже, что по этому поводу нет документации, поэтому неудивительно, что это было сложно.
Чтобы получить URL-адрес аватара BuddyPress, используйте следующую функцию:
// Assuming $user_id is the id for the desired user
echo bp_core_fetch_avatar (
array( 'item_id' => $user_id, // id of user for desired avatar
'type' => 'full',
'html' => FALSE // FALSE = return url, TRUE (default) = return img html
)
);
Вот документация (немного отформатированная мной) из исходного файла php:
Документация
bp_core_fetch_avatar( $args );
Возврат: строка Отформатированный HTML-элемент <img>
или необработанный URL-адрес аватара на основе аргумента $html.
Описание:
Получите аватар для объекта BuddyPress. По умолчанию поддерживает аватары для пользователей, групп и блогов, но может быть расширен для поддержки пользовательских компонентов.
Эта функция отдает приоритет загруженным локально аватарам. Когда локальный аватар не найден, выполняется запрос Gravatar.
использование
<?php bp_core_fetch_avatar( $args ); ?>
Использование по умолчанию:
<?php $args = array(
'item_id' => false,
'object' => 'user',
'type' => 'thumb',
'avatar_dir' => false,
'width' => false,
'height' => false,
'class' => 'avatar',
'css_id' => false,
'title' => false,
'alt' => '',
'email' => false,
'no_grav' => false,
'html' => true,
'extra_attr' => '',
'scheme' => null,
'rating' => {setting for 'avatar rating' option},
'force_default' => false
);
bp_core_fetch_avatar( $args ); ?>
Параметры:
Все аргументы технически необязательны; некоторые из них, если они не указаны, будут автоматически обнаружены функцией bp_core_fetch_avatar(). Это автоопределение более подробно описано ниже при обсуждении конкретных аргументов.
item_id
(int|bool) Числовой идентификатор элемента, для которого вы запрашиваете аватар (например, идентификатор пользователя). Если «item_id» отсутствует, функция пытается вывести идентификатор из «объекта» + текущего контекста: если «объект» является «пользователем», а текущая страница является страницей пользователя, «item_id» по умолчанию будет отображаемым Идентификатор пользователя; если «группа» и на странице группы, к текущему идентификатору группы; если «блог», на идентификатор текущего блога. Если 'item_id' не может быть определен таким образом, функция возвращает false. По умолчанию: false.
$object
(строка) Тип объекта, для которого вы получаете аватар. BuddyPress изначально поддерживает три варианта: «пользователь», «группа», «блог»; плагин может зарегистрировать больше. По умолчанию: "пользователь".
$type
(строка) Когда новый аватар загружается в BP, сохраняются версии с изображением большого пальца и полная версия. Этот параметр указывает, какой аватар вам нужен — «полный» или «большой палец» меньшего размера. По умолчанию: "большой палец".
$avatar_dir
(string|bool) (определяется автоматически) Имя подкаталога, в котором должен быть найден запрошенный аватар. Если значение не передано, 'avatar_dir' выводится из 'object': 'user' становится 'avatars', 'group' становится 'group-avatars', 'blog' становится 'blog-avatars'.
Помните, что эта строка обозначает подкаталог основного каталога аватаров BP (обычно на основе {@link wp_upload_dir()}); это строка типа «групповые аватары», а не полный путь к каталогу. Как правило, переопределять значение по умолчанию необходимо только в том случае, если аватары хранятся не в месте по умолчанию. По умолчанию: false.
$width
(int|bool) (определяется автоматически) Запрошенная ширина аватара. Единица измерения – пиксели. Это значение используется для создания атрибута ширины для элемента <img>
. Если значение не передается, BP использует глобальную ширину аватара для этого типа аватара. По умолчанию: false.
$height
(int|bool) (определяется автоматически) Запрошенная высота аватара. Единица измерения – пиксели. Это значение используется для создания атрибута «высота» для элемента <img>
. Если значение не передается, BP использует глобальную высоту аватара для этого типа аватара. По умолчанию: false.
$class (строка) Класс CSS для элемента <img>
. Обратите внимание, что BP довольно широко использует класс «аватар» в своем стиле по умолчанию, поэтому, если вы планируете передать пользовательское значение, подумайте о том, чтобы добавить его к «аватару» (например, «аватар foo»), а не полностью заменить его. По умолчанию: "аватар".
$css_id (string|bool) Идентификатор CSS для элемента <img>
. По умолчанию: false.
$title (строка) Атрибут title для элемента <img>
. По умолчанию: false.
$alt (строка) Атрибут alt для элемента <img>
. В BP это значение обычно передается функциями-оболочками, где данные, необходимые для конкатенации строки, находятся под рукой; см. пример {@link bp_get_activity_avatar()}. По умолчанию: ''.
$email
(string|bool) Адрес электронной почты для использования в запросах Gravatar. Если не настроено иное, BP использует Gravatar в качестве запасного варианта для аватаров, которые не предоставляются локально. API Gravatar требует использования хэша адреса электронной почты пользователя; этот аргумент обеспечивает это. Если он не указан, функция выведет его: для пользователей — путем получения электронной почты пользователя из базы данных, для групп/блогов — путем объединения «{$item_id}-{$object}@{bp_get_root_domain()}». Пользовательский запрос увеличивает нагрузку, поэтому рекомендуется, чтобы функции-оболочки предоставляли значение для «электронной почты» при запросе идентификаторов пользователей. По умолчанию: false.
$no_grav (bool) Отключить ли резервный вариант Gravatar по умолчанию. По умолчанию BP использует Gravatar, когда не может найти локальный аватар. В некоторых случаях это может быть нежелательно, и в этом случае параметру «no_grav» следует присвоить значение true. Чтобы глобально отключить резервные копии Gravatar, см. фильтр «bp_core_fetch_avatar_no_grav». По умолчанию: false.
$html
(bool) Возвращать ли HTML-элемент <img>
или необработанный URL-адрес аватара. Если false, аргументы, специфичные для <img>
(например, 'css_id'), будут игнорироваться. По умолчанию: true.
$extra_attr (строка) HTML-атрибуты для вставки в элемент IMG. Не продезинфицирован. По умолчанию: ''.
$scheme
(строка) схема URL для использования. См. set_url_scheme() для допустимых значений. Нуль по умолчанию.
$rating (string) Для какой оценки отображать Gravatar. Принимает «G», «PG», «R», «X». По умолчанию используется значение параметра avatar_rating.
$force_default (bool) Используется при создании URL-адреса Gravatar. Следует ли принудительно использовать изображение по умолчанию, независимо от того, существует ли Gravatar. По умолчанию: false.
Примечания:
Чтобы локально отключить резервные копии запросов Gravatar, добавьте этот фильтр:
add_filter( 'bp_core_fetch_avatar_no_grav', '__return_true' );
01.01.2016