dedecms文章评论功能用法分析

织梦是个很好的内容管理系统,其模型、频道、缓存功能都是十分的强大的,其文章评论也是很有特色的,因为织梦的文章评论是使用了ajax,这样即使是用的生成静态,也可以调取出最新的文章评论.

有的时候我们想单独的对某些栏目加评论,有人说使用自定义表单,其实是不好的,因为用自定义表单岂不是一篇文章就建一个自定义表单了,所以在其原文章评论的基础上修改就可以,查看一下其评论提交页,在文章页是用的ajax提交,我们可以进去详细评论页就可以看到,其action指向的文件是plus/feedback.php这个文件.

代码如下:

<input type="hidden" name="action" value="send" /> <input type="hidden" name="comtype" value="comments"> <input type="hidden" name="username" value="youke"> <input type="hidden" name="oldurl" value=""> <input type="hidden" name="aid" value="179" /> <input type="text" name="msg" value="" /> <input type="hidden" name="isconfirm" value="yes" />  


他需要几个隐含值,其中action为操纵类型,send代表发布评论,comtype为comments时表示是评论,这个username 和 oldurl为我自己定义的变量,这样的目的是不让其填姓名,只填评论内容,oldurl为评论发布成功后跳转的页面,然后是验证码.

验证码:

代码如下:

<input name="validate" type="text" id="validate" size="10" style="height:18px;width:60px;margin-right:6px;text-transform:uppercase;" class="nb" /> <img src='' 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>这个是放获取的评论内容,然后:

代码如下:

<script language='javascript'> function LoadCommets(page) { var taget_obj = document.getElementByIdx_x('commetcontent'); var waithtml = "<div style='line-height:50px'><img src='{dede:global.cfg_cmsurl/}/images/loadinglit.gif' />评论加载中...</div>"; var myajax = new DedeAjax(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');等的一些小助手功能.

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/14cbf0f46ed2bcbdb5c29ca2b91c4114.html