如何在 Wordpress 上显示登录用户的评论(仅)

Posted

技术标签:

【中文标题】如何在 Wordpress 上显示登录用户的评论(仅)【英文标题】:How to display logged in users comments (only) on Wordpress 【发布时间】:2012-06-16 02:34:11 【问题描述】:

我目前正在使用 wordpress 构建一个小众问答网站,用户可以使用它登录并发布问题或登录并回答问题。

问题当前存储为帖子,答案存储为 cmets。我希望问答者能够登录并在一个页面上查看他们所有的 cmets(答案),并带有指向原始帖子(问题)的链接。

我可以很容易地以这种方式列出帖子(即在一页上列出所有登录用户的帖子,即他们的原始问题),但似乎不能用 cmets 做到这一点(即在一页上列出所有登录用户的答案。 ) 有没有办法做到这一点?

【问题讨论】:

【参考方案1】:
    点击设置 > 讨论并从那里设置你想要的。有一个选项只允许注册会员发表评论。 http://pastebin.com/EJcghXAW - 请参见第 39 行的代码,同样的方法也适用于您的情况。

对 cme​​ts 的查询是正常的 wordpress 方式,但您需要将其包含在上面链接和指出的条件中。

用法示例:

<?php
if ( is_user_logged_in() ) 
    $user_id = get_current_user_id();
    $args = array(
        'status' => 'approve',
        'order' =>  'DESC',
        'user_id' => $user_id
    );
    $comments = get_comments($args);
    foreach($comments as $comment) :
        echo '<p>'; 
        echo($comment->comment_author . '<br />' . $comment->comment_content);
        echo '</p>';
    endforeach;

?>

【讨论】:

谢谢,但我不知道这如何让我在一个页面(没有任何其他内容的页面)上显示所有登录的用户 cmets,即如果用户登录并点击标题为我的 cmets 的页面在一个地方显示了他/她的所有 cmets(与多个帖子相关)? (如果这很明显,请道歉) - 因此,您通过用户 id ($user_id) 查询所有 cmets -> codex.wordpress.org/Function_Reference/get_comments 查看列表中的最新整数 user_id (integer) 如果他/她已注册,则评论作者的 ID(否则为 0)还有例子:) 'approve', 'order' => 'DESC', 'user_id' => $user_id ); $cmets = get_cmets($args); foreach($cmets as $comment) : echo '

'; echo($comment->comment_author . '' . $comment->comment_content);回声'

';结束; ?>
在我的回答中添加了示例。如果你能成功,请告诉我:) 我刚试了一下,效果很好,非常感谢,这已经困扰我好几天了,你的英雄!!!

以上是关于如何在 Wordpress 上显示登录用户的评论(仅)的主要内容,如果未能解决你的问题,请参考以下文章

通过 iPhone 在 Wordpress 网站上注册的响应

Wordpress 如何显示已登录用户已阅读帖子

在 wordpress 主页上显示评论

根据登录名显示用户名

如何快速删除 WordPress 外贸网站后台的垃圾评论

如果注释是由用户登录后如何显示删除按钮?