web-dev-qa-db-ja.com

フォームなしでコメントページにコメントを表示する

これを使って、カテゴリページの投稿に対するコメントを表示できるようにします。

<?php
$wp_query->is_single = true;
comments_template();
$wp_query->is_single = false;
?>

しかし、私はコメントフォームを表示したくありません。コメントページにのみコメントを表示する方法はありますか?

1
JonnyPlow

get_comments() を使用して、投稿IDをパラメータとして渡します。その後、結果を通常のリストとして印刷します。 プラグインから 私は最近公開しました:

function t5_list_comments( $atts, $content = '' )
{
    '' !== $content && $content = wpautop( do_shortcode( $content ) );

    if ( ! isset ( $atts['post_id'] ) )
        return 'Please pass an argument for "post_id"';

    if ( ! $comments = get_comments( $atts ) )
        return 'No comments found for post ID '. esc_html( $atts['post_id'] );

    $out = $content . '<ul class="t5-comment-list">';
    foreach ( $comments as $comment )
    {
        $out .= sprintf(
            '<li>%1$s - %2$s %3$s</li>',
            get_comment_author_link( $comment->comment_ID ),
            get_comment_date( 'd.m.Y H:i', $comment->comment_ID ),
            wpautop( $comment->comment_content )
        );
    }

    return $out . '</ul>';
}

あなたはこのようにそれを使うことができます:

print t5_list_comments( array ( 'post_id' => get_the_ID() ) );
1
fuxia