get_comment_type()
云策文档标注
概述
get_comment_type() 函数用于获取指定评论的类型,如 'comment'、'pingback' 或 'trackback'。它接受一个可选的评论 ID 或 WP_Comment 对象作为参数,并返回评论类型字符串。
关键要点
- 参数 $comment_id 可选,可以是评论 ID 或 WP_Comment 对象,默认为当前评论。
- 返回值为字符串,表示评论类型,空字符串默认转换为 'comment'。
- 通过 apply_filters('get_comment_type', ...) 钩子允许过滤返回的评论类型。
- 函数内部使用 get_comment() 获取评论数据,并处理默认类型。
代码示例
function get_comment_type( $comment_id = 0 ) {
$comment = get_comment( $comment_id );
if ( '' === $comment->comment_type ) {
$comment->comment_type = 'comment';
}
/**
* Filters the returned comment type.
*
* @since 1.5.0
* @since 4.1.0 The `$comment_id` and `$comment` parameters were added.
*
* @param string $comment_type The type of comment, such as 'comment', 'pingback', or 'trackback'.
* @param string $comment_id The comment ID as a numeric string.
* @param WP_Comment $comment The comment object.
*/
return apply_filters( 'get_comment_type', $comment->comment_type, $comment->comment_ID, $comment );
}注意事项
- 从 WordPress 4.4.0 开始,$comment_id 参数支持 WP_Comment 对象。
- 钩子 get_comment_type 可用于自定义评论类型的返回逻辑。
- 相关函数包括 get_comment() 和 comment_type(),常用于评论处理场景。
原文内容
Retrieves the comment type of the current comment.
Parameters
$comment_idint|WP_Commentoptional-
WP_Comment or ID of the comment for which to get the type.
Default current comment.
Source
function get_comment_type( $comment_id = 0 ) {
$comment = get_comment( $comment_id );
if ( '' === $comment->comment_type ) {
$comment->comment_type = 'comment';
}
/**
* Filters the returned comment type.
*
* @since 1.5.0
* @since 4.1.0 The `$comment_id` and `$comment` parameters were added.
*
* @param string $comment_type The type of comment, such as 'comment', 'pingback', or 'trackback'.
* @param string $comment_id The comment ID as a numeric string.
* @param WP_Comment $comment The comment object.
*/
return apply_filters( 'get_comment_type', $comment->comment_type, $comment->comment_ID, $comment );
}
Hooks
- apply_filters( ‘get_comment_type’, string $comment_type, string $comment_id, WP_Comment $comment )
-
Filters the returned comment type.
Changelog
| Version | Description |
|---|---|
| 4.4.0 | Added the ability for $comment_id to also accept a WP_Comment object. |
| 1.5.0 | Introduced. |