关于ECSHOP商品页发表评论时“取消E-MAIL必填”的方法

2016-09-11 20:39 来源:www.chinab4c.com 作者:ecshop专家

ECSHOP的商品详情页,在用户提交评论的时候,那个“E-MAIL”输入框默认是“必填”的。
如果我想改成“E-MAIL非必填”或者干脆“删除这个E-MAIL输入框”,要如何修改才能达到效果呢??

下面以ECSHOP 2.7.2 官方默认模板为基础进行讲解说明。

将E-MAIL改成非必填项的方法:(也就是说保留那个E-MAIL输入框,但是用户不填,也可以提交)

第1步:

打开 /themes/default/library/comments_list.lbi 文件

找到并删除下面代码

  if (cmt.email.length > 0)
  {
     if (!(Utils.isEmail(cmt.email)))
     {
        alert(cmt_error_email);
        return false;
      }
   }
   else
   {
        alert(cmt_empty_email);
        return false;
   }

第2步:
打开 /comment.php 文件
找到并删除下面代码
 elseif (!is_email($cmt->email))
    {
        $result['error']   = 1;
        $result['message'] = $_LANG['error_email'];
    }

注意,第 1、2 步的操作是没有删除 E-MAIL 输入框的,只是将E-MAIL 改成了 “非必填项”,
如果你想干脆删除 E-MAIL 输入框,请继续看 第 3 步。

第3步:

如果您想干脆删除 e-mail 那一栏,那么在做完前两步修改后继续进行如下修改即可
打开 /themes/default/library/comments_list.lbi

<tr>
          <td align="right">E-mail:</td>
          <td>
          <input type="text" name="email" id="email"  maxlength="100" value="{$smarty.session.email|escape}" class="inputBorder"/>
          </td>
        </tr>

删除,
继续将
cmt.email           = frm.elements['email'].value;

也删除,
然后到后台清除下缓存