Emlog教程 - 文章评论增加表单字段(可用做私密评论)

2018-2-1 / 14 评论 / 11844 阅读

Emlog给文章评论表单只提供了四个默认字段,分别是昵称、邮箱、网址以及评论内容,只能满足一般博客网站的需求,如果想要增加更多的评论字段怎么办?可以通过Emlog评论自定义字段实现,类似于文章的自定义字段功能,对应数据表是emlog_comment加入对应的字段即可。



以字段simi为例:在数据库emlog_comment中加入字段simi(可自定义,不能与原有字段相同,与下面的参数要一致);温馨提示:。如果是增加复选框,字段参数类型请选择[ enum ],字符长度一般是'n','y',默认值要么是n 要么是y。两种类型分类可分别参考字段添加请和emlog_comment中poster参数与hide参数



关于input中type说明

checkbox:定义复选框

radio:定义单选按钮

txt:定义单行的输入字段,用户可在其中输入文本。默认宽度为 20 个字符。



前端评论框操作方法步骤

1、在模板文件module.php中找到评论框代码,找到合适的位置加入代码

<label><input type="checkbox" value="y" id="simi" name="simi" ><font color="red">私密(仅管理员可见)</font></label>

2、在include/model/comment_model.php文件中找到

function addComment($name, $content, $mail, $url, $imgcode, $blogId, $pid) 
用下面代码替换
function addComment($name, $content, $mail, $url, $imgcode, $blogId, $pid, $simi) 
找到
$hide = ROLE == ROLE_VISITOR ? $ischkcomment : 'n';
后面加入代码
$simi = isset($_POST['simi']) ? $_POST['simi'] : 'n';
找到代码
$sql = 'INSERT INTO '.DB_PREFIX."comment (date,poster,gid,comment,mail,url,hide,ip,pid) 
VALUES ('$utctimestamp','$name','$blogId','$content','$mail','$url','$hide','$ipaddr','$pid')";
用下面代码替换
$sql = 'INSERT INTO '.DB_PREFIX."comment (date,poster,gid,comment,mail,url,hide,ip,pid,simi) 
VALUES ('$utctimestamp','$name','$blogId','$content','$mail','$url','$hide','$ipaddr','$pid','$simi')";


找到
function replyComment($blogId, $pid, $content, $hide) 
用下面代码替换
function replyComment($blogId, $pid, $content, $hide, $simi)
找到
$hide = ROLE == ROLE_VISITOR ? $ischkcomment : 'n';
后面加入代码
$simi = isset($_POST['simi']) ? $_POST['simi'] : 'n';
找到
$this->db->query("INSERT INTO ".DB_PREFIX."comment (date,poster,gid,comment,mail,url,hide,ip,pid)
VALUES ('$utctimestamp','$name','$blogId','$content','$mail','$url','$hide','$ipaddr','$pid')");
用下面代码替换
$this->db->query("INSERT INTO ".DB_PREFIX."comment (date,poster,gid,comment,mail,url,hide,ip,pid,simi)
VALUES ('$utctimestamp','$name','$blogId','$content','$mail','$url','$hide','$ipaddr','$pid','$simi')");

评论列表调用方法

<?php if($comment['simi']=='y'){echo '<font color="red">私密(仅管理员可见)</font>';}else{echo $comment['content'];}?>



侧边栏最新评论操作方法步骤
在根目录include/lib/cache.php中找到

'mail' => $show_com['mail'],
后面加入代码
'simi' => $show_com['simi'],

调用方法

<?php echo $value['content'];?>
用下面代码替换
<?php if($value['simi']=='y'){?><font color="red">私密(仅管理员可见)</font><?php }else{echo $value['content'];}?>



以上方法为前端方面的教程,如有疑问,可在本页留言咨询。


后台编辑时更改的操作方法教程

1、在根目录文件admin/comment.php中找到

$url = isset($_POST['url']) ? addslashes(trim($_POST['url'])) : '';
后面添加下面代码
$simi = isset($_POST['simi']) ? addslashes(trim($_POST['simi'])) : 'n';
找到
'url' => $url,
后面添加下面代码
'simi' => $simi,

2、在admin/views/comment_edit.php及comment_reply.php文件<form></form>之间任意位置放置如下代码

<li><input type="checkbox" name="simi" value="y"<?php if($simi=='y'){echo ' checked="checked"';}?>><font color="red">仅管理员可查看</font></li>

评论一下?

OωO
取消
    1. 头像
      黄衫飞白马
      第9楼
      我来看看
      回复
    1. 头像
      橘子.
      第8楼
      大佬就是6,第一次玩这个,纯小白.支持
      回复
    1. 头像
      arham
      第7楼
      不错的文章
      回复
    1. 头像
      Mrxn
      第6楼
      不错不错!感谢老哥分享方法!祝老哥新的一年里 发发发发!!!
      回复
    1. 头像
      wys
      第5楼
      刚发现个情况,网站右侧最新评论列表,私密评论,没像其他普通评论一样带上文章页评论位置的链接。请问老大,怎么实现?谢谢指导。
      回复
      1. 头像
        舍力
        @wys:module.php最新评论对应的位置加a标签,<a href="<?php echo $url;?>" rel="nofollow">即可。
        回复
      1. 头像
        wys
        @舍力:嗯,照着提示改好了。使用付费主题,有技术支持,就是少费心!哈哈O(∩_∩)O!
        回复
    1. 头像
      钟水洲博客
      第4楼
      拜个早年
      回复
    1. 头像
      WRZ
      地板
      按照教程 一步一步来的 会报出 :
      SQL语句执行错误:INSERT INTO emlog_comment (date,poster,gid,comment,mail,url,hide,ip,pid,sltel) VALUES ('1517555993','哈哈','9','嘻嘻嘻','213133@qq.com','http://1313.com','n','','0','1909883')
      Unknown column 'sltel' in 'field list'
      这样的错误
      回复
      1. 头像
        舍力
        @WRZ:没有在数据库中加入字段或者添加的字段错误
        回复
    1. 头像
      WRZ
      板凳
      来学习了!舍力大佬,评论框添加个表情吧,评论更生动(*^__^*)
      回复
      1. 头像
        舍力
        @WRZ:个人喜欢清新简单的,功能可以加,其它东西太多的占服务器内存。
        回复
    1. 头像
      舍力博客
      沙发
      此教程方法可以做出Emlog私密评论(仅博主可见)的效果,案例请参考本站。
      回复
      1. 头像
        舍力
        @舍力博客:欢迎参与讨论,请在这里发表您的看法、交流您的观点!
        回复