如何获得评论的回复?

时间:2015-05-25 作者:Gixty

有没有办法通过ID获得评论的回复?我在谷歌上搜索过,但没有找到任何关于它的信息。

例如,我有一条ID为123的注释

我想显示评论ID 123的所有回复。

我尝试了以下方法,但没有成功:

$args = array(
    \'status\' => \'approve\',
    \'ID\' => 123,
    \'number\' => \'5\',
    \'post_id\' => 73871,
    \'comment_parent\' => 0

);
$comments = get_comments($args);

4 个回复
SO网友:flomei

comment_ID 是唯一的值,无需包含post_id 在参数中。

这对我来说很好:

$args = array(
    \'status\' => \'approve\', 
    \'number\' => \'5\',
    \'parent\' => 3194
);
$comments = get_comments($args);
这将返回5条已批准的注释,其父级是具有comment_ID 3194

示例输出可以通过以下方式完成:

foreach($comments as $child_comment) {
    echo $child_comment->comment_ID;  
}

SO网友:Gixty

我想我刚刚找到了,如果我错了,请纠正我:

$args = array(
    \'status\' => \'approve\', 
    \'number\' => \'5\',
    \'post_id\' => 73871,
    \'parent\' => 123

);
$comments = get_comments($args);
EDIT: 不完全是,它似乎只返回第一个答复。其余的都不见了。

SO网友:Abdul Awal Uzzal

到目前为止,您是正确的,但不完整。

代码之后需要一个foreach循环。所以它会像:

$args = array(
    \'status\' => \'approve\', 
    \'number\' => \'5\',
    \'post_id\' => 73871,
    \'parent\' => 123
);

$comments = get_comments($args);

foreach ($comments as $comment) {
    echo $comment->comment_content; // echo all the other fields you need
}

SO网友:mukto90

在您的foreach 循环,您需要搜索每个评论,如果它有任何答复提交。

$replies = get_comments( array( \'parent\' => $comment->comment_ID, \'status\' => \'approve\', \'order\' => \'ASC\' ) );

请看一下这个插件https://github.com/mukto90/comment-search/blob/master/cb-comment-search.php

它将帮助您通过评论id进行搜索,并显示其所有回复(可能还有他们的回复)。

结束

相关推荐

Can't reply to comments

我无法通过仪表板批准或回复评论。批准只返回注释。快速回复不起作用,它说找不到页面,并以红色显示了一大堆代码,没有什么太明显的。我停用了所有插件,但仍然无法工作。所以我猜测一个文件丢失了,因为它这么说,但没有说丢失了哪一页。下面是作为屏幕截图返回的部分代码。