详解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 相关文章推荐
文章推荐系统(三)
Oct 09 PHP
mysq GBKl乱码
Nov 28 PHP
PHP 彩色文字实现代码
Jun 29 PHP
修改PHP的memory_limit限制的方法分享
Feb 21 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
通过php添加xml文档内容的方法
Jan 23 PHP
ThinkPHP3.2.3数据库设置新特性
Mar 05 PHP
利用php输出不同的心形图案
Apr 22 PHP
PHP空值检测函数与方法汇总
Nov 19 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
May 08 PHP
Laravel框架控制器的middleware中间件用法分析
Sep 30 PHP
YII2 全局异常处理深入讲解
Mar 24 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下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
2011/06/09 PHP
php将gd生成的图片缓存到memcache的小例子
2013/06/05 PHP
php实现将字符串按照指定距离进行分割的方法
2015/03/14 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
基于jQuery的左右滚动实现代码
2010/12/03 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
2016/05/19 Javascript
使用JS中的exec()方法构造正则表达式验证
2016/08/01 Javascript
vue路由懒加载的实现方法
2018/03/12 Javascript
使用JS代码实现俄罗斯方块游戏
2018/08/03 Javascript
微信小程序的开发范式BeautyWe.js入门详解
2019/07/10 Javascript
关于vue-cli3打包代码后白屏的解决方案
2020/09/02 Javascript
python根据文件大小打log日志
2014/10/09 Python
用Python抢过年的火车票附源码
2015/12/07 Python
Python 爬虫模拟登陆知乎
2016/09/23 Python
利用python程序帮大家清理windows垃圾
2017/01/15 Python
python实现画一颗树和一片森林
2018/06/25 Python
python调用百度REST API实现语音识别
2018/08/30 Python
详解Python发送email的三种方式
2018/10/18 Python
对web.py设置favicon.ico的方法详解
2018/12/04 Python
利用python实现简易版的贪吃蛇游戏(面向python小白)
2018/12/30 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
python 实现交换两个列表元素的位置示例
2019/06/26 Python
详解Python 字符串相似性的几种度量方法
2019/08/29 Python
pytorch masked_fill报错的解决
2020/02/18 Python
CSS3弹性布局内容对齐(justify-content)属性使用详解
2017/07/31 HTML / CSS
使用html5+css3来实现slider切换效果告别javascript+css
2013/01/08 HTML / CSS
造型师求职自荐信
2013/09/27 职场文书
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
《她是我的朋友》教学反思
2014/04/26 职场文书
应届生求职信
2014/05/31 职场文书
党章培训心得体会
2014/09/04 职场文书
私人房屋买卖协议书
2014/10/04 职场文书
公司聚餐通知
2015/04/22 职场文书
环保建议书作文400字
2015/09/14 职场文书
党章党规党纪学习心得体会
2016/01/14 职场文书
记一次Mysql不走日期字段索引的原因小结
2021/10/24 MySQL