Функция get_avatar()
в WordPress возвращает HTML-код аватара пользователя в виде тега <img>
. Она используется для отображения аватарок в комментариях или в профилях пользователей, если указаны их email или ID.
Описание
Функция get_avatar()
обычно применяется для вывода аватара комментатора или автора записи. Она может возвращать аватар для зарегистрированных пользователей WordPress, для email-адресов, либо для MD5-хэшей, которые используются Gravatar.
get_avatar( mixed $id_or_email, int $size = 96, string $default_value = '', string $alt = '', array $args = null ): string|false
Параметры
$id_or_email
(строка/объект/число, обязательный): Идентификатор пользователя, email, объектWP_User
,WP_Comment
,WP_Post
, или MD5 хэш Gravatar.$size
(число, необязательный): Размер изображения в пикселях (ширина и высота). По умолчанию 96.$default_value
(строка, необязательный): URL изображения по умолчанию или один из следующих типов:'404'
— возвращает ошибку 404, если аватар не найден.'retro'
,'monsterid'
,'wavatar'
,'identicon'
— различные стили аватаров.'blank'
— прозрачное изображение GIF.- По умолчанию: значение опции
'avatar_default'
или'mystery'
.
$alt
(строка, необязательный): Текст для атрибутаalt
тега<img>
. По умолчанию пусто.$args
(массив, необязательный): Дополнительные аргументы:height
иwidth
: Высота и ширина изображения (по умолчанию равно$size
).force_default
: Всегда показывать изображение по умолчанию.rating
: Минимальный рейтинг аватара (‘G’, ‘PG’, ‘R’, ‘X’).scheme
: Схема URL (HTTP или HTTPS).class
: Дополнительные классы для тега<img>
.force_display
: Всегда отображать аватар.extra_attr
: Дополнительные HTML атрибуты для тега<img>
.loading
: Управление атрибутомloading
для ленивой загрузки (например,lazy
).
Возвращает
Функция возвращает строку с HTML-кодом тега <img>
или false
в случае ошибки.
Вывод аватара комментатора:
<?php echo get_avatar( $comment, 32 ); ?>
Этот пример выводит аватар для текущего комментатора с размером 32×32 пикселя.
Аватар автора записи:
<?php echo get_avatar( get_the_author_meta( 'user_email' ), 32 ); ?>
Здесь функция получает аватар автора текущей записи на основе его email.
Добавление класса и стиля к аватару:
<?php echo get_avatar( $current_user->user_email, 30, '', '', array('class' => 'pull-left', 'extra_attr' => 'style="margin: -4px 7px;"') ); ?>
Этот пример добавляет дополнительные классы и атрибуты к аватару, включая стиль и выравнивание.
Настройка аватара по умолчанию:
add_filter( 'avatar_defaults', 'add_default_avatar_option' );
function add_default_avatar_option( $avatars ) {
$url = get_stylesheet_directory_uri() . '/img/def-avatar.jpg';
$avatars[ $url ] = 'Аватар сайта';
return $avatars;
}
Этот код добавляет новый вариант аватара по умолчанию в настройки обсуждений.
Примечание
Если аватар не отображается, убедитесь, что в настройках (Настройки > Обсуждение) включена опция «Показывать аватары».
Фильтры
get_avatar
— позволяет изменить результат работы функции.pre_get_avatar
— используется для изменения данных до их обработки функцией.
Заключение
Функция get_avatar()
предоставляет гибкие возможности для работы с аватарами пользователей. Она широко используется для отображения аватаров в комментариях, профилях пользователей и других местах, где требуется отображение аватара. Пользователь может гибко настроить размер, стиль, класс и даже полностью заменить аватар на свой вариант через хуки или фильтры.