Хак Aggregaterating для dle - микроразметка для рейтинга новости

tensey

:)
Прошёл марафон
Регистрация
10 Июл 2017
Сообщения
74
Реакции
44
Баллы
18
Открываем /engine/modules/show.full.php
ищем
PHP:
if( $row['allow_rate'] ) {
выше вставляем

PHP:
if ( $row['rating'] == 0 ) $row['rating'] = 5.0;
        if ( $row['vote_num'] == 0 ) $row['vote_num'] = 1;
        $tpl->set( '{rating-num}', $row['rating'] );
        $tpl->set( '{vote-count}', $row['vote_num'] );
Что все это значит:
1 строчка задаст новости рейтинг 5.0 в случае если новость свежая и еще не получала оценки. Иначе валидатор разметки будет ругаться
2 строчка задаст число голосовавших 1, это для того чтоб гугл поверил что у новости выставлен рейтинг.
3 и 4 строчки добавят нам два новых тега {rating-num} - оценка и {vote-count} - количество голосов без лишних тегов.

В fullstory.tpl в самый низ пихаем
HTML:
<script type="application/ld+json">
{
  "@context": "http://schema.org/",
  "@type": "Movie",
  "aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "{rating-num}",
    "bestRating": "5.0",
    "worstRating": "1.0",
    "ratingCount": "{vote-count}"
    }
}
</script>
"@type": "Movie"- меняем на свой тип новости. В итоге когда нибудь ваш сайт будет находиться в поисковике так
 
  • Like
Реакции: Den

Dammager

Новичок
Регистрация
16 Ноя 2017
Сообщения
10
Реакции
1
Баллы
3
Как в DLE 12 это сделать? теги {rating-num} и {vote-count} отображаются как есть, не конвертируются в числа.
 

doz

Гуру
Кодер
Приватовец
VIP
Регистрация
12 Мар 2017
Сообщения
212
Реакции
81
Баллы
28
Как в DLE 12 это сделать? теги {rating-num} и {vote-count} отображаются как есть, не конвертируются в числа.
нету таких тегов потому что в дле.
{vote-count} измени на {vote-num}, по поводу {rating-num} думаю нужно просто прописать {rating} (на счет последнего не уверен)
 

Dammager

Новичок
Регистрация
16 Ноя 2017
Сообщения
10
Реакции
1
Баллы
3
нету таких тегов потому что в дле.
{vote-count} измени на {vote-num}, по поводу {rating-num} думаю нужно просто прописать {rating} (на счет последнего не уверен)
Вы первый пост внимательно читали? Эти теги создаются искусственно в файле show.full.php, это ХАК. Впрочем, проблема уже решена.
 
Сверху Снизу