我已经在category_item.php中重新构建了标准的k2评级,以查看从显示为星到显示为数的评级。
我做的是,我替换了这个代码:

<?php if($this->item->params->get('catItemRating')): ?>
<div id="catItemRatingBlock">
 <div class="itemRatingForm">
  <ul class="itemRatingList">
    <li class="itemCurrentRating" id="itemCurrentRating<?php echo $this->item->id; ?>" style="width:<?php echo $this->item->votingPercentage; ?>%;"></li>
    <li><a href="#" rel="<?php echo $this->item->id;  ?>" class="one-star">1</a></li>
    <li><a href="#" rel="<?php echo $this->item->id;  ?>" class="two-stars">2</a></li>
    <li><a href="#" rel="<?php echo $this->item->id;  ?>" class="three-stars">3</a></li>
    <li><a href="#" rel="<?php echo $this->item->id;  ?>" class="four-stars">4</a></li>
    <li><a href="#" rel="<?php echo $this->item->id;  ?>" class="five-stars">5</a></li>
   </ul>
  </div>
  </div>
 <?php endif; ?>

使用此代码:
<?php if($this->item->params->get('catItemRating')): ?>
<div id="catItemRatingBlock">
<div class="itemRatingForm">
   <?php
   $rating_sum=0;
   $rating_cont=0;
   $db        =& JFactory::getDBO();
   $query='SELECT * FROM #__k2_rating WHERE itemID='. $this->item->id;
   $db->setQuery($query);
   $votes=$db->loadObject();

   $rating_sum = intval($votes->rating_sum);
   $rating_count = intval($votes->rating_count);
   $evaluate = ($rating_count==0) ? "0" : number_format($rating_sum/$rating_count,1);

   $evaluate = str_replace('.0', '', $evaluate);

   $output=" Rating: ". $evaluate."/5";
   echo $output;
   ?>
   </div>
   </div>
   <?php endif; ?>

我希望它也能在k2模块上工作。我试图使用我在上面写的代码在k2内容模块中实现它,但这根本不起作用。
有人知道怎么做吗?

最佳答案

替换

<?php if($this->item->params->get('catItemRating')): ?>

使用:
<?php if($params->get('catItemRating')): ?>

关于php - K2_content模块等级,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12134185/

10-11 13:12