原文来自:https://www.zixuephp.com
织梦(dedecms)文章评论功能的使用
织梦是个很好的内容管理系统,其模型、频道、缓存功能都是十分的强大的,其文章评论也是很有特色的,因为织梦的文章评论是使用了ajax,这样即使是用的生成静态,也可以调取出最新的文章评论.
有的时候我们想单独的对某些栏目加评论,有人说使用自定义表单,其实是不好的,因为用自定义表单岂不是一篇文章就建一个自定义表单了,所以在其原文章评论的基础上修改就可以,查看一下其评论提交页,在文章页是用的ajax提交,我们可以进去详细评论页就可以看到,其action指向的文件是plus/feedback.php这个文件.
- <inputtype="hidden"name="action"value="send"/>
- <inputtype="hidden"name="comtype"value="comments">
- <inputtype="hidden"name="username"value="youke">
- <inputtype="hidden"name="oldurl"value="http://www.phpfensi.com">
- <inputtype="hidden"name="aid"value="179"/>
- <inputtype="text"name="msg"value=""/>
- <inputtype="hidden"name="isconfirm"value="yes"/>
他需要几个隐含值,其中action为操纵类型,send代表发布评论,comtype为comments时表示是评论,这个username 和 oldurl为我自己定义的变量,这样的目的是不让其填姓名,只填评论内容,oldurl为评论发布成功后跳转的页面,然后验证码是.
- 验证码:
- <inputname="validate"type="text"id="validate"size="10"style="height:18px;width:60px;margin-right:6px;text-transform:uppercase;"class="nb"/>
- <imgsrc='http://local.de.com/include/vdimgck.php'width='60'height='24'style="cursor:pointer"onclick="this.src=this.src+'?'"title="点击我更换图片"alt="点击我更换图片"/>
这样只要是你的action指向正确就能在任何页面进行提交了,需要说一点就是这个aid就是文章的id,在文章页可以使用{dede:field.id/}获得.
然后是获取评论,我们还是用他的ajax来获取,需要注意的就是他要包含一个js,织梦的说明文档中也说了,就是{dede:global.cfg_cmsurl/}/include/dedeajax2.js这个js,然后在文章页,article_article.htm页中加上<dd id=’commetcontent’></dd>这个是放获取的评论内容,然后:
- <scriptlanguage='javascript'>
- functionLoadCommets(page)
- {
- vartaget_obj=document.getElementByIdx_x('commetcontent');
- varwaithtml="<divstyle='line-height:50px'><imgsrc='{dede:global.cfg_cmsurl/}/images/loadinglit.gif'/>评论加载中…</div>";
- varmyajax=newDedeAjax(taget_obj,true,true,'','x',waithtml);
- myajax.SendGet2("{dede:global.cfg_phpurl/}/feedback_ajax.php?dopost=getlist&aid={dede:field.id/}&page="+page);
- DedeXHTTP=null;
- }
- LoadCommets(1);
- </script>
这个就是获取评论的js,加在包含文件的后面就可以,然后在plus/feedback_ajax.php中的GetList()函数中定义评论列表的样式,调取的内容就可以了,需要注意的是其helper(‘smiley’);等的一些小助手功能.