你现在的位置:首页 > PHP网站建设知识库 > magento > 正文

让magento屏蔽垃圾评论的方法

我相信很多使用magento的朋友都有垃圾评论这个问题,好了,我们现在来解决这个问题。其实解决这个问题很简单。也有多种处理办法

1.采用验证码,Magento connect中有给Magento review增加验证码的插件。

2.自己通过修改代码拒绝review spam。直接让Magento判断游客提交的review中,是否带有http这个关键词。如果有,则报错。修改起来很简单,下面是代码:

代码位置在:app/code/core/Mage/Review/Model/Review.php

然后把这个文件Copy到:app/code/local/Mage/Review/Model/Review.php

然后在validate()这个方法中增加:

    if (stristr($this->getDetail(), 'http')) { 
    $errors[] = $helper->__('Pls Don\'t Spam'); 
    } 

完整的:

    public function validate() 
    { 
    $errors = array(); 
      
    $helper = Mage::helper('customer'); 
      
    if (!Zend_Validate::is($this->getTitle(), 'NotEmpty')) { 
    $errors[] = $helper->__('Review summary can\'t be empty'); 
    } 
      
    if (!Zend_Validate::is($this->getNickname(), 'NotEmpty')) { 
    $errors[] = $helper->__('Nickname can\'t be empty'); 
    } 
      
    if (!Zend_Validate::is($this->getDetail(), 'NotEmpty')) { 
    $errors[] = $helper->__('Review can\'t be empty'); 
    } 
    if (stristr($this->getDetail(), 'http')) { 
    $errors[] = $helper->__('Pls Don\'t Spam'); 
    } 
      
    if (empty($errors)) { 
    return true; 
    } 
    return $errors; 
    }