「$comments =」というのは、書かれていなかったのですが、
すみません書き忘れです$commentsがないと配列へ代入がされないのでループできません・・・
とりあえず絞り込みの入り口に立ったというわけなので
前提としてコメントIDとカテゴリIDは別物です
今すぐにはちょっと出かけ先で返事が出来ないのですが
絞り込みたいカテゴリに属するコメントのIDを取得して
そのIDで絞り込みをかけるのが手順となります
<?php
//除外したいカテゴリID(array(n, x, y)のように配列にすることで複数選択可)
$foundCat = 14;
//除外したいカテゴリのページ情報を配列で取得
$bounds_posts = get_posts( array( 'category'=> $foundCat );
//各ページループしコメントを抽出する
foreach($bounds_posts as $post_com):
//除外するコメント情報
$byeCom = get_approved_comments( $post_com => ID );
//除外ページ単位のコメント配列
foreach($byeCom as $comment):
//コメントIDを取得
$comID = $comment => comment_ID;
//除外記号の"-"を付加して配列に保存
$bounds_comID[] = "-".$comID;
endforeach;
endforeach;
//コメント情報取得
if(count($bounds_comID) != 0){
$comments = get_comments(array('status' => 'approve' ,'number' => 5, 'ID' => $bounds_comID));
}else{
$comments = get_comments(array('status' => 'approve' ,'number' => 5));
}
//取得したコメント分ループ開始
foreach($comments as $comment):
//コメントのIDを取得する
$post = get_post($comment->comment_post_ID);
/******************** ココから内容表示 ********************/
?>
<!--コメントされたページへのリンクとタイトル-->
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>へのコメント
<!--コメントしたユーザー情報とコメントした月日-->
(<?php comment_author_link(); ?>より[<?php comment_date('m/d'); ?>])
<!--コメント内容-->
<?php comment_text(); ?></li>
<?php
/******************** ココまで内容表示 ********************/
//ループ終了
endforeach;
?>
未検証ですがこんな感じでは無いですか?
実を言うとget_approved_commentsと言う命令は
ページIDを渡すとそのページのコメント一覧を取得する命令です
複数カテゴリがあった場合のことを考えて一度噛ませてるんですが
一つのみならば除外したいカテゴリIDに”-”を付けることで
そのままget_approved_commentsを使用して出力する事も可能なはずです
勿論上記コードでも可能な筈ですが・・・
追記:
<dl class="comments_li">
<dt><a href="<?php the_permalink(); ?>"><?php the_title(); ?>に<?php comment_author_link(); ?>より</a></dt>
<?php endforeach; ?>
</dl>
と書かれていたのですがdlクラスにループ終了タグを巻き込んではだめですよ?
行うなら
<dl class="comments_li">
<dt><a href="<?php the_permalink(); ?>"><?php the_title(); ?>に<?php comment_author_link(); ?>より</a></dt>
</dl>
<?php endforeach; ?>
・・・です