详解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新手谈谈我的学习心得
Feb 25 PHP
PHP 全角转半角实现代码
May 16 PHP
PHP中如何调用webservice的实例参考
Apr 25 PHP
解析yii数据库的增删查改
Jun 20 PHP
PHP中使用json数据格式定义字面量对象的方法
Aug 20 PHP
PHP实现的简单网络硬盘
Jul 29 PHP
php实现面包屑导航例子分享
Dec 19 PHP
学习PHP session的传递方式
Jun 15 PHP
PHP新特性详解之命名空间、性状与生成器
Jul 18 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
Nov 17 PHP
Thinkphp5.0 框架Model模型简单用法分析
Oct 11 PHP
tp5框架的增删改查操作示例
Oct 31 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
法兰绒滤网冲泡
2021/03/03 冲泡冲煮
Apache2 httpd.conf 中文版
2006/12/06 PHP
Linux下创建nginx脚本-start、stop、reload…
2014/08/03 PHP
详解Yii2.0 rules验证规则集合
2017/03/21 PHP
浅谈Yii乐观锁的使用及原理
2017/07/25 PHP
php微信公众号开发之微信企业付款给个人
2018/10/04 PHP
一实用的实现table排序的Javascript类库
2007/09/12 Javascript
jquery jqPlot API 中文使用教程(非常强大的图表工具)
2011/08/15 Javascript
window.navigate 与 window.location.href 的使用区别介绍
2013/09/21 Javascript
JavaScript实现图片DIV竖向滑动的方法
2015/04/25 Javascript
Bootstrap每天必学之栅格系统(布局)
2015/11/25 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
js 自带的sort() 方法全面了解
2016/08/16 Javascript
微信小程序 参数传递详解
2016/10/24 Javascript
值得收藏的vuejs安装教程
2017/11/21 Javascript
Vue CLI3 如何支持less的方法示例
2018/08/29 Javascript
Vue.js组件通信之自定义事件详解
2019/10/19 Javascript
用Node写一条配置环境的指令
2019/11/14 Javascript
一篇文章带你从零快速上手Rollup
2020/09/07 Javascript
[36:13]Mineski vs iG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
在Python中使用模块的教程
2015/04/27 Python
pycharm执行python时,填写参数的方法
2018/10/29 Python
python的sorted用法详解
2019/06/25 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
详解Python多线程下的list
2020/07/03 Python
Python爬虫逆向分析某云音乐加密参数的实例分析
2020/12/04 Python
HTML5 canvas标签实现刮刮卡效果
2015/04/24 HTML / CSS
西班牙自行车和跑步商店:Alltricks
2018/07/07 全球购物
集团公司总经理岗位职责
2013/12/20 职场文书
《难忘的泼水节》教学反思
2014/02/27 职场文书
超市开店计划书
2014/04/26 职场文书
身份证丢失证明
2015/06/19 职场文书
证婚人婚礼致辞
2015/07/28 职场文书
小学四年级班务总结该怎么写?
2019/08/16 职场文书
导游词之山西关帝庙
2019/11/01 职场文书
Linux安装Docker详细教程
2022/07/07 Servers