详解WordPress中调用评论模板和循环输出评论的PHP函数


Posted in PHP onJanuary 05, 2016

comments_template
comments_template 函数是一个调用评论模板的函数,使用起来很简单,与get_header()等函数一样,是一个include文件类函数,今天来讲一下他的使用。

描述
上面已经讲过了,就是调用评论模板的一个函数。

使用

<?php comments_template( $file, $separate_comments ); ?>

其中

$file 需要调用的文件名 默认值: /comments.php
$separate_comments 是否分隔不用类型的评论 布尔型 默认值: false
讲的比较笼统,更深层次请往下看

使用实例

<?php comments_template(get_post_format().'-comment.php', true ); ?>

这样,就可以根据你不同的文章类型去显示文章评论了。
用法上是不是跟get_template_part()有点类似呢?
至于$separate_comments准确的意思,我也没搞明白,不过官方默认主题一直都是true的所以我也就跟进了。之前研究过一次,貌似这里指的类型是是否回复的意思。

wp_list_comments
wp_list_comments 函数是一个循环输出当前文章或页面每个评论的函数,在 WordPress 主题中主要被用来输出每一条评论,省去我们手工便利之苦,也把 WordPress 的评论功能很好的进行了模块化。

wp_list_comments函数在主题中配合comments_template函数联合使用可以很好的将 WordPress 的评论功能独立出来,而且可以更好对评论嵌套层数、每页显示评论数量、评论样式等等等等进行控制。所以如果你想做好主题的话,那还是看一下吧。

描述
英文原文:

Displays all comments for a post or Page based on a variety of parameters including ones set in the administration area.

我的理解:
用一个整体设置的参数来显示一篇文章、页面的所有评论。

用法

<?php
   wp_list_comments( $args ); 
?>

参数使用
 

<?php $args = array(
  'walker'      => null,
  'max_depth'     => ,
  'style'       => 'ul',
  'callback'     => null,
  'end-callback'   => null,
  'type'       => 'all',
  'page'       => ,
  'per_page'     => ,
  'avatar_size'    => 32,
  'reverse_top_level' => null,
  'reverse_children' => ); ?>

$walker 自定义样式类名
$avatar_size 头像大小 Default: 32
$style 评论容器标签可以是 ‘div', ‘ol', or ‘ul',默认值是'ul',如果不是,那你需要像如下那样明确写出。

<div class="commentlist"><?php wp_list_comments(array('style' => 'div')); ?></div>

<ol class="commentlist"><?php wp_list_comments(array('style' => 'ol')); ?></ol>

$type 显示何种评论,参数可以是 ‘all'、'comment'、'trackback'、'pingback'、'pings'. ‘pings' 包括'trackback' 和 ‘pingback'.
默认值: ‘all'
$reply_text 回复按钮的文本值,这个较少用不解释 默认值: ‘Reply'
$login_text 登录按钮的文本值,这个较少用不解释 默认值: ‘Log in to Reply'
$callback 评论显示的回调函数,即显示评论主题的函数名称
$end-callback 应该是循环结束后的回调函数,本人未实测,请自行探索。
$reverse_top_level 布尔值,如果设置本参数为真,则先显示最新一条评论,后面的评论按照后台设置显示。
$reverse_children 布尔值,如果设置本参数为真,则先显示最新一条有子评论的评论,后面的评论按照后台设置显示。
实例
这里是官方默认主题 twentyeleven 中的评论显示演示,
具体其他的参数请参照以上介绍自行演示探索。

<ol class="commentlist">
<?php
 /* Loop through and list the comments. Tell wp_list_comments()
 * to use twentyeleven_comment() to format the comments.
 * If you want to overload this in a child theme then you can
 * define twentyeleven_comment() and that will be used instead.
 * See twentyeleven_comment() in twentyeleven/functions.php for more.
 */
 wp_list_comments( array( 'callback' => 'twentyeleven_comment' ) );
//twentyeleven_comment 函数在主题文件 "twentyeleven/functions.php"中定义。
?>
</ol>
PHP 相关文章推荐
PHP学习之PHP表达式
Oct 09 PHP
PHP 过滤页面中的BOM(实现代码)
Jun 29 PHP
测试php函数的方法
Nov 13 PHP
php中getservbyport与getservbyname函数用法实例
Nov 18 PHP
PHP浮点比较大小的方法
Feb 14 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
Jul 07 PHP
PHP7标量类型declare用法实例分析
Sep 26 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
Jun 08 PHP
PHP使用DOM对XML解析处理操作示例
Jul 04 PHP
Yii框架布局文件的动态切换操作示例
Nov 11 PHP
php把文件设置为插件的技巧方法
Feb 03 PHP
KindEditor在php环境下上传图片功能集成的方法示例
Jul 20 PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 #PHP
基于PHP实现简单的随机抽奖小程序
Jan 05 #PHP
详解WordPress开发中的get_post与get_posts函数使用
Jan 04 #PHP
使用PHP实现微信摇一摇周边红包
Jan 04 #PHP
解析WordPress中的post_class与get_post_class函数
Jan 04 #PHP
WordPress开发中的get_post_custom()函数使用解析
Jan 04 #PHP
在WordPress中安装使用视频播放器插件Hana Flv Player
Jan 04 #PHP
You might like
php 在线打包_支持子目录
2008/06/28 PHP
php 数组二分法查找函数代码
2010/02/16 PHP
PHP 函数call_user_func和call_user_func_array用法详解
2014/03/02 PHP
windows7配置Nginx+php+mysql的详细教程
2016/09/04 PHP
PHP实现的猴王算法(猴子选大王)示例
2018/04/30 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
JavaScript 学习 - 提高篇
2007/02/02 Javascript
基于jquery &amp; json的省市区联动代码
2012/06/26 Javascript
浏览器中url存储的JavaScript实现
2015/07/07 Javascript
使用jquery.form.js实现图片上传的方法
2016/05/05 Javascript
js 获取当前web应用的上下文路径实现方法
2016/08/19 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
iview同时验证多个表单问题总结
2018/09/29 Javascript
浅谈Javascript常用正则表达式应用
2019/03/08 Javascript
Python fileinput模块使用介绍
2014/11/30 Python
pygame学习笔记(2):画点的三种方法和动画实例
2015/04/15 Python
详解Django中Request对象的相关用法
2015/07/17 Python
Python实现多线程HTTP下载器示例
2017/02/11 Python
Python中.py文件打包成exe可执行文件详解
2017/03/22 Python
深入理解Django中内置的用户认证
2017/10/06 Python
Python机器学习算法之k均值聚类(k-means)
2018/02/23 Python
基于Python的Post请求数据爬取的方法详解
2019/06/14 Python
Python 从subprocess运行的子进程中实时获取输出的例子
2019/08/14 Python
Python文件路径名的操作方法
2019/10/30 Python
Python字符串中删除特定字符的方法
2020/01/15 Python
Python线程threading模块用法详解
2020/02/26 Python
不到20行实现Python代码即可制作精美证件照
2020/04/24 Python
Python实现发票自动校核微信机器人的方法
2020/05/22 Python
HTML5视频支持检测(检查浏览器是否支持视频播放)
2013/06/08 HTML / CSS
施工材料员岗位职责
2014/02/12 职场文书
交通安全横幅标语
2014/10/07 职场文书
2014年护士个人工作总结
2014/11/11 职场文书
作弊检讨书
2015/01/27 职场文书
2015年保管员工作总结
2015/04/30 职场文书
大学生先进个人主要事迹材料
2015/11/04 职场文书
《玩出了名堂》教学反思
2016/02/17 职场文书