详解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下实现在指定目录搜索指定类型文件的函数
Oct 03 PHP
谈PHP生成静态页面分析 模板+缓存+写文件
Aug 17 PHP
php入门教程 精简版
Dec 13 PHP
Codeigniter出现错误提示Error with CACHE directory的解决方案
Jun 12 PHP
PHP人民币金额转大写实例代码
Oct 02 PHP
Joomla语言翻译类Jtext用法分析
May 05 PHP
PHP 接入支付宝即时到账功能
Sep 18 PHP
php微信开发之自定义菜单实现
Nov 18 PHP
Laravel 5.4前后台分离,通过不同的二级域名访问方法
Oct 13 PHP
laravel高级的Join语法详解以及使用Join多个条件
Oct 16 PHP
PHP基于ip2long实现IP转换整形
Dec 11 PHP
php中yii框架实例用法
Dec 22 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
yii框架中的Url生产问题小结
2012/01/16 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
php修改数组键名的方法示例
2017/04/15 PHP
PHP简单实现防止SQL注入的方法
2018/03/13 PHP
免费空间广告万能消除代码
2006/09/04 Javascript
Javascript中的数学函数
2007/04/04 Javascript
javascript 对象比较实现代码
2009/04/27 Javascript
JavaScript与Div对层定位和移动获得坐标的实现代码
2010/09/08 Javascript
JS中Iframe之间传值的方法
2013/03/11 Javascript
url参数中有+、空格、=、%、&amp;、#等特殊符号的问题解决
2013/05/15 Javascript
js 实现的可折叠留言板(附源码下载)
2014/07/01 Javascript
AngularJS实现表单验证
2015/01/28 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
jQuery实现的经典滑动门效果
2015/09/22 Javascript
jQuery Mobile框架中的表单组件基础使用教程
2016/05/17 Javascript
React Native中的RefreshContorl下拉刷新使用
2017/10/09 Javascript
vue 详情跳转至列表页实现列表页缓存
2019/03/27 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
在Vue mounted方法中使用data变量详解
2019/11/05 Javascript
JS实现简易留言板(节点操作)
2020/03/16 Javascript
vue组件中传值EventBus的使用及注意事项说明
2020/11/16 Javascript
[04:44]DOTA2西游记战队视频彩蛋流出 师徒开黑巧遇林书豪
2016/08/03 DOTA
[01:27:43]VGJ.S vs TNC Supermajor 败者组 BO3 第三场 6.6
2018/06/07 DOTA
如何准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求
2015/10/13 Python
Python脚本暴力破解栅栏密码
2015/10/19 Python
Python Sql数据库增删改查操作简单封装
2016/04/18 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
Tensorflow 实现分批量读取数据
2020/01/04 Python
python3 自动打印出最新版本执行的mysql2redis实例
2020/04/09 Python
Python 常用日期处理 -- calendar 与 dateutil 模块的使用
2020/09/02 Python
The North Face北面德国官网:美国著名户外品牌
2018/12/12 全球购物
意大利奢侈品多品牌集合店:TheDoubleF
2019/08/24 全球购物
销售顾问的岗位职责
2013/11/13 职场文书
合作意向书模板
2014/03/31 职场文书
企业与个人合作经营协议书
2014/11/01 职场文书
SQLServer RANK() 排名函数的使用
2022/03/23 SQL Server