검색 필터 - 주제만 / 게시물만

대부분의 사용 사례에서는 일반 검색으로 충분할 수 있다는 점은 이해합니다. 하지만 일부 사용자들로부터 검색 시 결과를 필터링할 수 있는 기능이 필요하다는 요청을 받았습니다. 예를 들어, 응답만 표시하거나 주제만 표시하는 기능(주제에 대한 첫 번째 응답으로 해석될 것 같습니다)이 그것입니다.

이 기능은 테마 컴포넌트로도 구현할 수 있을 것 같지만, 제가 뭘 놓치고 있는 건 아닌지 먼저 여쭤보고 싶었습니다.

감사합니다.

1개의 좋아요

현재 모든 토픽과 게시물을 검색할 수 있습니다.

토픽 제목의 검색 결과는 제외하고 이 기능을 사용하길 원하시는 건가요?

1개의 좋아요

필터링을 위한 고급 검색 기능을 확인해 보셨나요?

토픽과 게시물에서 검색이 가능하다는 것은 알고 있습니다. 보고되는 문제는 검색 결과에 토픽과 게시물이 섞여 있다는 것이며, 현재처럼 둘 다 표시하는 것 외에도 “토픽만” 또는 “게시물만” 표시하도록 Discourse에 지시할 수 있는 방법이 있으면 좋겠다는 것입니다.

검색 결과가 무한 스크롤 인터페이스로 표시되므로, 사용자가 이미 알고 있는 내용(즉, 검색 결과에 없는 항목)을 필터링할 수 있다면 노이즈를 줄일 수 있습니다.

특정 게시물을 찾고 있다는 것을 알고 있다면, 원하는 것을 찾기 위해 토픽까지 계속 스크롤할 이유는 없습니다.

이제 명확해졌기를 바랍니다.

1개의 좋아요

Discourse에서 “topic”(토픽)은 모든 메시지를 의미합니다. 첫 번째 게시물은 원본 게시물(OP) 또는 첫 번째 게시물이라고 합니다.

그러나 버튼 New Topic을 클릭하면 처음에는 1개의 게시물로 구성된 토픽이 생성되고, 답글이 쌓이면 게시물이 더 추가되므로 혼동될 수 있다는 점은 이해합니다.

이 점을 고려할 때,

은 "토픽의 첫 번째 게시물만"을 의미하며, 실제로 이 기능은 in:first 필터를 통해 사용할 수 있습니다:

첫 번째 게시물을 제외한 모든 게시물에서 검색하는 것은 불가능하며, 현재 용어, 필터, 카테고리 또는 기타 요소를 제외하는 연산자가 없습니다.

2개의 좋아요

@Canapin님의 통찰력에 감사합니다.

기본적으로 토픽만 반환한다는 명세에 대해 감사드립니다. 그 부분을 완전히 놓치고 있었네요 :blush:

대안으로, 검색 결과가 실제 결과를 반환할 때 URL을 구성하는데, URL 형식이 게시물을 지정하는 항목에는 단순히 style="display:none"을 추가하고, 반대로 토픽에는 반대 처리를 하는 컴포넌트/플러그인을 만들 수 있을까요?

플러그인인 경우, 검색 결과 어딘가에 “이것은 첫 번째 답변입니다” 또는 "이것은 첫 번째 답변이 아닙니다"를 결정하는 함수가 있을 것입니다. 특정하게 추가된 새로운 필터를 기준으로 해당 결과를 배열에 추가하는 것을 차단하고 건너뛸 수 있을지도 모르겠습니다.

해당 컨트롤러/모델이 포함된 파일이 무엇인지 아신다면, 여기서 링크를 공유해 주시겠어요? 저도 한번 확인해 보고 싶습니다. :slight_smile:

1개의 좋아요

나에게는 낯설고 신비롭고 무서운 세계이지만, 코드를 살펴보면 컨트롤러는 여기 있습니다:

검색 필터는 여기 있는 것 같습니다:

그리고 Discourse Assign이 검색에 필터를 추가하는 방식을 살펴보는 것도 흥미로울 것입니다:

2개의 좋아요

@Canapin 감사합니다. 요즘 일이 정말 바빠서, 조금 여유가 생겼을 때 어떤 작업을 할 수 있을지 정보를 모으고 있어요. 몇 주 후에 다시 확인해볼게요 :slight_smile:

1개의 좋아요