phpcms的评论改为留言板研究
研究背景:
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的评论改为留言板研究的更多相关文章
- phpcms 留言板
相信很多用phpcms v9的站长都不是程序员,而我也是一个网页设计师,所以对制作模板还是可以对付的.但是一设计到自己写程序,就一个头两个大啦.之前公司的网站是用找别人 用dede cms做的,后来我 ...
- dede留言板BUG解决
dede留言板刷新后空白BUG解决 DEDE留言板验证码留空或者不正确返回空白页面的解决方法 解决方法如下进入文件/plus/guestbook.php 找到代码ShowMsg("验证码不正 ...
- 转载]浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法
原文地址:浅析DEDECMS织梦留言板调用网站head.htm以及自定义的方法作者:it_wang 今天,一个客户朋友问到织梦留言板如何调用head.htm以及自定义,企业网站源码之前有摸索过,但是没 ...
- html的留言板制作(js)
这次留言板运用到了最基础的localstorage的本地存储,展现的效果主要有: 1.编写留言2.留言前可以编辑自己的留言昵称.不足之处: 1.未能做出我喜欢的类似于网易的叠楼功能. 2.未能显示评论 ...
- 制作wordpress留言板
总结步骤如下: 1.找到模板目录中的single.php文件,复制single.php并重命名为guestbook.php 2.在guestbook最顶部添加如下代码(用于模板调用) <?php ...
- 用 Express4 写一个简单的留言板
Knowledge Dependence:阅读文本前,你需要熟悉 Node.js 编程.Express 以及相关工具和常用中间件的使用. Node.js 以其单线程异步非阻塞的特点,越来越被广大的 W ...
- 个人网页的留言板实现与sae的数据库账户配置
个人网页(github)的留言板终于搞定了.总之后端的东西不会写,只有修改以前教程里面的文件.记录一下重要的过程. 使用了留言保存的send()函数,模版有注册登录功能.根据需求修改了一下,去掉了登录 ...
- LigerUi框架+jquery+ajax无刷新留言板系统的实现
前些天发布了LigerUi框架的增.删.改代码,一堆代码真的也没一张图片.有的网友推荐上图,所有今天把涉及到这个框架的开源的留言板共享给大家.在修改的过程中可能有些不足的地方希望大家拍砖. 因为留言板 ...
- 【weiphp微信开发教程】留言板插件开发详解
基于weiphp框架的留言板插件教程: 1.功能分析 传统的留言板应该具有发布留言.查看留言.回复留言.管理留言等功能,本教程开发的是最基本的留言板,仅包含发布留言和查看留言两个功能,根据功能用boo ...
随机推荐
- C#Winform获取屏幕大小
两种方法: 1. Rectangle rect = Screen.GetWorkingArea(this);int width = rect.Width;int height = rect.Heigh ...
- CallerInformation
http://www.cnblogs.com/henryzhu/archive/2013/01/27/csharp-5-new-callerinformation.html 去年8月,Visual S ...
- python 包管理工具
python 包管理工具 Python当前的包管理工具链是 easy_install/pip + distribute/setuptools + distutils,显得较为混乱. 而将来的工具链组合 ...
- jQuery 互相调用iframe页面中js的方法
1,子iframe内调用父类函数方法: window.parent.func(); 2,子Iframe中获取父界面的元素: $("#xx", window.parent.docum ...
- Struts2中ModelDriven的陷阱及其预防
页面表单 <form action="updateInput.action" method="post"> <input type=" ...
- AngularJS常用指令用法详解
ng-class 1>ng-init ng-bind 11111 2>ng-class 111 3>ng-repeat 3.1-数据绑定 ng-repeat可以绑定数组和 ...
- vim如何在多个文件中切换
如果我们一次打开多个文件 看一下当前目录里面的文件: wangkongming@Vostro /data/webroot/testRoot/application/modules/Admin/view ...
- 再谈 X-UA-Compatible 兼容模式
如何理解 IE 的文档兼容模式(X-UA-Compatible)? IE 浏览器支持多种文档兼容模式,得以因此改变页面的渲染效果. IE9 模式支持全范围的既定行业标准,包括 HTML5(草案), W ...
- 【AngularJS】—— 2 初识AngularJs(续)
前一篇了解了AngularJS的一些简单的使用,这里继续跟着w3c学习一下剩下的内容. 本篇根据w3cschool.cc继续学习AngularJS剩余的内容,包括: 1 事件 2 模块 3 表单 4 ...
- JSON/XML序列化与反序列化(非构造自定义类)
隔了很长时间再重看自己的代码,觉得好陌生..以后要养成多注释的好习惯..直接贴代码..对不起( ▼-▼ ) 保存保存:进行序列化后存入应用设置里 ApplicationDataContainer _a ...