返回介绍

comment_class()

发布于 2017-09-10 21:49:29 字数 4672 浏览 1440 评论 0 收藏 0

comment_class( string|array $class = '',  int|WP_Comment $comment = null,  int|WP_Post $post_id = null,  bool $echo = true )

Generates semantic classes for each comment element.


description


参数

$class

(string|array) (Optional) One or more classes to add to the class list.

Default value: ''

$comment

(int|WP_Comment) (Optional) Comment ID or WP_Comment object. Default current comment.

Default value: null

$post_id

(int|WP_Post) (Optional) Post ID or WP_Post object. Default current post.

Default value: null

$echo

(bool) (Optional) Whether to cho or return the output.

Default value: true


返回值

(string) If $echo is false, the class will be returned. Void otherwise.


源代码

File: wp-includes/comment-template.php

function comment_class( $class = '', $comment = null, $post_id = null, $echo = true ) {
	// Separates classes with a single space, collates classes for comment DIV
	$class = 'class="' . join( ' ', get_comment_class( $class, $comment, $post_id ) ) . '"';
	if ( $echo)
		echo $class;
	else
		return $class;
}

更新日志

Versiondescription
4.4.0Added the ability for $comment to also accept a WP_Comment object.
2.7.0Introduced.

相关函数

Uses

  • wp-includes/comment-template.php: get_comment_class()

Used By

  • wp-admin/includes/dashboard.php: _wp_dashboard_recent_comments_row()
  • wp-includes/class-walker-comment.php: Walker_Comment::comment()
  • wp-includes/class-walker-comment.php: Walker_Comment::html5_comment()
  • wp-includes/class-walker-comment.php: Walker_Comment::ping()

User Contributed Notes

  1. Skip to note content You must log in to vote on the helpfulness of this noteVote results for this note: 0You must log in to vote on the helpfulness of this note Contributed by Codex

    Example

    
    <li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
    

    The comment_class() outputs the class=”whatever” piece for that div. This includes several different classes of value: comment, even (or odd), thread-even, depth-1, etc. These make it easy to style different parts of the theme in different ways.

    Specifically, it will apply the following classes, based on the following conditions:

    comment_type: for normal comments, adds class “comment”. For all other types, it adds the value of the comment_type as the class
    user_id: if the comment was made by a registered user, then adds class “byuser” and “comment-author-” + the user_nicename sanitized (i.e. spaces removed). Also, if the comment is by the original author of the post, the class “bypostauthor” is added.
    Odd/Even: if the comment number is even, adds class “even”. Otherwise, adds class “alt” and “odd”.
    Comment Depth: The class “depth=” + the comment depth is always added
    Top-level Comments: If comment depth is top level (1), then adds “thread-even” or “thread-alt” and “thread-odd” depending on whether the comment number is even or odd.
    If the optional class parameter is passed to comment_class(), then that class gets added to all the others. This is useful for defining your own custom comment class.

    For special cases where you want to add your own classes, comment_class supports that too:

    
    <?php comment_class( 'special' ); ?>
    

    This will add “special” to the class list.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文