我几乎完成了一个函数的编码,该函数允许contributers 当他们是帖子的作者来管理自己帖子(公文包)上留下的评论时,找不到插件来做这件事,所以不得不把自己弄脏。
其基本工作原理如下:
1) 用户在post\\u作者公文包上留下评论。
2) Post\\u作者通过电子邮件通知他们有一条评论供审核(此位由插件“通知评论”处理)。
3) Post\\u作者登录并转到他/她的公文包页面,评论中有两个链接,一个用于“删除”,另一个用于“批准”评论。
现在我可以开始删除了already published comments, 我的问题是我想show the unpublished comment along with the published comments (不希望访问wp admin dashboard的人发表温和的评论,我希望所有的评论都在前端完成),
有人知道我如何在前端向投稿者展示联合国批准的评论吗?
一旦完成,我将非常乐意分享代码和学分,如果其他人需要它。
提前致以问候和感谢
最合适的回答,由SO网友:kaiser 整理而成
简单:
function show_portfolio_comments( $post_ID )
{
// NOT approved
$comments_unapproved = get_comments( array( \'status\' => \'hold\', \'post_id\' => $post_ID ) );
foreach ( $comments_unapproved as $comments)
{
if ( current_user_can( \'edit_published_posts\' ) // maybe you\'ll have to switch to some other cap
{
?>
<div class="comment">
<h4>Unapproved Comments on your portfolio</h4>
<div class="comment-author"><?php echo $comment->comment_author; ?></div>
<div class="comment-content"><?php echo $comment->comment_content; ?></div>
</div>
<?php
} // endif; - current_user_can( \'edit_published_posts\' )
}
// ALREADY approved
$comments_approved = get_comments( array( \'status\' => \'approve\', \'post_id\' => $post_ID ) );
foreach ( $comments_approved as $comments)
{
?>
<div class="comment">
<?php if ( current_user_can( \'edit_published_post\' ) { ?>
<h4>Approved Comments on your portfolio</h4>
<?php } // endif; - current_user_can( \'edit_published_posts\' ) ?>
<div class="comment-author"><?php echo $comment->comment_author; ?></div>
<div class="comment-content"><?php echo $comment->comment_content; ?></div>
</div>
<?php
}
}
模板标记:
// Use it in your template like this & don\'t forget to push the post ID into it:
$post_ID = $GLOBALS[\'post\']->ID;
// or:
global $post;
$post_ID = $post->ID;
// or:
$post_ID = get_the_ID();
// or:
$post_ID = get_queried_object_id();
show_portfolio_comments( $post_ID );