使用漫游器显示注释:如何区分父注释和子注释

时间:2011-07-06 作者:Squrler

我在函数中定义了一个walker。php以某种方式显示注释。我使用以下代码:

function speld_comment($comment, $args, $depth) {
$GLOBALS[\'comment\'] = $comment; ?>
<?php 
global $comment_count;
$comment_count++; 
?>
<!-- <?php echo $comment_count; ?> -->
<li <?php comment_class(); ?> id="li-comment-<?php comment_ID() ?>">
<div id="comment-<?php comment_ID(); ?>">
    <div class="comment-author_pic">
        <?php echo get_avatar($comment,$size=\'48\',$default=\'http://www.speld.nl/wp-content/themes/speld5/images/avatar.png\' ); ?>
        <p class="comment_number"><?php echo $comment_count; ?></p>
    </div>

    <div class="comment_text">
        <?php if ($comment->comment_approved == \'0\') : ?>
        <em><?php _e(\'Een moment geduld, uw reactie wordt beoordeeld door de Speld Waarheidscommissie.\') ?></em>
        <?php endif; ?>
        <div class="comment-meta commentmetadata">
            <?php printf(__(\'%s\'), get_comment_author_link()) ?> &bull;
            <a href="<?php echo htmlspecialchars( get_comment_link( $comment->comment_ID ) ) ?>"><?php printf(__(\'%1$s, %2$s\'), get_comment_date(),  get_comment_time()) ?></a>
            <?php // we want to add \'Zie profiel\' here.. comment_author_link()  ?>
        </div>
        <?php comment_text() ?>
        <div class="comment_tools">
            <?php comment_reply_link(array_merge( $args, array(\'depth\' => $depth, \'reply_text\'=>\'Reageer\', \'max_depth\' => $args[\'max_depth\']))) ?>
        </div>
    </div>
</div>
我还启用了对评论的反应(1级深度)。

问题出在comment\\u count变量中。每当有人回复评论时,回复下面所有评论的编号都会向下移动一个数字。我想阻止这种情况发生。

是否可以在walker中生成if语句,允许对注释的反应不包含comment\\u count变量?任何帮助都将不胜感激!

1 个回复
最合适的回答,由SO网友:scribu 整理而成

只需使用$depth参数:

if ( $depth ) {
  // it\'s a child comment
} else {
  // it\'s a parent comment
}

结束

相关推荐

How to prevent spam comments?

我已经安装了NoSpamMX插件。我很长时间没有收到垃圾评论了。但现在我收到了很多垃圾评论,尤其是在一篇帖子中。为什么只有那个帖子才会有这么多垃圾邮件?