magento|网站后台对评论进行回复的功能拓展

最近运营部门提出要增加评论回复并显示的功能,所以大体流程就是数据库增加字段,然后编辑评论的时候增加输入框,提交评论的时候保存回复数据,最后在前台显示即可。

具体操作及代码如下:

1、review_detail新增字段:ALTER TABLE `review_detail` ADD COLUMN `waiter` text NOT NULL;

2、后台编辑评论的地方新增输入框:app/code/core/mage/Adminhtml/Block/Review/edit/Form/php 中添加如下代码,代码位置大约添加在138行, $fieldset->addField('detail','textarea',array( 之后;

   $fieldset->addField('waiter','textarea',array(
            'label'     => Mage::helper('review')->__('Waiter'),
            'required'  => false,
            'name'      => 'waiter',
            'id'        => 'waiter',
            'style'     => 'height:24em;',
        ));
3、提交保存的时候写入回复数据: 在app/code/core/mage/Adminhtml/controllers/Catalog/Product下的ReviewController.php中的saveAction()方法中添加如下代码 大概位置132行,else{ try{ 作为指路用,代码如下:

 else {
                try {

                    $waiter = $data['waiter'];

                    $read =Mage::getSingleton("core/resource")->getConnection('core_read');
                        $sql = "update review_detail set waiter='$waiter' where review_id = {$reviewId}";    
                        $read->query($sql);

                    $review->addData($data)->save();
4、magento前端页面显示,调用评论回复内容,app/design/frontend/yisainuo/pc/template/review/product/view/list/phtml 中添加如下代码,<!--如下代码添加至页面 <?php endforeach;?> 前;

     <?php $read =Mage::getSingleton("core/resource")->getConnection('core_read');
                      $sql = "select waiter from review_detail where review_id = ".$tetail_id;    
                      $result =$read->fetchAll($sql); if(!empty($result[0]['waiter'])) : ?>

            <dl>
            <dt>
                 <div class="dk">
                  <span class="ding f-right"></span>
                        <p class="pl-name"><span style="color:#ff1493">waiter: By <?php echo replace_name($_review->getNickname());?> </span></p>
                 </div>
            </dt>
            <dd>  
                 <div class="rev-detail">
                  <?php echo $result[0]['waiter']; ?>
                 </div>
            </dd>       
            </dl>
    <?php endif;?>
5、最终效果如下图:

猜你喜欢

转载自blog.csdn.net/lolgigeo/article/details/88287552