详解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连mysql和oracle数据库性能比较
Oct 09 PHP
PHP4与PHP3中一个不兼容问题的解决方法
Oct 09 PHP
php的memcached客户端memcached
Jun 14 PHP
ThinkPHP3.1新特性之内容解析输出详解
Jun 19 PHP
php中数据库连接方式pdo和mysqli对比分析
Feb 25 PHP
ThinkPHP 3.2 版本升级了哪些内容
Mar 05 PHP
php判断两个日期之间相差多少个月份的方法
Jun 18 PHP
Linux系统下PHP-FPM的安装和配置教程
Aug 17 PHP
php制作的简单验证码识别代码
Jan 26 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
Yii CGridView用法实例详解
Jul 12 PHP
php设计模式之观察者模式实例详解【星际争霸游戏案例】
Mar 30 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
星际争霸任务指南——人族
2020/03/04 星际争霸
消息持续发送的完整例子
2006/10/09 PHP
php中判断一个字符串包含另一个字符串的方法
2007/03/19 PHP
解析关于wamp启动是80端口被占用的问题
2013/06/21 PHP
php中让上传的文件大小在上传前就受限制的两种解决方法
2013/06/24 PHP
php绘制一个矩形的方法
2015/01/24 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
php session实现多级目录存放实现代码
2016/02/03 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
Aster vs Newbee BO5 第二场2.19
2021/03/10 DOTA
jQuery 页面载入进度条实现代码
2009/02/08 Javascript
网页中表单按回车就自动提交的问题的解决方案
2014/11/03 Javascript
基于jquery实现页面滚动时顶部导航显示隐藏
2020/04/20 Javascript
AngularJS全局scope与Isolate scope通信用法示例
2016/11/22 Javascript
JavaScript实现按键精灵的原理分析
2017/02/21 Javascript
vue源码学习之Object.defineProperty对象属性监听
2018/05/30 Javascript
node.js监听文件变化的实现方法
2019/04/17 Javascript
vue实现前端分页完整代码
2020/06/17 Javascript
原生JS实现pc端轮播图效果
2020/12/21 Javascript
Python警察与小偷的实现之一客户端与服务端通信实例
2014/10/09 Python
python图像处理之镜像实现方法
2015/05/30 Python
Python中线程编程之threading模块的使用详解
2015/06/23 Python
python数据结构链表之单向链表(实例讲解)
2017/07/25 Python
Python在不同目录下导入模块的实现方法
2017/10/27 Python
python网络编程之五子棋游戏
2020/05/14 Python
python字典key不能是可以是啥类型
2020/08/04 Python
Python ellipsis 的用法详解
2020/11/20 Python
中国酒类在线零售网站:酒仙网
2016/08/20 全球购物
通往英国高街的商店橱窗:Down Your High Street
2020/07/19 全球购物
采购部部门职责
2013/12/15 职场文书
单位工程竣工验收方案
2014/03/16 职场文书
城管执法人员个人对照检查材料思想汇报
2014/09/29 职场文书
2014年餐厅服务员工作总结
2014/11/18 职场文书
劳模先进事迹材料
2014/12/24 职场文书
教你在 Java 中实现 Dijkstra 最短路算法的方法
2022/04/08 Java/Android
Tomcat安装使用及部署Web项目的3种方法汇总
2022/08/14 Servers