首先,欢迎来到WPSE!
默认情况下,评论框不随post对象提供,您要查找的是comments_template
作用
只需将代码更改为以下内容即可:
<?php
$post_id = 104;
$queried_post = get_post($post_id);
$content = $queried_post->post_content;
$content = apply_filters(\'the_content\', $content);
$content = str_replace(\']]>\', \']]>\', $content);
echo $content;
comments_template();
?>
但如果我是正确的,这只适用于循环中的当前帖子。
查看function in wp-includes/comment-template.php
, 它使用global $post
和global $wp_query
变量。您需要修改该值,以便为正在显示的帖子显示评论模板。
您可以使用query_posts
而不是get_post
, 但一定要在之后重置查询:
$post_id = 104;
query_posts( array( \'p\' => $post_id ) );
while( have_posts() ) : the_post();
$content = apply_filters( \'the_content\', get_the_content() );
$content = str_replace( \']]>\', \']]>\', $content );
echo $content;
comments_template();
endwhile;
wp_reset_postdata(); // Don\'t forget!
我还没有测试过这个,但它应该可以工作。我还建议你读这本很棒的书
answer by Rarst 关于何时使用什么函数“获取帖子”。)