Редактор темы

Реклама
Реклама
Реклама
Реклама

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

DLEPlugins

Кодер
Регистрация
29 Ноя 2015
Сообщения
1.601
Рейтинг реакций
968
Баллы
113
1/3
Автор темы
Поделюсь с вами своим способом внедрения микроразметки для рейтинга в DLE.

Открываем /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"- меняем на свой тип новости. В итоге когда нибудь ваш сайт будет находиться в поисковике так
 
Последнее редактирование:
Гугл вроде как отменил этот наворот. Не ?
 
после данной правки переебывается рейтинг на сайте, в краткой новости рейтинг 0, а в полной 5
 
11.2 не работает в краткой новости, что сделать?
Разметка рейтинга должна быть только в полной новости! Иначе на главной странице и страницах категории будет много дублей рейтинга страниц новостей, а если это главная страница или категория - она не может иметь вообще никакого рейтинга!!! Но если на такие страницы у вас стоит хак или модуль чтобы пользователи могли ставить рейтинг таким страницам - то тут уже только этот хак или модуль надо править, и никак не файлы ДЛЕ
 
Разметка рейтинга должна быть только в полной новости! Иначе на главной странице и страницах категории будет много дублей рейтинга страниц новостей, а если это главная страница или категория - она не может иметь вообще никакого рейтинга!!! Но если на такие страницы у вас стоит хак или модуль чтобы пользователи могли ставить рейтинг таким страницам - то тут уже только этот хак или модуль надо править, и никак не файлы ДЛЕ
ок!понял! Тогда феик-аккаунтом придется тыкать по звездочкам😵
 
ок!понял! Тогда феик-аккаунтом придется тыкать по звездочкам😵
видимо не допонял что-то:

Рейтинг имеет только материал полной новости! Разметки рейтинга на других страницах (главная/категории и другие короткие новости) не должны иметь разметку рейтинга в коде страниц... Поэтому фейки или нет ставить в рейтинг - это не важно! Эта разметка должны присутствовать только в полной новости.
 
видимо не допонял что-то:

Рейтинг имеет только материал полной новости! Разметки рейтинга на других страницах (главная/категории и другие короткие новости) не должны иметь разметку рейтинга в коде страниц... Поэтому фейки или нет ставить в рейтинг - это не важно! Эта разметка должны присутствовать только в полной новости.
в краткой новости-незя самому ставить?
 
в краткой новости-незя самому ставить?
ставить или нет - дело каждого! я же писал о микроразметке схемаОрг Aggregaterating и где она должна быть, иначе её лучше вообще не ставить на сайт, дабы не вводить в заблуждение поисковые системы.
 
В верхнем коде строчка:
Код:
$tpl->set( '{rating-num}', $row['rating'] );
выводит общую сумму голосов. Вместо нее поставил:
Код:
$tpl->set( '{rating-num}', round( floatval( $row['rating'] ) / $row['vote_num'], 1 ) );
Стало выводить средний бал и гугл перестал ругаться.
 

Похожие темы Последние темы Популярные темы

Назад
Сверху