вопрос
Система вставляет микроразметку рейтинга только на странице полной новости: itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"
Но если в полной новости присутствует вывод новостей через кастом, а в шаблоне вывода есть рейтинг, он так же размечается и это не нравиться гуглу.
http://prntscr.com/r1wwmg вот тут его вывод. Можно ли как-то поправить это? Или в крайнем случаи хотя бы в некоторых новостях это убрать. Спасибо!
Но если в полной новости присутствует вывод новостей через кастом, а в шаблоне вывода есть рейтинг, он так же размечается и это не нравиться гуглу.
http://prntscr.com/r1wwmg вот тут его вывод. Можно ли как-то поправить это? Или в крайнем случаи хотя бы в некоторых новостях это убрать. Спасибо!
Чтобы не вносить изменения в двух файлах, можно применить небольшой костыльный вариант. В файле /engine/modules/show.custom.php после строки if( $row['allow_rate'] ) { добавляем две строки
и после строки $tpl->set( '[/rating]', "" ); добавляем
Если не нравится такой вариант, надо в функцию ShowRating добавить пятый параметр, в зависимости от которого выводим микроразметку и в файле show.custom.php в два вызова функции добавить этот новый параметр.
файл /engine/modules/functions.php
файл /engine/modules/show.custom.php
$temp_dle_module = empty($dle_module) ? '' : $dle_module;
$dle_module = '';
и после строки $tpl->set( '[/rating]', "" ); добавляем
$dle_module = $temp_dle_module;
Если не нравится такой вариант, надо в функцию ShowRating добавить пятый параметр, в зависимости от которого выводим микроразметку и в файле show.custom.php в два вызова функции добавить этот новый параметр.
файл /engine/modules/functions.php
function ShowRating($id, $rating, $vote_num, $allow = true, $schema_enable = true) {
...
if ($vote_num AND $dle_module == "showfull" and $schema_enable) {
файл /engine/modules/show.custom.php
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 1, false ) );
...
$tpl->set( '{rating}', ShowRating( $row['id'], $row['rating'], $row['vote_num'], 0, false ) );