Php Magento产品评级显示单一审查摘要
我使用5个评级选项进行产品审查。Php Magento产品评级显示单一审查摘要,php,magento,Php,Magento,我使用5个评级选项进行产品审查。 它显示如下 但我还想显示该评论的总分显示该分数总数5的平均分数的分数 (我不想显示所有评论的平均值,只显示每个评论的平均值) 带有审阅摘要代码的新代码: <?php $reviews = Mage::getModel('review/review') ->getResourceCollection() ->addStoreFilter(Mage::app()->getStore()->getId()) ->addStatu
它显示如下 但我还想显示该评论的总分
显示该分数总数5的平均分数的分数 (我不想显示所有评论的平均值,只显示每个评论的平均值) 带有审阅摘要代码的新代码:
<?php $reviews = Mage::getModel('review/review') ->getResourceCollection() ->addStoreFilter(Mage::app()->getStore()->getId()) ->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED) ->setDateOrder() ->addRateVotes();
$avg = 0; $totalrv = 0; $totalrvper =0; $ratings = array();
if (count($reviews) > 0) { foreach ($reviews->getItems() as $review) { foreach( $review->getRatingVotes() as $vote ) { $totalrv = $totalrv +$vote->getValue(); $totalrvper = $totalrvper + $vote->getPercent(); }
} $totalrv= ($totalrv/3)/4; $totalrvper = ($totalrvper/3)/4; $avgrate = round($totalrv, 1); } ?>
<div class="summaryrating">
<div class="categoryratings-header" style="display: none;">
<?php echo $this->getReviewsSummaryHtml($_product, false, true)?>
</div>
<span class="reviewratingstars">
<div class="rating-box" style="padding-bottom: 34px;">
<div style="width:<?php echo $totalrvper; ?>%;" class="rating"></div>
</div>
</span>
<span class="showcategoryratings" id="showcategoryratings-header">
<span class="showcategoryratings-text" title="Bekijk de beoordelingen per categorie">Per categorie</span>
</span>
</div>
这不显示审查摘要。显示所有星级的总评论。我想要那篇评论的摘要。你想要设计+斯内尔海德+的平均值吗?是的,我要五个值的平均值。因此,单一审查的平均水平。就像评论摘要一样,它显示所有评论的平均值。但是,在本例中,我希望得到每个评论的平均值。Kaes,显示的数据不会刷新。当我删除评论时,平均分数不会更新。我怎样才能解决这个问题?你说的删除是什么意思?从行政审查管理?如果你有一个url来观看你的网站,它可以提供帮助:Dthanks。尝试了你的代码,但没有成功。在我的问题中查看我的当前代码。
<?php $_votes = $this->getRatingVotes($_review->getId());?>
<?php if (count($_votes)): ?>
<table class="ratings-table">
<col width="1" />
<col />
<tbody>
<?php foreach ($_votes as $_vote): ?>
<tr>
<th><?php echo $_vote->getRatingCode() ?></th>
<td>
<div class="rating-box">
<div class="rating" style="width:<?php echo $_vote->getPercent() ?>%;"></div>
</div>
</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php endif; ?>
<div class="ratingstars">
<h4 class="title-beoordeling">Beoordeling</h4>
<ul class="ratingbox">
<?php foreach ($this->getRating() as $_rating): ?>
<?php if($_rating->getPercent()): ?>
<li>
<span class="ratingcategoryname"><?php echo $this->__($_rating->getRatingCode()) ?></span>
<span class="reviewratingstars">
<div class="rating-score sum">
<div class="score-rating" style="width:<?php echo ceil($_rating->getPercent()) ?>%;"></div>
</div>
</span>
</li>
<?php endif; ?>
<?php endforeach; ?>
<?php foreach ($_votes as $_vote): ?>
<?php $summary += $_vote->getPercent(); ?>
<?php $total++ ?>
<?php endforeach; ?>
<li class="averagerating">
<span class="ratingcategoryname">Gemiddelde beoordeling</span>
<span class="reviewratingstars">
<div class="rating-score sum">
<div class="score-rating" style="width:<?php echo $summary/$total ?>%;"></div>
</div>
</span>
</li>
</ul>
</div>
<?php $reviews = Mage::getModel('review/review') ->getResourceCollection() ->addStoreFilter(Mage::app()->getStore()->getId()) ->addEntityFilter('product', Mage::registry('current_product')->getId()) ->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED) ->setDateOrder() ->addRateVotes();
$avg = 0; $avgper = 0; $totalrv = 0; $totalrvper =0; $ratings = array(); $count = 0;
if (count($reviews) > 0) { foreach ($reviews->getItems() as $review) { foreach( $review->getRatingVotes() as $vote ) { $totalrv = $totalrv +$vote->getValue(); $count++; $totalrvper = $totalrvper + $vote->getPercent(); }
} $avg= $totalrv/count($reviews); $avgper = round($totalrvper/$count ,1);} ?>
<div class="summaryrating">
<div class="categoryratings-header" style="display: none;">
<?php echo $this->getReviewsSummaryHtml($_product, false, true)?>
</div>
<span class="reviewratingstars">
<div class="rating-box" style="padding-bottom: 34px;">
<div style="width:<?php echo $avgper; ?>%;" class="rating"></div>
</div>
</span>
<span class="showcategoryratings" id="showcategoryratings-header">
<span class="showcategoryratings-text" title="Bekijk de beoordelingen per categorie">Per categorie</span>
</span>
</div>
<?php
$reviews = Mage::getModel('review/review')->getResourceCollection()->addStoreFilter(Mage::app()->getStore()->getId())->addEntityFilter('product', Mage::registry('current_product')->getId())->addStatusFilter(Mage_Review_Model_Review::STATUS_APPROVED)->setDateOrder()->addRateVotes();
$avgper = 0;
$totalrvper = 0;
$ratings = array();
$count = 0;
$totalcount = 0;
if (count($reviews) > 0) {
foreach ($reviews->getItems() as $review) {
foreach ($review->getRatingVotes() as $vote) {
$totalcount++;
$totalrvper = $totalrvper + $vote->getPercent();
$ratings[$vote->getCode()]["count"] = $ratings[$vote->getCode()]["count"] + 1;
$ratings[$vote->getCode()]["avg"] = $ratings[$vote->getCode()]["avg"] + $vote->getPercent();
}
}
$avgper = round($totalrvper / $totalcount, 1);}?>
<div class="summaryrating">
<div class="categoryratings-header" style="display: none;">
<?php echo $this->getReviewsSummaryHtml($_product, false, true) ?>
</div>
<span class="reviewratingstars">
<div class="rating-box" style="padding-bottom: 34px;">
<div style="width:<?php echo $avgper; ?>%;" class="rating"></div>
</div>
</span>
<span class="showcategoryratings" id="showcategoryratings-header">
<span class="showcategoryratings-text" title="Bekijk de beoordelingen per categorie">Per categorie</span>
</span>
<span class="reviewperratingstars">
<?php foreach($ratings as $code => $rating) : ?>
<div class="rating-box" style="padding-bottom: 34px;">
<span class="label"><?php echo $code ?></span>
<span style="width:<?php echo round($rating["avg"]/$rating["count"],1); ?>%;" class="rating"></span>
</div>
<?php endforeach; ?>
</span>