- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день, форумчане!
Не смог найти решение данной проблемы =( всю остальную разметку сделал.
Правда валюта Руб в категориях не показывается, что туда писать тоже не понял и куда именно (в какую строку). В самой карточке товара вся разметка кроме "0" отзыва сделана без ошибок
reviewCount
0 (Значение параметра reviewCount должно быть положительным.)
В $review_count что лежит?
Насколько я понял, рейтинг должен на чём-то основываться: либо просто на количестве голосов (ratingCount), либо на количестве отзывов (reviewCount).
Если рейтинг продукта у Вас основан на голосах, а не на отзывах, то нужно использовать itemprop="ratingCount" вместо itemprop="reviewCount". И, разумеется, значение не должно быть нулевым. Могу заблуждаться.
Если рейтинг у конкретного продукта вообще отсутствует, выводить микроразметку, опять же, как я понял, не надо.
В $review_count что лежит?
Насколько я понял, рейтинг должен на чём-то основываться: либо просто на количестве голосов (ratingCount), либо на количестве отзывов (reviewCount).
Если рейтинг продукта у Вас основан на голосах, а не на отзывах, то нужно использовать itemprop="ratingCount" вместо itemprop="reviewCount". И, разумеется, значение не должно быть нулевым. Могу заблуждаться.
Если рейтинг у конкретного продукта вообще отсутствует, выводить микроразметку, опять же, как я понял, не надо.
Рейтинг основывается на отзывах (платформа Опенкарт)
беда в том, что если добавить отзыв о товаре, то ошибка пропадает. Если нету отзыва и стоит "0", то выводит ошибку. Как сделать (что и куда прописать) что бы было условие, есть отзыв то выводит, нету отзыва, он его пропускает
В шаблоне продукта, там же, откуда Вы эту микроразметку взяли, оборачиваете её в условие IF ($review_count). Если данная переменная (подразумевается, что в ней лежит целочисленное значение, количество отзывов) не равна нулю, то разметка внутри условия будет выведена.
Правда валюта Руб в категориях не показывается, что туда писать тоже не понял и куда именно
у микроразметки Product нет такой характеристики как валюта и цена, есть характеристика предложение - itemprop="offers" (вот там может быть цена и валюта)
В шаблоне продукта, там же, откуда Вы эту микроразметку взяли, оборачиваете её в условие IF ($review_count). Если данная переменная (подразумевается, что в ней лежит целочисленное значение, количество отзывов) не равна нулю, то разметка внутри условия будет выведена.
Условие прописано как я понял, но всё равно выдает ошибку
---------- Добавлено 30.06.2017 в 09:34 ----------
Переделал вот так (я не прогер и опыта нету вообще нет) помогите поправить. теперь карточки товара не открываются
<div class="rating" itemprop = "aggregateRating" itemscope itemtype = "http://schema.org/AggregateRating">
<p>
<?php for ($i = 1; $i <= 5; $i++) { ?>
<?php if ($rating < $i) { ?>
<span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span>
<?php } else { ?>
<span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span>
<?php } ?>
<?php } ?>
<?php if ($review_count) { ?>
<a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a>
</p>
<meta itemprop = "ratingValue" content="<?php echo $rating; ?>">
<meta itemprop = "worstRating" content="0">
<meta itemprop = "bestRating" content="5">
<meta itemprop = "reviewCount" content="<?php echo $review_count; ?>">
<hr>
---------- Добавлено 30.06.2017 в 10:12 ----------
Вернёмся к началу =) вот код, что и куда нужно прописать, что бы выполнялось условие:
Когда отзывов 0, то система его пропускает
reviewCount
0 (Значение параметра reviewCount должно быть положительным.)
<?php if ($review_status) { ?><div class="rating" itemprop = "aggregateRating" itemscope itemtype = "http://schema.org/AggregateRating">
<p>
<?php for ($i = 1; $i <= 5; $i++) { ?>
<?php if ($rating < $i) { ?>
<span class="fa fa-stack"><i class="fa fa-star-o fa-stack-1x"></i></span>
<?php } else { ?>
<span class="fa fa-stack"><i class="fa fa-star fa-stack-1x"></i><i class="fa fa-star-o fa-stack-1x"></i></span>
<?php } ?>
<?php } ?>
<a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $reviews; ?></a> / <a href="" onclick="$('a[href=\'#tab-review\']').trigger('click'); return false;"><?php echo $text_write; ?></a>
</p>
<meta itemprop = "ratingValue" content="<?php echo $rating; ?>">
<meta itemprop = "worstRating" content="0">
<meta itemprop = "bestRating" content="5">
<meta itemprop = "reviewCount" content="<?php echo $review_count; ?>">
<hr>
Отдельно в файле php прописано:
$data['reviews'] = sprintf($this->language->get('text_reviews'), (int)$product_info['reviews']);$data['review_count'] = ($product_info['reviews']) ? (int)$product_info['reviews'] : 0 ;
$data['review_count'] = (int)$product_info['reviews'];
$data['rating'] = (int)$product_info['rating'];