如何输出带有评论链接的评论数量

时间:2013-02-20 作者:Xav

如果有评论,我想在帖子的评论部分的链接中包装数量,例如“5条评论”,但当我添加echo for comments\\u link时,它会出错。

<?php comments_number( 
\'\', 
\'<span class="comment_meta">With:</span> 1 Comment\', 
\'<span class="comment_meta">With:</span> <a href="\'echo . $comments_link(); . \'">% Comments</a>\' ); 
?>
我想我在学习php和html时遇到了困难。任何帮助都将不胜感激。

===编辑====

不确定get\\u comment\\u count是否仍在使用,但我已使用以下方法使其正常工作:

<?php $comment_count = get_comment_count($post->ID); ?>
<?php if ($comment_count[\'approved\'] > 0) : ?><span class="comment_meta">With: </span><?php comments_popup_link( 
\'\', // No comments exist, you would probably want to display a link here in order for people to add the first comment
\'1 comment\', // 1 comment, usually phrased differently
\'% comments\' // > 1 comment
); ?>
<?php endif; ?>

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

问题是您在字符串串联中回音。想想echo 总是从新的一行开始。在大多数情况下,最明智的做法是执行任何计算或字符串串联,并将结果存储在变量中,然后调用echo $var; 在下面的行上。

在这种特殊情况下,虽然我们正在处理WordPress的核心功能(comments_popup_link()) 这就是我们的回声。这可能会起作用:

<span class="comment_meta">With: </span><?php comments_popup_link(
    \'\', // No comments exist, you would probably want to display a link here in order for people to add the first comment
    \'1 comment\', // 1 comment, usually phrased differently
    \'% comments\' // > 1 comment
); ?>
如果不想在没有注释的情况下显示“With:”标签,可以将其放在If语句中。我认为这可能有用:

<span class="comment_meta"><?php if (wp_count_comments(get_the_ID())) : ?>With: <?php endif; ?></span>

SO网友:PrivateUser

您不应回显您的comments\\u链接。

  <a href="<?php comments_link(); ?>"><?php comments_number(\'Be the first to comment!\', \'1 comment.\', \'% comments already!\'); ?></a>
或者用这样的东西

<?php echo sprintf(__(\'<a href="%s">%s comment(s)</a>\', \'textdomain\'), get_comments_link(),get_comments_number()); ?>

结束

相关推荐

Bones_Comments()和Comments.php有什么不同

我开始使用Bones HTML5 Wordpress入门主题,但与Bones中的一些内置功能有点混淆,有function bones_comments() 在函数中。php,但我在文件中找不到使用或调用此函数的任何地方。我看了一下函数中的代码,它看起来像是一些输出wordpress注释的代码,但也有注释。wordpress中comment\\u template()的php。所以真的搞不明白为什么bones添加了bones\\u comments()函数而没有使用它。bones\\u comments()