首页建站经验 最新wordpress主题制作之新手教程系列(十)

最新wordpress主题制作之新手教程系列(十)

制作comments.php今天我们来制作评论主题的评论模块。在主题目录Aurelius下新建comments.php,在single.php剪切以下代码,粘贴到comments.php:代码如下:Comments Reply Joe B…

制作comments.php

今天我们来制作评论主题的评论模块。在主题目录Aurelius下新建comments.php,在single.php剪切以下代码,粘贴到comments.php:

代码如下:

Comments

 

  1. http://www.cuoxin.com/wen/2019/11-02/“” Reply

    Joe Bloggs

    January 6, 2010 at 6:26 am

    Donec leo. Aliquam risus elit, luctus vel, interdum vitae, malesuada eget, elit. Nulla vitae ipsum. Donec ligula ante, bibendum sit amet, elementum quis, viverra eu, ante. Fusce tincidunt. Mauris pellentesque, arcu eget feugiat accumsan, ipsum mi molestie orci, ut pulvinar sapien lorem nec dui.

 

Add a comment

 

在single.php原位置添加代码:

<?php comments_template(); ?>

以上语句的作用就是将comments.php里的所有内容导入到single.php中,与直接在single.php写comments.php中的代码效果是一样的。

为了安全起见,不让恶意用户直接打开评论文件,请在comments.php头部添加以下代码:

<?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()输出的评论代码与我们主题的评论代码不一样的,我们得自定义我们的评论列表,将comments.php中的以下代码删除(以下代码用于列出文章的所有评论):

代码如下:

  • http://www.cuoxin.com/wen/2019/11-02/“” Reply

    Joe Bloggs

    January 6, 2010 at 6:26 am


    Donec leo. Aliquam risus elit, luctus vel, interdum vitae, malesuada eget, elit. Nulla vitae ipsum. Donec ligul a ante, bibendum sit amet, elementum quis, viverra eu, ante. Fusce tincidunt. Mauris pellentesque, arcu eget feugiat accumsan, ipsum mi molestie orci, ut pulvinar sapien lorem nec dui.

  • 改成:

    代码如下:

    <?php

    if (!empty($post->post_password) && $_COOKIE['wp-postpass_' . COOKIEHASH] != $post->post_password) {

    // if there’s a password

    // and it doesn’t match the cookie

    ?>

  • 请输入密码再查看评论内容.

  • <?php

    } else if ( !comments_open() ) {

    ?>

  • 评论功能已经关闭!

  • <?php

    } else if ( !have_comments() ) {

    ?>

  • 还没有任何评论,你来说两句吧

  • <?php

    } else {

    wp_list_comments(‘type=comment&callback=aurelius_comment’);

    }

    ?>

    以上代码的意思大致也可以看得出来了,就是一大堆 如果…就….,如果以上条件都不满足就列出所有评论。现在将主题文件夹Aurelius中的functions.php中的 ?> ,改成以下代码,如果你之前从本博客下载到的functions.php已经有以下代码则不用再添加:

    代码如下:

    function aurelius_comment($comment, $args, $depth)
    {

    $GLOBALS['comment'] = $comment; ?>

  • “>

    <?php if (function_exists(‘get_avatar’) && get_option(‘show_avatars’)) { echo get_avatar($comment, 48); } ?>

    <?php comment_reply_link(array_merge( $args, array(‘reply_text’ => ‘回复’,‘depth’ => $depth, ‘max_depth’ => $args['max_depth']))) ?>

    “>

    <?php printf(__(‘%s’), get_comment_author_link()); ?>

    发表于:<?php echo get_comment_time(‘Y-m-d H:i’); ?>

       <?php edit_comment_link(‘修改’); ?>

    <?php if ($comment->comment_approved == ’0′) : ?>

    你的评论正在审核,稍后会显示出来!

    <?php endif; ?>

    <?php comment_text(); ?>

    <?php } ?>

    以上代码所用到的WordPress函数及相应的说明:

    好,现在在你的文章页面底部就可以正常地显示评论了!现在我们继续来制作提交评论的表单,将以下代码删除(也就是评论表单的代码):

    代码如下:

    Add a comment

     

    改成:

    代码如下:

    <?php

    if ( !comments_open() ) :

    // If registration required and not logged in.

    elseif ( get_option(‘comment_registration’) && !is_user_logged_in() ) :

    ?>

    你必须 “>登录 才能发表评论.

    <?php else : ?>

    /wp-comments-post.php” method=”post”>

    发表评论

     

    <?php comment_id_fields(); ?>

    <?php do_action(‘comment_form’, $post->ID); ?>

    <?php endif; ?>

    好了,评论模板comments.php制作完毕!

     

     

  • 本文来自网络,不代表1号站长-站长学院|资讯交流平台立场。转载请注明出处: https://www.1cn.cc/jianzhan/jingyan/17021.html
    上一篇ecshop验证码显示不了怎么办?
    下一篇 在WordPress后台的文章列表只显示该作者自己的文章
    admin

    作者: admin

    这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

    为您推荐

    评论列表()

      联系我们

      联系我们

      0898-88888888

      在线咨询: QQ交谈

      邮箱: email@wangzhan.com

      工作时间:周一至周五,9:00-17:30,节假日休息

      关注微信
      微信扫一扫关注我们

      微信扫一扫关注我们

      关注微博
      返回顶部