自己解決しましたのでお知らせします。
以下のコードを「functions.php」に実装するだけです。
// FAQとカテゴリを紐付ける
function searchJoin($join) {
if ( is_search() ) {
$join = $join . "INNER JOIN wp_term_relationships ON (wp_term_relationships.object_id = wp_posts.ID)";
}
return $join;
}
add_filter('posts_join', 'searchJoin');
// 該当カテゴリを検索条件から除外する
function searchFilter($where, $query) {
if ( !is_admin() && $query->is_main_query() && $query->is_search() ) {
$excl_list = "除外するTopic(カテゴリ)ID (複数の場合はカンマで区切る)";
$where = $where . "AND (wp_term_relationships.term_taxonomy_id NOT IN ( " . $excl_list . " )) AND (wp_posts.post_type IN ( 'question' ))";
}
return $where;
}
add_filter('posts_search', 'searchFilter', 10, 2);
ご参考になれば幸いです。