Функция 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() предоставляет гибкие возможности для работы с аватарами пользователей. Она широко используется для отображения аватаров в комментариях, профилях пользователей и других местах, где требуется отображение аватара. Пользователь может гибко настроить размер, стиль, класс и даже полностью заменить аватар на свой вариант через хуки или фильтры.