get_avatar()
Отримує html код аватара ( <img>
) коментатора, якщо користувач авторизований або вказав email під час коментування. Зазвичай використовується у розділі коментарів.
Використовується всередині циклу коментарів або обов’язково потрібно передати перший параметр!
Використовуйте фільтр get_avatar , коли потрібно змінити результат функції.
Це init .
Заміна функції (перевизначення) — у плагіні можна створити функцію з такою самою назвою, тоді вона замінить поточну функцію.
(швидко) | 50000 разів – 4.98 сек
(швидко) |
PHP 7.1.0, WP 4.7.1
Хуки з функції
Повертає
Строку|false
. HTML тег <img>
. false якщо не вдалося надіслати запит. Якщо немає аватара, але запит відправився, то поверне аватарку дефолтом – не false.
Використання
get_avatar($id_or_email, $size, $default, $alt, $args);
-
$id_or_email
(рядок/об’єкт/число) (обов’язковий) ID або email користувача, для якого необхідно отримати аватар. Також можна вказати об’єкти: WP_User , WP_Post , WP_Comment або md5 хеш gravatar.
У більшості шаблонів у цьому параметрі можна вказати глобальну змінну
$comment
. Якщо функція не працює (викликає помилку), то запишіть у неї email коментатора, наприклад:get_avatar('[email protected]');
-
$size
(число) -
Розмір картинки. Зазначене число стане шириною та висотою в пікселях.
Типово: 96 -
$default
(рядок) УРЛ на зображення за замовчуванням, для користувачів, які не мають аватарки в сервісі gravatar.
Також приймає:
404
– Поверне 404 замість дефолтної картинки.retro
– піксельна картинка 8bit:monsterid
– монстрик:wavatar
– Мульт обличчя:indenticon
– картинка-візерунок:mystery
, ‘mm’ або ‘mysterman’ – невідома людина:blank
– прозора GIF картинка.gravatar_default
– логотип Gravatar:
За промовчанням: ” (значення опції ‘avatar_default’ або ‘mystery’)
-
$alt
(рядок) -
Текст для атрибуту ‘alt’ тега
<img> .
За замовчуванням: ” -
$args
(масив) Додаткові аргументи для отримання аватара:
height
– Число. Висота у пікселях. Типово $size .width
– Число. Ширина у пікселях. Типово $size .force_default
– логічний. Завжди показувати дефолтну картинку і ніколи не аватар.rating
– Рядок. Мінімальний рейтинг аватара для відображення. Можливо: ‘G’, ‘PG’, ‘R’, ‘X’. За промовчанням значення опції ‘avatar_rating’.scheme
– Рядок. Схема URL, яка буде використовуватися. Дивіться set_url_scheme() .class
– Масив/рядок. Додаткові класи для тега img.force_display
– логічний. Завжди показувати аватар? Ігнорує опцію show_avatars.extra_attr
– Рядок. Додаткові HTML атрибути для тега IMG. Перед виведенням на екран не очищаються.loading
– Рядокlazy
.
Типово: null
Приклади
#1 Виведемо Аватар поточного коментатора:
<?php echo get_avatar($ comment, 32); ?>
Отримаємо:
<img alt='' src='http://0.gravatar.com/avatar/ad516503a11cd5ca435acc9bb6523536?s=32' class='avatar avatar-32 photo avatar-default' height='32' width='32' / >
#2 Висновок аватара автора поточного посту
<?php echo get_avatar( get_the_author_meta('user_email'), 32); ?>
#3 Додавання атрибуту style
Параметр ‘extra_attr’ дозволяє додавати будь-які атрибути тега IMG:
<?php echo get_avatar( $current_user->user_email, 30, '', '', array('class'=>'pull-left', 'extra_attr'=>'style="margin: -4px 7px;"' ))); ?>
Отримаємо:
<img alt="" src="http://1.gravatar.com/avatar/155e695ab2987ee3c482c1e3e690683b?s=30&d=mm&r=g" class="avatar avatar-30 photo pull-left" height="30" width="30" style="margin: -4px 7px;" >
#4 Варіант аватарки за замовчуванням у налаштуваннях обговорення
Це код додавання ще однієї картинки (опції) у налаштуваннях обговорення, яку можна вибрати як аватарку за умовчанням. Така аватарка зберігається в опції get_option(‘avatar_default’) .
## Додає ще один варіант аватарки за умовчанням у налаштування обговорення ## Файл аватарки 'def-avatar.jpg' потрібно залити в папку теми 'img' 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_data() . Дефолтний аватар буде встановлено лише якщо функції не вказано дефолтний аватар, тобто. не встановлено параметр ‘default’.
## Встановлює аватар за замовчуванням ## Файл аватарки 'def-avatar.jpg' потрібно залити в папку теми 'img' add_filter( 'pre_get_avatar_data', 'replace_default_avatar'); function replace_default_avatar( $args ){ // адмінка та сторінка обговорення, де налаштовується ава за замовчуванням. // if( is_admin() && get_current_screen()->base === 'options-discussion' ) return $args; static $defava; if( $defava === null ) $defava = get_option( 'avatar_default', 'mystery' ); // прискоримося // Якщо використовується ава за умовчанням, щоб працював параметр 'default' якщо він встановлений для функцій аватарок if( ! $args['default'] || $defava == $args['default'] ){ $args['default'] = get_stylesheet_directory_uri() . '/img/def-avatar.jpg'; } return $args; }
список змін
З версії 2.5.0 | Введено. |
З версії 4.2.0 | Optional $args parameter added. |