Jump to content

Recommended Posts

https://developers.google.com/structured-data/testing-tool/?url=http%253A%252F%252Fwww.gofin.biz%252Fbabochka-bj-44-10.html - вот выдает ошибки 

Заполните поле ratingValue.

  • Не удалось нормализовать значение оценки.
  • Ваша оценка вне пределов диапазона по умолчанию. Необходимо указать самое высокое и самое низкое значения.
     
     
     
     

код из файла

<?php if ($review_status) { ?>
          <div class="rating"><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>"><div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" /> <span style="display:none;" class="rateVal" itemprop="ratingValue"><?php echo round($rating,1); ?></span> - <span itemprop="reviewCount"><?php echo $reviews; ?></span></div></a></div>
          <?php } ?>
          <div class="description">
            <?php if(($this->config->get('ULTIMATUMControl_status') == '0') || ($this->config->get('ULTIMATUMControl_custom_column') == '0') || ($this->config->get('ULTIMATUMControl_custom_column_logo') == '0') && ($this->config->get('ULTIMATUMControl_custom_column') == '1')){ ?>
            <?php if ($manufacturer) { ?>
            <span><?php echo $text_manufacturer; ?></span> <a itemprop="brand" content="<?php echo $manufacturer; ?>" href="<?php echo $manufacturers; ?>"><?php echo $manufacturer; ?></a><br />
            <?php } ?>

Что не так?

Share this post


Link to post
Share on other sites

1. Какой параметр по умолчанию у переменной: $rating ?

2. Не может ли получиться так, что при round($rating,1) == 0 или вообще false 

2015-03-06_1430.png

Share this post


Link to post
Share on other sites

Надо просто скриптом дописать

if ((!$rating) or ($rating == 0)){$rating = 5;}

P.S. - В любой непонятной ситуации - пиши скрипт :)

Share this post


Link to post
Share on other sites

А по второму вопросу, не указаны обязательные параметры:

2015-03-06_1437.png

Share this post


Link to post
Share on other sites

Так ratingValue можно самостоятельно написать в метатеге. не обязательно откуда-то получать значения. вы же знаете, что от 1 до 5 - так и напишите. max 5, min 1

Share this post


Link to post
Share on other sites


<div itemprop="reviews" itemscope itemtype="http://schema.org/AggregateRating">

<img src="five-stars.jpg" />

<meta itemprop="ratingValue" content="5" />

<meta itemprop="bestRating" content="5" />

Проголосовало <span itemprop="ratingCount"><php echo rand(3, 4); ?></span> <s>Ментоловых карасей</s>.

</div>

Share this post


Link to post
Share on other sites

Надо просто скриптом дописать

if ((!$rating) or ($rating == 0)){$rating = 5;}

P.S. - В любой непонятной ситуации - пиши скрипт :)

 

1. Какой параметр по умолчанию у переменной: $rating ?

2. Не может ли получиться так, что при round($rating,1) == 0 или вообще false 

2015-03-06_1430.png

Спасибо что откликнулись но я к сожелению не програмит :( может подскажете где именно нужно дописать if ((!$rating) or ($rating == 0)){$rating = 5;}

Share this post


Link to post
Share on other sites

Я бы в контроллере подправил (catalog/controller/product/product.php):

$this->data['rating'] = (int)$product_info['rating'];

поменял бы на:

if (isset($product_info['rating']) && $product_info['rating'] !=0 ) {
	$this->data['rating'] = (int)$product_info['rating'];
} else {
	$this->data['rating'] = 5;
}

Комрад же подсказал решение для tpl-ки...

Share this post


Link to post
Share on other sites

Я бы в контроллере подправил (catalog/controller/product/product.php):

$this->data['rating'] = (int)$product_info['rating'];

поменял бы на:

if (isset($product_info['rating']) && $product_info['rating'] !=0 ) {
	$this->data['rating'] = (int)$product_info['rating'];
} else {
	$this->data['rating'] = 5;
}

Комрад же подсказал решение для tpl-ки...

сделал как написали Вы у всех товаров начало показывать рейтинг 5 и через проверку ошибок нето и тоже рейтинг 5

Share this post


Link to post
Share on other sites

сделал как написали Вы у всех товаров начало показывать рейтинг 5 и через проверку ошибок нето и тоже рейтинг 5

Может значение рейтинга не в INT забито? Попробуйте преобразовать $product_info['rating'] в число

Share this post


Link to post
Share on other sites

должно быть так:

<meta itemprop=ratingValue content="<?php echo round($rating,1); ?>"> 

и

<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/> 
<span style="display:none;" class=rateVal itemprop=ratingValue><?php echo round($rating,1); ?></span>
 - <span itemprop=reviewCount>Отзывов: <php echo rand(3, 4); ?></span>
</div>

и ноу проблем...

Share this post


Link to post
Share on other sites

должно быть так:

<meta itemprop=ratingValue content="<?php echo round($rating,1); ?>"> 

и

<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/> 
<span style="display:none;" class=rateVal itemprop=ratingValue><?php echo round($rating,1); ?></span>
 - <span itemprop=reviewCount>Отзывов: <php echo rand(3, 4); ?></span>
</div>

и ноу проблем...

сделал 

<div class="rating"><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>"><div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" /> <meta itemprop=ratingValue content="<?php echo round($rating,1); ?>"> <?php echo round($rating,1); ?></span> - <span itemprop="reviewCount"><?php echo $reviews; ?></span></div></a></div>
          <?php } ?>

https://developers.google.com/webmasters/structured-data/testing-tool?url=http%253A%252F%252Fwww.gofin.biz%252Fbabochka-bj-44-10.html

таже фигня :(

Share this post


Link to post
Share on other sites

у вас: <meta itemprop=ratingValue content=""> тоесть content="" - пустой, тут даже программистом не надо быть, что бы понять что значение - пустое, а должно быть от 1 до 5, желательно 5...

 

Поменяйте с: 

if (isset($product_info['rating']) && $product_info['rating'] !=0 ) {

на

if (isset($product_info['rating']) && !empty($product_info['rating']) && $product_info['rating'] !=0 ) {

Share this post


Link to post
Share on other sites
<?php if ($review_status) { ?>
          <div class="rating"><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>"><div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" /> <span style="display:none;" class="rateVal" itemprop="ratingValue content="<?php echo round($rating,1); ?>"> </span> - <span itemprop="reviewCount"><?php echo $reviews; ?></span></div></a></div>
          <?php } ?>

если так то тепер 1 ошибка 

Заполните поле ratingValue.

Share this post


Link to post
Share on other sites

 

у вас: <meta itemprop=ratingValue content=""> тоесть content="" - пустой, тут даже программистом не надо быть, что бы понять что значение - пустое, а должно быть от 1 до 5, желательно 5...

 

Поменяйте с: 

if (isset($product_info['rating']) && $product_info['rating'] !=0 ) {

на

if (isset($product_info['rating']) && !empty($product_info['rating']) && $product_info['rating'] !=0 ) {

сделал это в файле catalog/controller/product/product.php

теперь ошибок нету но у всех товаров без рейтинга показывает рейтинг 5

Share this post


Link to post
Share on other sites

https://developers.google.com/webmasters/structured-data/testing-tool?url=http%253A%252F%252Fwww.gofin.biz%252Fbabochka-bj-44-10.html - вот ссылка

<div class=rating><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="Отзывов: 0"><div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-5.png" alt=5 title="5* (Отзывов: 0) "/> <span style="display:none;" class=rateVal itemprop=ratingValue>5</span> - <span itemprop=reviewCount>Отзывов: 0</span></div></a></div>
<div class=description>

хотя у этого товара 0 отзывов :( и на сайте тоже у вес теперь 5 звездочек

Share this post


Link to post
Share on other sites

тогда поменяйте с :

$this->data['rating'] = 5;

на:

$this->data['rating'] = false;

Share this post


Link to post
Share on other sites

 

тогда поменяйте с :

$this->data['rating'] = 5;

на:

$this->data['rating'] = false;

https://developers.google.com/webmasters/structured-data/testing-tool?url=http%253A%252F%252Fwww.gofin.biz%252Fbabochka-bj-44-10.html - если поменять как вы написали дальше ошибки :(

Share this post


Link to post
Share on other sites
<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<meta itemprop=reviewCount content=0>
<meta itemprop=ratingValue content="">

надо обрамить в условие:

<?php if ($raiting) { ?>
<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<meta itemprop=reviewCount content=0>
<meta itemprop=ratingValue content="">
<?php } ?>

и

<div class=rating>
<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="Отзывов: 0">
<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 <span style="display:none;" class=rateVal itemprop=ratingValue>0</span>
 - <span itemprop=reviewCount>Отзывов: 0</span>
</div>
</a>
</div>

обрамить так:



<div class=rating>
<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="Отзывов: 0">
<?php if ($raiting) { ?>
<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 <span style="display:none;" class=rateVal itemprop=ratingValue>0</span>
 - <span itemprop=reviewCount>Отзывов: 0</span>
</div>
<?php } else { ?>
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 - <span>Отзывов: 0</span>
<?php } ?>
</a>
</div>

Share this post


Link to post
Share on other sites

теперь вообше ничего не понятно :(((

 

<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<meta itemprop=reviewCount content=0>
<meta itemprop=ratingValue content="">

надо обрамить в условие:

<?php if ($raiting) { ?>
<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<meta itemprop=reviewCount content=0>
<meta itemprop=ratingValue content="">
<?php } ?>

и

<div class=rating>
<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="Отзывов: 0">
<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 <span style="display:none;" class=rateVal itemprop=ratingValue>0</span>
 - <span itemprop=reviewCount>Отзывов: 0</span>
</div>
</a>
</div>

обрамить так:



<div class=rating>
<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="Отзывов: 0">
<?php if ($raiting) { ?>
<div itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 <span style="display:none;" class=rateVal itemprop=ratingValue>0</span>
 - <span itemprop=reviewCount>Отзывов: 0</span>
</div>
<?php } else { ?>
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt=0 title="0* (Отзывов: 0) "/>
 - <span>Отзывов: 0</span>
<?php } ?>
</a>
</div>

Share this post


Link to post
Share on other sites

чтоя  сделал

есть два файла

1. (catalog/controller/product/product.php):

тут я изменил 

$this->data['rating'] = (int)$product_info['rating'];

на

			if (isset($product_info['rating']) && !empty($product_info['rating']) && $product_info['rating'] !=0 ) {
	$this->data['rating'] = (int)$product_info['rating'];
} else {
	$this->data['rating'] = false;
}

и воторой /catalog/view/theme/ULTIMATUM/template/product/

тут я изменил 

 <div class="rating"><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>"><div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" /> <span style="display:none;" class="rateVal" itemprop="ratingValue"><?php echo round($rating,1); ?></span> - <span itemprop="reviewCount"><?php echo $reviews; ?></span></div></a></div>
          <?php } ?> 

на

<div class="rating"><a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>"><div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"><img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" /> <span style="display:none;" class="rateVal" itemprop="ratingValue content="<?php echo round($rating,1); ?>"></span> - <span itemprop="reviewCount"><?php echo $reviews; ?></span></div></a></div>
          <?php } ?>

что не так ?

Share this post


Link to post
Share on other sites


<div class="rating">

<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>">

<?php if ($rating) { ?>

<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">

<img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" />

<span style="display:none;" class="rateVal" itemprop="ratingValue content="<?php echo round($rating,1); ?>"></span>

- <span itemprop="reviewCount"><?php echo $reviews; ?></span>

</div>

<?php } else { ?>

<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt="0" title="<?php echo '0'.'* ('.$reviews.') '; ?>" />

- <span><?php echo $reviews; ?></span>

<?php } ?>

</a>

</div>

<?php } ?>

Share this post


Link to post
Share on other sites
<div class="rating">
<a onclick="$('a[href=\'#tab-review\']').trigger('click');" title="<?php echo $reviews; ?>">
<?php if ($rating) { ?>
<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
<img src="catalog/view/theme/ULTIMATUM/image/stars-<?php echo round($rating,1); ?>.png" alt="<?php echo round($rating,1); ?>" title="<?php echo round($rating,1).'* ('.$reviews.') '; ?>" />
 <span style="display:none;" class="rateVal" itemprop="ratingValue content="<?php echo round($rating,1); ?>"></span>
 - <span itemprop="reviewCount"><?php echo $reviews; ?></span>
</div>
<?php } else { ?>
<img src="catalog/view/theme/ULTIMATUM/image/stars-0.png" alt="0" title="<?php echo '0'.'* ('.$reviews.') '; ?>" />
 - <span><?php echo $reviews; ?></span>
<?php } ?>
</a>
</div>
          
<?php } ?>

сделал пишет Заполните поле ratingValue.

https://developers.google.com/webmasters/structured-data/testing-tool?url=http%253A%252F%252Fwww.gofin.biz%252Fbabochka-bj-44-10.html

Share this post


Link to post
Share on other sites

правильно, теперь найдите (вместе с парным закрывающим):

<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">

и обрамите в: 

<?php if ($rating) { ?>
...
<?php } ?>

Share this post


Link to post
Share on other sites

 

правильно, теперь найдите (вместе с парным закрывающим):

<span itemprop=aggregateRating itemscope itemtype="http://schema.org/AggregateRating">

и обрамите в: 

<?php if ($rating) { ?>
...
<?php } ?>

готов Вас отблагодарить за отзивчивость, но я не понимаю что нужно сдлеать :(  я изменил код как показано выше что теперь нужно изменить?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.