当前位置:首页 > 日记 > 正文

详解WordPress中调用评论模板和循环输出评论的PHP函数

详解WordPress中调用评论模板和循环输出评论的PHP函数

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>

相关文章

微信小程序之前台循环数据绑定

微信小程序之前台循环数据绑定

循环,数据绑定,前台,程序,电脑软件,微信小程序之前台循环数据绑定微信小程序的循环数据绑定到wxml例:wxml里:<view wx:for="{{array}}"> {{item.message}} </view>通过上面的wx.for可以绑定一个数组,数组是json类型的;默认的索引序号是ite…

微信小程序 生命周期函数详解

微信小程序 生命周期函数详解

周期函数,详解,生命,程序,电脑软件,微信小程序 生命周期函数小程序中 判断当前首页是从其他页面返回,还是由入口打开由于小程序的数据在我们退出小程序时并没有得到释放,因此再次点击开来数据依然没有变成初始化 解决方法:在小程序 data 数据…

浅谈php中变量的数据类型判断函数

浅谈php中变量的数据类型判断函数

数据类型,函数,变量,浅谈,电脑软件,在php中我们可以通过 var_dump()打印出变量的类型和值。同时我们可以通过一些函数判断变量的类型。如果只是想得到一个变量的数据类型,可以使用gettype()函数,gettype($t) 返回$t的数据类型的字符串,要是$t…

老生常谈PHP数组函数array_merge |

老生常谈PHP数组函数array_merge |

函数,数组函数,老生常谈,必看,电脑软件,很久之前就用到过这个函数,只不不过是简单的用用而已并没有做太深入的研究今天在翻阅别人博客时看到了对array_merge的一些使用心得,故此自己来进行一次总结。 array_merge是将一个或者多个数组进行合…

PHP中利用sleep函数实现定时执行功

PHP中利用sleep函数实现定时执行功

功能实现,函数实现,定时执行,代码,电脑软件,在一些竞猜的网站中,如果我们需要做一个定时执行的功能,比如有一道题,在十秒之内要完成,否则显示“您已超时”,如果完成,则跳转到下一道题上面,而这中间有一个十秒的停顿,这样的功能是怎样实现的呢?在PHP…

Asp DatePart 函数的语法详解 | 用

Asp DatePart 函数的语法详解 | 用

用于,函数,语法,时间间隔,日期,DatePart 的语法是 DatePart(interval, date),用以取 date 的某部分。 interval yyyy:date 中的年 m:date 中的月 d:date 中的日 h:date 中的时 n:date 中的分 s:date 中的秒 q:date 位于该年的第几季度,比如 2009-6-2…

PHP空值检测函数与方法汇总

PHP空值检测函数与方法汇总

函数,空值,检测,方法,电脑软件,几乎任何入口的HTTP请求我们都会去检测它携带的参数,类似 isset() empty() 的函数一定不少见。以下的测试结果基于 PHP7.16是否定义判断: isset()可以使用 isset() 函数判断一个变量是否定义,数组内某个元素是否…

深入理解React中何时使用箭头函数

深入理解React中何时使用箭头函数

函数,箭头,电脑软件,React,前言相信大家当想起箭头函数时,脑海里可能会浮现 棒,酷,简洁,有趣 等形容词,其实,我们存在一些 更充分的理由 使我们在联想起 箭头函数 时不得不想到的,本文详细的给大家介绍了关于React何时使用箭头函数的相关内容,分享…

SeaJS中use函数用法实例分析

SeaJS中use函数用法实例分析

实例分析,函数用法,电脑软件,SeaJS,本文实例讲述了SeaJS中use函数用法。分享给大家供大家参考,具体如下:有了 define 等模块定义规范的实现,我们可以开发出很多模块。但光有一堆模块不管用,我们还得让它们能跑起来。在 SeaJS 里,要启动模块系统…

设置PowerPoint2007自动循环播放的

设置PowerPoint2007自动循环播放的

循环播放,设置,方法,电脑软件,  许多公司将PPT循环播放作为户外宣传主要手段,那我们该如何设置PPT,才能让PPT达到自动循环播放的效果呢?以下是小编为您带来的关于设置PowerPoint2007自动循环播放,希望对您有所帮助。设置PowerPoint2007自动…

浅谈js函数三种定义方式 & 四种调

浅谈js函数三种定义方式 & 四种调

函数,调用,调用顺序,三种,方式,在Javascript定义一个函数一般有如下三种方式:函数关键字(function)语句:function fnMethodName(x){alert(x);}函数字面量(Function Literals):var fnMethodName = function(x){alert(x);}Function()构造函数:var…

Laravel中如何增加自定义全局函数

Laravel中如何增加自定义全局函数

自定义,全局函数,详解,电脑软件,Laravel,前言在日常开发工作中,有时候我们需要给 Laravel 添加一些自定义全局函数。当然,我们可以直接修改 Laravel 的 Helpers.php 文件来实现(这是极其不推荐的)。接下来我们讨论以下两种实现方式:无论是以下哪…