频道栏目
首页 > 资讯 > CMS建站 > 正文

wordpress主题制作教程(十一):评论模板comments.php

16-01-06        来源:[db:作者]  
收藏   我要投稿

前面我们制作了文章单页模板,我们可以发现单页模板的代码跟index.php差不多,不过今天我们让它们的差别大一点,我们给文章模板加入评论表单,让访客可以发表评论。

首先在主题文件夹下面新建一个文件comments.php,然后打开single.php文件,将里面的评论代码剪切出来,粘贴到comments.php文件中,要剪切的代码如下:

  
   

Comments

 
  1. 然后在single.php文件原来的位置添加代码:

    comments_template()函数默认的就是加载主题文件夹下面的comments.php文件,这个函数也是可以带参数的,以便让你可以加载别的文件,比如某些页面你需要加载一个不一样的评论表单,你就需要使用comments_template()带上参数,这里不细说。
    为了防止某些恶意用户直接打开评论文件,我们在comments.php的头部添加代码:

    if(isset($_SERVER['SCRIPT_FILENAME']) &&'comments.php'==basename($_SERVER['SCRIPT_FILENAME']))
    die('Please do not load this page directly. Thanks!');
    ?>

    修改评论列表

    wordpress有自动输出评论列表的函数wp_list_comments(),所以我们将原来的评论列表代码删除,换上这个函数,但是我们还需要加一些判断功能,比如评论需要密码才能查看、评论已经关闭、还没有评论这几个情况都要有不同的输出,所以将原来的评论代码:

  2. 替换成:

    post_password) && $_COOKIE['wp-postpass_' . COOKIEHASH] != $post->post_password) {   
           // if there's a password  
           // and it doesn't match the cookie  
       ?>  
       
  3. 上面的wp_list_comments函数中我们家里两个参数,其中type=comment意思只输出评论,除了评论还有pings\trackback\ pingback等等什么的,callback=aurelius_comment意思是调用一个自定义的函数函数aurelius_comment来显示评论。
    自定义的函数我们需要添加在主题的functions.php文件中,所以请在functions.php中的“?>”前面加上下面的代码,如果你的functions.php文件中已经存在了下面的代码,就不要再添加了:

    function aurelius_comment($comment, $args, $depth)   
    {  
       $GLOBALS['comment'] = $comment; ?>  
       
  4. '回复','depth' => $depth, 'max_depth' => $args['max_depth']))) ?>
    %s'), get_comment_author_link()); ?>    
    comment_approved == '0') : ?> 你的评论正在审核,稍后会显示出来!
  5. 上面的自定义函数中用到的几个函数的说明如下:

    添加了上面的代码评论已经能正确显示了,接下来添加提交评论的表单。
    评论表单
    将原来comments.php中的评论表单代码删除:

      
    

    Add a comment

     
    • Add comment

    实际上你不需要再手动输入每个表单项了,新版的wordprss提供了一个非常方便的函数:comment_form(),添加代码如下:

      
        
        
      
    

    可以看到上面的代码中也添加了判断,看是否允许评论,是否需要登录才能评论。
    你完全可以通过comment_form()函数的各个参数再配合css输出一个个性化的表单,这在以后的教程中讲。

  6. 相关TAG标签
    上一篇:wordpress主题制作教程(十):制作文章单页模板single.php
    下一篇:wordpress主题制作教程(12):单页面模板page.php
    相关文章
    图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站