详解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中动态显示签名和ip原理
Mar 28 PHP
PHP 执行系统外部命令 system() exec() passthru()
Aug 11 PHP
php自动获取字符串编码函数mb_detect_encoding
May 31 PHP
JoshChen_php新手进阶高手不可或缺的规范介绍
Aug 16 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
Sep 09 PHP
百度地图API使用方法详解
Aug 25 PHP
PHP实现简单实用的分页类代码
Apr 08 PHP
Yii2中Restful API原理实例分析
Jul 25 PHP
php中的异常和错误浅析
May 03 PHP
PHP中实现中文字串截取无乱码的解决方法
May 29 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
Jun 16 PHP
关于PHP数组迭代器的使用方法实例
Nov 17 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
header导出Excel应用示例
2014/01/24 PHP
jQuery插件原来如此简单 jQuery插件的机制及实战
2012/02/07 Javascript
JavaScript定时显示广告代码分享
2015/03/02 Javascript
JavaScript记录光标在编辑器中位置的实现方法
2016/04/22 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
Angular 路由route实例代码
2016/07/12 Javascript
树结构之JavaScript
2017/01/24 Javascript
vue2.0基于vue-cli+element-ui制作树形treeTable
2019/04/30 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
[01:37]DOTA2超级联赛专访ChuaN 传奇般的电竞之路
2013/06/19 DOTA
初学Python函数的笔记整理
2015/04/07 Python
你眼中的Python大牛 应该都有这份书单
2017/10/31 Python
Python调用服务接口的实例
2019/01/03 Python
Gauss-Seidel迭代算法的Python实现详解
2019/06/29 Python
Python基于当前时间批量创建文件
2020/05/07 Python
python matplotlib绘制三维图的示例
2020/09/24 Python
CSS3属性 line-clamp控制文本行数的使用
2020/03/19 HTML / CSS
HTML5中通过li-canvas轻松实现单图、多图、圆角图绘制,单行文字、多行文字等
2018/11/30 HTML / CSS
HTML5 解析规则分析
2009/08/14 HTML / CSS
全球最大最受欢迎的旅游社区:Tripadvisor
2017/11/03 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
Coccinelle官网:意大利的著名皮具品牌
2019/05/15 全球购物
存储过程和函数的区别
2013/05/28 面试题
信息工程学院毕业生推荐信
2013/11/05 职场文书
高级方案规划工程师岗位职责
2013/11/29 职场文书
《两只鸟蛋》教学反思
2014/02/10 职场文书
关于抽烟的检讨书
2014/02/25 职场文书
精彩的广告词
2014/03/19 职场文书
乡村卫生服务一体化管理实施方案
2014/03/30 职场文书
大学生评语大全
2014/04/18 职场文书
操行评语大全
2014/04/30 职场文书
5s推行计划书
2014/05/06 职场文书
社区国庆节活动总结
2015/03/23 职场文书
干部理论学习心得体会
2016/01/21 职场文书
一波干货,会议主持词开场白范文
2019/05/06 职场文书
mysql中整数数据类型tinyint详解
2021/12/06 MySQL