Важное по аватарам сайта WordPress (по функциям WP здесь) другие полезные вещи читаем в Техническое SEO: отработав get_avatar() получим html ссылку (код) аватара (<img />) автора сайта, комментатора, зарегистрированного пользователя, предоставившего email. Всё это используется где-то в обсуждениях разнообразных постов, товаров и услуг, к примеру…
Как правило используется внутри цикла обработки функционала обсуждений — либо, если выводим в некоем месте какие-то данные о пользователях (но об этом ниже), функция управляемая параметрами по типу фильтров в для get_avatar, когда нужно изменить результаты по вариантам вывода данных:
Непременно следует прочесть и этот пост, для связки с этим, а также не забываем об основе: get_avatar_url(), get_avatar_data()
Говорим о функционале обсуждений WordPress (если у вас какие-то иные шаблоны сайта, могут быть некоторые незначительные или значительные отличия)!..
Управление аватарами сайта WordPress get_avatar()
Хуки:
pre_get_avatar
get_avatar
Возвратит строку / false. HTML тег (ссылку): если, к примеру, у пользователя нет личного аватара (обычно это сервис), вернет аватарку по умолчанию — что примечательно — НЕ false.
Такая заготовка использования с параметрами (первый параметр обязателен: конкретный/автоматом):
get_avatar( $id_or_email, $size, $default_value, $alt, $args );
$id_or_email (строка/объект/число) Обязательный параметр — на основе идентификации email!
пример:
echo get_avatar( get_the_author_meta( 'user_email' ), 75, '', $autorsblog ); // 75 - размер авы, и 4-й параметр $alt - сохраним в переменной (к примеру имя автора)
$size(число) — 75 — размер аватара;- 3-й
$default(строка) (формирует автоматом url на заготовку картинки по умолчанию, если пользователь не имеет аватарки в gravatar) — может отдать и 404 (картинки по умолчанию можно взглянуть в админке Настройки/Обсуждения); - переменная ДЛЯ параметра
$alt/alt обычно пустой и, более того, если тщательно проверять сайт на недочёты, данное обстоятельство будет с предупреждением о пустоте) — можно имя автора указать и пр…
$alt (строка) — обычно пустой (url на заготовку картинки по умолчанию, если пользователь не имеет аватарки в gravatar) — может отдать и 404 (картинки по умолчанию можно взглянуть в админке Настройки/Обсуждения)…
ID либо же email юзера, получаемого аватара. Иногда указываются объекты — WP_User / WP_Post, WP_Comment или же через md5 хэш (конвертеры). А также в приличных шаблонах возможно использование глобальной переменной $comment …
Что важно добавить, функция замечательно встраивается в другие функции, в организации шорткодов (шорткоды Woocommerce), к примеру, можно создать блок вывода всех (или нужных) авторов сайта с полными (или частичными) данными: всё хорошо отстраивается. Функции очень быстрые, так что использование (если не допускать ошибок) отработают безо всяких там нагрузок на сервер!..
$args - массив
дополнительные аргументы для получения аватара:
- height — число — по высоте в пикселях ($size);
- width — число -ширина в пикселях;
- force_default — логическое (вариации отображения);
- rating — строка — рейтинг аватара ( ‘G’, ‘PG’, ‘R’, ‘X’) умолчание
'avatar_rating'; - scheme — строка — схема URL (см. set_url_scheme();
- class — массив/строка — задаём дополнительные классы для тега img (визуализация);
- force_display — логический — всегда показать аватар!?
- extra_attr — строка — дополнительные HTML атрибуты для обработки тега img (css) — имейте в виду, что не очищаются перед выводом, а потому полезны функции очистки данных иметь в виду, чтоб понимать возможности… К примеру: можно получить url img ссылку на картинку с именем автора, очистить например
strip_tags(), оставив только имя); - loading — строка lazy.
примеры:
echo get_avatar( $ comment, 48 );
или:
echo get_avatar( $ current_user->user_email, 30, '', '', array( 'class'=>'pull-left', 'extra_attr'=>'style="margin:7px 7px;"' ) );
в 'extra_attr' добавим атрибуты к img:
Получим:
<img class="avatar avatar-30 photo pull-left" style="margin: -4px 7px;" src="ссыль" alt="" width="30" height="30" />
варианты и решения — примеры чтобы вывести всех авторов сайта
Для того, чтобы вывести всех авторов сайта — список авторов:
<?php
add_shortcode( 'autors', 'ats_blog_autors_str' );
function ats_blog_autors_str() {
$args = array( 'role__in' => array( 'administrator', 'author', 'editor' ), 'orderby' => 'display_name', 'order' => 'desc', ); // ASC=от «А» до «Я» == desc=от «Я» до «А»
$authors = get_users( $args );
foreach( $authors as $author ) {
$autorsblog = get_the_author_meta( 'display_name', $author->ID );
?>
<div class="authoravs"><div class="authorav">
<a title="<?php the_author_meta( 'display_name', $author->ID ); ?>" href="<?php get_bloginfo( 'url' ); ?>/author/<?php the_author_meta( 'user_nicename', $author->ID ); ?>" rel="bookmark" onclick="return !window.open(this.href)">
<?php echo get_avatar( $author->ID , 75, '', $autorsblog ); //
?></a>
</div>
<div class="authorname"><b><?php the_author_meta( 'display_name', $author->ID ); ?>:</b> <div class="descrauthor"><?php the_author_meta( 'description', $author->ID ); ?></div><a title="<?php the_author_meta( 'display_name', $author->ID ); ?>" href="<?php get_bloginfo( 'url' ); ?>/author/<?php the_author_meta( 'user_nicename', $author->ID ); ?>" rel="bookmark">cтатьи автора</a>
– <span class="external-reference" data-link="<?php the_author_meta( 'url', $author->ID ); ?>">сайт</span></div><hr class="dss"></div>
<?php } }
Останется только организовать желательные стили.
![]()
По форме комментариев:
/*отключаем активные ссылки в комментариях*/
remove_filter( 'comment_text', 'make_clickable', 9 );
/*отключаем активные ссылки в комментариях*/
add_filter( 'comment_text', 'do_shortcode', 9 );
/*ПОДКЛЮЧАЕМ работу шорткодов в комментариях*/

конструктивное и целеSEOбразное создание и продвижение сайтов — ATs media (запросто с WordPress):
mihalica.ru !


