有很多关于更改帖子类别的信息,在评论发布后,没有任何与更改帖子类别有关的信息。
我希望我的网站的某个部分只显示包含评论的帖子。
我已经尝试添加我在本网站上找到的代码,用于更改标签,在十几个不同的地方
<?php wp_set_object_terms( '<?php the_ID(); ?>', 'new', 'category', 'true' ); ?>
我已尝试在
中使用它<?php if ( have_comments() ) : ?>
<?php endif; ?>
我尝试过在互联网上使用wp_insert_comment和comment_post与其他代码挂钩,但没有成功。
我想在发表评论后向帖子添加标签可以实现同样的目的,但我不知道从哪里开始。
有没有这里的专家曾经看到一个单独的区域的wordpress博客只显示带评论的帖子?我不是编码员,我可能会在不知不觉的情况下尝试不可能。
任何帮助表示感谢。
答案 0 :(得分:1)
您可以使用comment_post
动作挂钩。此函数不能将post ID或$ post对象作为参数,因此您必须添加global $post;
才能访问它。
来自wp-includes/comment.php
:
do_action('comment_post', $comment_ID, $commentdata['comment_approved']);
使用示例
//in functions.php
add_action( 'comment_post', 'so_custom_comment_post' );
function so_custom_comment_post(){
global $post;
//Be sure the term 'new' is already available
wp_set_object_terms( $post->ID, 'new', 'category', true );
}
希望它有所帮助!如果你遇到困难,请告诉我。
答案 1 :(得分:0)
<?php
$args = array('post_type' => 'post');
$post_obj = new WP_Query($args);
while($post_obj->have_posts() ) : $post_obj->the_post();
//display posts with comments
$comments = get_comments(array(
'post_id' => $post->ID));
foreach($comments as $comment) {
echo '<li>'.the_permalink().'</li>';
}
endwhile;
?>