Микроразметка второго и третьего типа рейтинга полной новости

Микроразметка второго и третьего типа рейтинга полной новости

Ранее было подробно расписано, как сделать микроразметку первого типа рейтинга в CMS DLE. Все бы ничего, но как быть если материалы на сайте оцениваются вторым типом рейтинга - Нравится или третьим Нравится и Не нравится. Но нашлось решение, как это все можно организовать.


Установка микроразметки второго типа рейтинга полной новости:

Итак, что мы имеем во втором типе рейтинга? Отметку Нравится, то есть количество людей, которым понравилась та или иная новость. Это число мы возьмем за количество проголосовавших, а оценку мы зададим сами. Если число проголосовавших у нас равно 0, то оценка равняется 0, а если больше 0, то например 4.5.

1. Убедится, что в Панели управления DLE > Настройка системы > вкладка Новости - установлен Тип рейтинга публикаций > Нравится.

2. Открыть fullstory.tpl и в самом верху добавить:
<div itemscope itemtype="http://schema.org/Product">

В самом низу добавить:
<meta itemprop="name" content="{title}" />
	<div itemprop="aggregateRating" itemscope="" itemtype="http://schema.org/AggregateRating">	
		<meta itemprop="bestRating" content="5" />
		<meta itemprop="ratingValue" content="{numb_rate}" />
		<meta itemprop="ratingCount" content="{numb_vote}" />
	</div>	
</div>

Где 5 – это тип шкалы, в нашем случае – 5-балльная.
{rating_nums} – оценка рейтинга.
{vote-num} – количество людей, оценивших материал.

3. Открыть engine/modules/show.full.php и найти:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'] ) );

Добавить ниже:
if($row["vote_num"] == 0) { // Если оценок (количество) 0

	$numb_rate = 0; // Оценка
	$numb_vote = 0; // Количество оценок
	
} else { // Если оценок (количество) больше 0

	$numb_rate = 4.5; // Оценка
	$numb_vote = $row["vote_num"]; // Количество оценок
	
}

$tpl->set("{numb_rate}", $numb_rate);
$tpl->set("{numb_vote}", $numb_vote);

4. Очистить кеш движка.

Готово!


Установка микроразметки третьего типа рейтинга полной новости:

В этом типе рейтинга мы имеем также количество оценивших материал плюс саму оценку - либо положительную, либо отрицательную, что нам не совсем подходит. Поэтому при отрицательном общем балле рейтинга мы будем переводить оценку в 1, при нуле – в 0, а при более нуля – нужный нам рейтинг, например тот же 4.5.

1. Убедится, что в Панели управления DLE > Настройка системы > вкладка Новости - установлен Тип рейтинга публикаций > Нравится и Не нравится.

2. Открыть fullstory.tpl и в самом верху добавить:
<div itemscope itemtype="http://schema.org/Product">

В самом низу добавить:
<meta itemprop="name" content="{title}" />
	<div itemprop="aggregateRating" itemscope="" itemtype="http://schema.org/AggregateRating">	
		<meta itemprop="bestRating" content="5" />
		<meta itemprop="ratingValue" content="{numb_rate}">
		<meta itemprop="ratingCount" content="{numb_vote}">
	</div>	
</div>

Где 5 – это тип шкалы, в нашем случае – 5-балльная.
{rating_nums} – оценка рейтинга.
{vote-num} – количество людей, оценивших материал.

3. Открыть engine/modules/show.full.php и найти:
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], $user_group[$member_id['user_group']]['allow_rating'] ) );

Добавить ниже:
if($row["vote_num"] == 0) { // Если оценок (количество) 0

	$numb_rate = 0; // Оценка
	$numb_vote = 0; // Количество оценок
	
} else { // Если оценок (количество) больше 0

	if($row["rating"] < 0) { // Если оценка меньше 0
	
		$numb_rate = 1; // Оценка
		
	} elseif($row["rating"] > 0) { // Если оценка больше 0
	
		$numb_rate = 4.5; // Оценка
		
	} else { // Если оценка 0
	
		$numb_rate = 0; // Оценка
		
	}
	
	$numb_vote = $row["vote_num"]; // Количество оценок
	
}

$tpl->set("{numb_rate}", $numb_rate);
$tpl->set("{numb_vote}", $numb_vote);

4. Очистить кеш движка.

Готово!

Важно: обычно такая разметка используется для товаров и поскольку (вероятнее всего) у вас не интернет-магазин, то при проверке разметки через валидатор могут появиться ошибки. Не обращайте на них внимания, как показывает практика – рейтинг в поиске и так должен появиться.
 
Версия DLE: 13.х
Автор: Артем Мáлков
Источник
Информация
Посетители, находящиеся в группе Гость, не могут оставлять комментарии к данной публикации.