3

私は、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 コンテンツ モジュールでそれを実現しようとしましたが、まったく機能しません。

誰でもそれをやってのける方法を知っていますか?

4

1 に答える 1

0

交換

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

と:

<?php if($params->get('catItemRating')): ?>
于 2015-04-17T15:54:19.070 に答える