研究背景:

phpcms里面默认是没有留言板的,之前我的博客里发过一个二次开发简介,里面有一个简单的留言板,包含前台提供表单,后台留言审核等功能,但是不提供用户登录等操作。

研究思路:

phpcms里面的评论功能就多了一些,而且后台还有设置是否允许游客评论。但是看源代码发现,评论是只能写在文章页的,也就是show_***.html页,因为文章的字段中有一个allow_comment,加上评论会存储文章id,所以这一点比较难改。

刚开始想着使用友言代替,友言的评论是直接和评论页的url绑在一起,所以也就不管你是文章还是单页面都可以调用,但是友言的用户管理有些欠缺,而且毕竟是第三方的,评论内容和用户也不容易拿到本地。

后来考虑的多说,多说在开发者方面支持的算比较好的,提供很多接口,和友言相比优势是可以自己研究用户和评论同步到本地,但它的评论缺也是和文章绑定的,而我只是想要一个类似留言板,可以登录用户的东西。所以暂时先放下。

研究结果:

结果有些坑,既然改源码难改,就按规矩来,把本应该放留言板的单页面当成改成一个内部栏目里面的一篇文章!这样就简单了,剩下的唯一的问题就是点击那个栏目直接跳到那篇文章了!

因为留言板栏目是有category页,list页和show页的,而前面已经说过评论是只能写在show页,访问内部栏目一般直接是跳到list页的,所以新建一个list,里面放入如下写死的代码:

<script>
window.location.href="index.php?m=content&c=index&a=show&catid=11&id=22";
</script>

也就是直接跳到那篇名叫留言板的文章了!

下面贴一下评论的代码:

{if $allow_comment && module_exists('comment')}
<iframe src="{APP_PATH}index.php?m=comment&c=index&a=init&commentid=bbs&iframe=1" width="100%" height="100%" id="comment_iframe" frameborder="0" scrolling="no"></iframe>
<div class="box">
<h5>评论排行</h5>
{pc:comment action="bang" siteid="$siteid" cache="3600"}
<ul class="content list blue f14 row-2">
{loop $data $r}
<li>·<a href="{$r[url]}" target="_blank">{str_cut($r[title], 40)}</a><span>({$r[total]})</span></li>
{/loop}
</ul>
{/pc}
</div>
{/if}

其中那个评论排行可以那个box可以删掉,然后改一下评论的前台模板把支持反对的radio去掉,就更像一个留言板了!

phpcms的评论改为留言板研究的更多相关文章

  1. phpcms 留言板

    相信很多用phpcms v9的站长都不是程序员,而我也是一个网页设计师,所以对制作模板还是可以对付的.但是一设计到自己写程序,就一个头两个大啦.之前公司的网站是用找别人 用dede cms做的,后来我 ...

  2. dede留言板BUG解决

    dede留言板刷新后空白BUG解决 DEDE留言板验证码留空或者不正确返回空白页面的解决方法 解决方法如下进入文件/plus/guestbook.php 找到代码ShowMsg("验证码不正 ...

  3. 转载]浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法

    原文地址:浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法作者:it_wang 今天,一个客户朋友问到织梦留言板如何调用head.htm以及自定义,企业网站源码之前有摸索过,但是没 ...

  4. html的留言板制作(js)

    这次留言板运用到了最基础的localstorage的本地存储,展现的效果主要有: 1.编写留言2.留言前可以编辑自己的留言昵称.不足之处: 1.未能做出我喜欢的类似于网易的叠楼功能. 2.未能显示评论 ...

  5. 制作wordpress留言板

    总结步骤如下: 1.找到模板目录中的single.php文件,复制single.php并重命名为guestbook.php 2.在guestbook最顶部添加如下代码(用于模板调用) <?php ...

  6. 用 Express4 写一个简单的留言板

    Knowledge Dependence:阅读文本前,你需要熟悉 Node.js 编程.Express 以及相关工具和常用中间件的使用. Node.js 以其单线程异步非阻塞的特点,越来越被广大的 W ...

  7. 个人网页的留言板实现与sae的数据库账户配置

    个人网页(github)的留言板终于搞定了.总之后端的东西不会写,只有修改以前教程里面的文件.记录一下重要的过程. 使用了留言保存的send()函数,模版有注册登录功能.根据需求修改了一下,去掉了登录 ...

  8. LigerUi框架+jquery+ajax无刷新留言板系统的实现

    前些天发布了LigerUi框架的增.删.改代码,一堆代码真的也没一张图片.有的网友推荐上图,所有今天把涉及到这个框架的开源的留言板共享给大家.在修改的过程中可能有些不足的地方希望大家拍砖. 因为留言板 ...

  9. 【weiphp微信开发教程】留言板插件开发详解

    基于weiphp框架的留言板插件教程: 1.功能分析 传统的留言板应该具有发布留言.查看留言.回复留言.管理留言等功能,本教程开发的是最基本的留言板,仅包含发布留言和查看留言两个功能,根据功能用boo ...

随机推荐

  1. Outlook2003收到的邮件不能显示图片,但转发或回复可以 故障排错

    转自:http://wenku.baidu.com/link?url=4O0Wpsnk_OasA7B-M4KMJ4H-WnLicT4vfVOT7AvXhTjpn-p2gBTNsXR4W230r0gAE ...

  2. vim:用vim修改文件编码为utf-8

    命令是 :set fileencoding=utf-8如果用vim打开文件时里面有乱码,可能用上面的命令修改文件后无法保存.可以用其他软件打开文件,然后把内容拷贝到vim里再保存就行了.

  3. mysql 插入/更新数据

    mysql 插入/更新数据 INSERT 语句 1.一次性列出全部字段的值,例如: INSERT INTO student VALUES('Chenqi','M', 29); INSERT INTO ...

  4. jQuery 取值、赋值的基本方法

    转载:http://www.cnblogs.com/huanhuan86/archive/2012/06/13/2548071.html 获取元素的value值: /*获得TEXT.AREATEXT的 ...

  5. [C#]System.Timers.Timer

    摘要 在.Net中有几种定时器,最喜欢用的是System.Timers命名空间下的定时器,使用起来比较简单,作为定时任务,有Quartz.net,但有时候,一个非常简单的任务,不想引入这个定时任务框架 ...

  6. 软件安装失败,导致ubuntu软件中心软件消失

    感谢百度上各位IT界朋友的帮助,由于某个软件安装失败,导致ubuntu软件中心软件消失的解决办法: 找百度,有人说, 使用命令:sudo apt-get install software-center ...

  7. oracle中substr与instr

    在oracle中,可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符.在一个字符串中查找指定的字符,返回被查找到的指定字符的位置. 语法: Instr(sourceString,de ...

  8. oracle中的nvl(), nvl2()函数

    nvl()函数是oracle/plpgsql中的一个函数,格式为:nvl(string1, replace_with) 功能:如果string1 位null,那么nvl()函数返回replace_wi ...

  9. linq和lanmbda表达式比较解析

  10. 微信电脑版微信1.1 for Windows更新 可@人/转发撤回消息/可播小视频

    微信电脑版微信1.1 for Windows发布更新了,版本号为1.1.0.18,群聊可@人/可转发撤回消息/可播小视频,功能越来越接近微信手机版了. 本次更新的一些新特点: 群聊中可以@人. 消息可 ...