discuz门户文章允许游客评论和添加游客昵称

2014-11-17 18:33| 发布者: CODETC| 查看: 19024| 评论: 34

现版本discuz的门户功能虽然相比起专业的CMS系统还有一定的差距,但也已具备了比较完善的文章管理系统。那么,在discuz中如何开启例如wordpress中的游客评论功能呢? 其实也很简单,discuz本身就已经配有游客用户组,只需要我们到 管理后台设置一下相应的权限即可,但要让游客在评论的时候能输入昵称就需要我们稍微修改一下源代码了。

discuz开启游客评论

1、进入后台,用户--用户组--系统用户组--游客--编辑


2、门户相关--文章评论字数(设置此用户组发表文章评论字数限制,设置为0将禁止此用户组发表评论)


通过以上两步,已开启了discuz文章游客评论的功能,下面我们为游客评论添加昵称输入的功能。

disucz游客评论输入昵称


1、模板文件修改(以下修改皆以默认模板文件作为参照,如你使用自己的模板,请对应修改相应的内容即可)

在template/default/portal/comment.htm文件中找到
<form id="cform" name="cform" action="portal.php?mod=portalcp&ac=comment" method="post" autocomplete="off">
在该行下面加入
<div class="mytxt">
	<input type="text" name="guestname" class="vm"> &nbsp;作为游客发表评论,请输入您的昵称
</div>
再在template/default/portal/portal_comment.htm文件中找到
<form id="cform" name="cform" action="$form_url" method="post" autocomplete="off">
在该行下同样加入上面的代码。

以下设置评论显示里显示游客输入的昵称

在文件template/default/portal/comment_li.htm中找到以下代码

<!--{if !empty($comment['uid'])}-->
<a href="home.php?mod=space&uid=$comment[uid]" class="xi2 xw1" c="1">$comment[username]</a>
<!--{else}-->
{lang guest}
<!--{/if}-->
把这几行代码修改成:
<!--{if !empty($comment['uid'])}-->
<a href="home.php?mod=space&uid=$comment[uid]" class="xi2 xw1" c="1">$comment[username]</a>
<!--{elseif !empty($comment['username'])}-->
$comment['username']
<!--{else}-->
{lang guest}
<!--{/if}-->
2、修改PHP保存评论功能,只需要修改一处即可,是不是很简单~_~

在文件source/function/function_portalcp.php中找到
$message = censor($message);
if(censormod($message)) {
	$comment_status = 1;
} else {
	$comment_status = 0;
}
在这几行代码下面加入以下代码即可
//为游客评论增加昵称输入
$username = $_G['username'];
if(empty($username) && isset($_POST['guestname'])){
	$username = addslashes(trim($_POST['guestname']));
}
效果如下图所示:


到此为止,已经全部完成了,具体效果请参考本站的文章评论功能,当然你可以为游客的评论设置各种的权限,防止乱发广告的现象,这些都可以在后台的用户组中进行设置。
文章来源 CODETC,欢迎分享,转载请注明地址: http://www.codetc.com/article-59-1.html
发表评论

最新评论

引用 积分卡上的纠纷  2017-6-20 14:37
水电费发
引用 子非鱼  2017-6-17 23:13
codetc: 也许是什么地方弄错了,是显示不出来还是不能评论?
是没有效果,输入昵称后,评论完,依然显示的是游客。 ...
引用 为什么不行  2017-4-16 14:38
为什么不行噢,还是显示游客,并且还有乱码
引用 123  2017-4-5 19:33
试下效果如何
引用 1176617148  2017-3-21 14:24
【新加坡100M不限流量】ping值80,E3-8G-5IP 仅800元

机房:新加坡
CPU:E3-1230v3 8核(线程)
内存:8GB DDR3 ECC
硬盘:1TB SATA3 6GB/s
带宽:100Mbps不限流 ...
引用 漯河信息港  2017-3-2 15:36
codetc ,帮帮忙别,你的这个用起来还真不错,我也想实现这个功能,按你说的做了,,我相信如果没用其他N5模板的话肯定管用! ...
引用 漯河信息港  2017-3-2 15:33
你上面提到的要改的,还都有文件,但是我装了一个模板文件,模板文件了没有这些文件,我把这些文件从default目录拷贝到模板目录,仍然无效,到底这个如何做呢?c ...
引用 漯河信息港  2017-3-2 15:28
我改过了,按你说的,但是还是不可以用,我用的N5的模板
引用 codetc 2017-3-2 14:43
再试一次: 为什么我弄的没效果
也许是什么地方弄错了,是显示不出来还是不能评论?
引用 再试一次  2017-2-23 19:47
为什么我弄的没效果
引用 游客 2017-2-16 14:50
测试
引用 游客 2017-1-14 10:38
[quote]试一下: Discuz! X3.2 Release 20150609 我按你的教程设置了,但游客输入的名字不显示,评论完还是 ...
引用 你好!  2017-1-5 14:09
请问discuz这个文虎文章评论点击引用回复他人没反应怎么回事,是不是设置有问题,还是代码问题。 ...
引用 1234524  2016-12-7 10:39
1234565677
引用 游客 2016-3-12 10:23
手机端怎么设置游客不登录也可以评论
引用 codetc 2016-1-23 15:38
靓丽吧: 输入用户名没用
您说的没用是什么没用呢?
引用 靓丽吧  2016-1-4 19:48
输入用户名没用
引用 这个好  2015-12-23 11:19
可以分享到朋友圈吗
引用 试一下  2015-11-26 17:04
Discuz! X3.2 Release 20150609 我按你的教程设置了,但游客输入的名字不显示,评论完还是显示“游客”不显 ...
引用 试一下  2015-11-26 16:41
按教程设置后,输入游客名字没用,还有能不能设置评论审核?

查看全部评论(34)

 作为游客发表评论,请输入您的昵称

返回顶部