Домой Wp-Recall WP-Recall: Пишем свое дополнение и кастомизация Прямой путь до аватарки на странице пользователя для вывода в микроразметку
4 ответ(ов) в теме
Cureor
не в сети 4 недели
На сайте с 01.06.2019
Участник
Тем 10
Сообщения 30
1
01:37
Версия WP-Recall:16.17.15

Здравствуйте, хочу вывести изображение в качестве Open Graph метатега для соцсетей, в документации нашёл только метод
echo rcl_avatar();, но он генерирует целый контейнер с дивами и кнопками управления аватаркой пользователя.

<div id="rcl-avatar">
<span class="avatar-image">
	<img alt="" src="https://сайт.ru/wp-content/uploads/rcl-uploads/avatars/28-150.jpg?ver=1565992709" srcset="https://сайт.ru/wp-content/uploads/rcl-uploads/avatars/28-300.jpg?ver=1565992709 2x" class="avatar avatar-120 photo avatar-default" height="120" width="120">
	<span id="avatar-upload-progress"><span></span></span>
</span>
<span class="avatar-icons">
	<span class="rcl-avatar-icon icon-avatar-upload">
		<a title="Загрузка аватара" url="#"><i class="rcli fa-download"></i><span><input type="file" id="userpicupload" accept="image/*" name="userpicupload"></span></a>
	</span>
	<span class="rcl-avatar-icon icon-avatar-delete">
		<a title="Удалить аватар" href="https://сайт.ru/author/test7/?rcl-action=delete_avatar&_wpnonce=531334ec84"><i class="rcli fa-times"></i></a>
	</span>
	<span class="rcl-avatar-icon icon-webcam-upload">
		<a title="Снимок с веб-камеры" id="webcamupload" url="#"><i class="rcli fa-camera"></i></a>
	</span>
	<span class="rcl-avatar-icon icon-user-info">
		<a title="Информация о пользователе" onclick="rcl_get_user_info(this);return false;" url="#"><i class="rcli fa-info-circle"></i></a>
	</span>
</span>	
</div>

Каким образом можно получить прямой адрес этого изображения?

Редакции сообщения
17.08.2019 01:41CureorПричина: не указано
17.08.2019 01:41CureorПричина: не указано
17.08.2019 01:44CureorПричина: не указано
17.08.2019 01:58CureorПричина: не указано
0
Дружаев Владимир (Otshelnik-Fm)
не в сети 16 минут
На сайте с 27.01.2013
Модератор
Тем 30
Сообщения 14827
2
10:00

Перенесено в кастомизации.

используйте get_avatar - родную вп функцию

0
Cureor
не в сети 4 недели
На сайте с 01.06.2019
Участник
Тем 10
Сообщения 30
3
18:07

С этой функцией не всё так очевидно, конечно.

Но в итоге самостоятельно вывел аватарку с публичной страницы пользователя для микроразметки Open Graph. Дополнительно пришлось ещё повозиться, чтобы обратиться к нужному пользователю, а не к current_user.

<?php $public_avatar = get_queried_object()->ID; ?>
<meta property="og:image" content="<?echo get_avatar_url( $public_avatar, array( 'size' => 200 ));?>">
<meta name="twitter:image" content="<?echo get_avatar_url( $public_avatar, array( 'size' => 200 ));?>">

Редакции сообщения
17.08.2019 18:07CureorПричина: не указано
17.08.2019 18:08CureorПричина: не указано
0
Cureor
не в сети 4 недели
На сайте с 01.06.2019
Участник
Тем 10
Сообщения 30
4
18:10

А ну и условие в author.php для подключения отдельной шапки header-public.php для публичных страниц пользователей (в том числе и для других целей, помимо уникальной работы микроразметки).

<?php global $user_ID;
if(rcl_is_office($user_ID)){
	get_header();
}else{
    get_header('public');
} ?>

Редакции сообщения
17.08.2019 18:11CureorПричина: не указано
17.08.2019 18:12CureorПричина: не указано
0
Тема закрыта. Публикация новых сообщений запрещена.