이 가이드는 Discourse의 고급 주제 필터링 시스템, 완전한 쿼리 언어 구문, 필터 옵션, 그리고
/filter경로를 효과적으로 사용하는 방법에 대해 설명합니다.
필요한 사용자 수준: 모든 사용자
Discourse 주제 필터 쿼리 언어 사용
Discourse의 주제 필터는 여러 기준에 기반하여 주제를 찾는 데 사용할 수 있는 강력한 쿼리 언어를 제공합니다. 이 고급 검색 인터페이스를 사용하면 필터를 조합하고, 결과를 정렬하며, 포럼의 어떤 콘텐츠에 대해서든 정확한 쿼리를 만들 수 있습니다.
필터 접근 방법
주제 필터에 접근하는 방법은 두 가지입니다:
직접 URL 접근:
Discourse 인스턴스에서 /filter 경로로 이동합니다 (예: https://meta.discourse.org/filter)
사이드바 내비게이션:
사이드바에서 "더 보기(More)"를 클릭한 다음 필터 옵션을 선택합니다
필터 인터페이스에는 입력하는 동안 사용 가능한 필터와 값을 제안하는 지능형 자동 완성 시스템이 포함되어 있습니다.
기본 쿼리 구문
필터는 다음 형식의 구조화된 구문을 사용합니다:
filter-name:value
여러 필터 조합:
category:support status:open created-after:2023-01-01
일반 검색어 포함:
category:support ssl certificate error
이것은 "ssl certificate error"라는 단어가 포함된 “support” 카테고리의 주제를 검색합니다.
카테고리 필터
category: (별칭: categories:)
카테고리로 주제를 필터링합니다
기본 사용법:
category:support
category:dev,support # dev 또는 support 카테고리의 주제
category:documentation:admins # documentation의 admins 하위 카테고리의 주제
고급 접두사:
=- 하위 카테고리가 없는 카테고리:=category:general-- 카테고리 제외:-category:off-topic-=- 하위 카테고리가 없는 카테고리 제외:-=category:meta
예시:
category:bug,feature # bug 또는 feature 카테고리 포함 (하위 카테고리 포함)
=category:bug,feature # bug 또는 feature 카테고리 포함 (하위 카테고리 제외)
-category:bug,feature # bug 또는 feature 카테고리 제외 (하위 카테고리 포함)
-=category:bug,feature # bug 또는 feature 카테고리 제외 (하위 카테고리 제외)
태그 필터
tag: (별칭: tags:)
태그로 주제를 필터링합니다 (태깅이 활성화되어 있어야 함)
기본 사용법:
tag:bug
tag:feature,enhancement # feature 또는 enhancement 태그가 있는 주제
tag:bug+urgent # bug AND urgent 태그가 모두 있는 주제
제외:
-tag:solved # solved 태그가 있는 주제 제외
-tag:bug+urgent # bug와 urgent 태그가 모두 있는 주제 제외
-tag:bug,urgent # bug 또는 urgent 태그가 있는 주제 제외
tag_group:
태그 그룹으로 필터링합니다
기본 사용법:
tag_group:moderation
tag_group:"tag group name" # 공백이나 특수 문자가 있는 이름은 따옴표 사용
-tag_group:staff-only # staff-only 그룹의 태그가 있는 주제 제외
날짜 필터
모든 날짜 필터는 특정 날짜(YYYY-MM-DD)와 상대적 일수를 모두 지원합니다:
활동 날짜
activity-before:- 마지막 활동이 해당 날짜 이전인 주제activity-after:- 마지막 활동이 해당 날짜 이후인 주제
생성 날짜
created-before:- 해당 날짜 이전에 생성된 주제created-after:- 해당 날짜 이후에 생성된 주제
최신 게시물 날짜
latest-post-before:- 최신 게시물이 해당 날짜 이전인 주제latest-post-after:- 최신 게시물이 해당 날짜 이후인 주제
날짜 형식 예시:
created-after:2023-12-25 # 특정 날짜 (YYYY-MM-DD)
created-after:30 # 30일 전
created-after:1 # 어제
created-after:0 # 오늘
빠른 제안:
1- 어제7- 지난주30- 지난 달365- 지난 해
사용자 필터
created-by:
주제 작성자(사용자 이름 또는 그룹 이름)로 필터링합니다
기본 사용법:
created-by:username
created-by:user1,user2 # user1 또는 user2가 작성한 주제
created-by:@username # @ 접두사는 선택 사항입니다
created-by:me
created-by:staff # "staff" 그룹의 구성원이 생성한 주제
users: (별칭: user:)
특정 사용자가 참여(주제에 게시)한 주제를 필터링합니다
기본 사용법:
users:username # username이 게시한 주제
users:user1,user2 # user1 또는 user2가 게시한 주제
users:user1+user2 # user1 AND user2가 모두 게시한 주제
제외:
-users:username # username이 게시하지 않은 주제
-users:user1,user2 # user1도 user2도 게시하지 않은 주제
-users:user1+user2 # user1 또는 user2 중 적어도 한 명이 게시하지 않은 주제
group: (별칭: groups:)
특정 그룹의 구성원이 참여(주제에 게시)한 주제를 필터링합니다
기본 사용법:
group:staff # staff 그룹의 구성원이 게시한 주제
group:staff,moderators # staff 또는 moderators의 구성원이 게시한 주제
group:staff+moderators # staff AND moderators의 구성원이 모두 게시한 주제
개인 필터 (인증된 사용자만 가능)
in:
주제에 대한 개인적인 관계로 필터링합니다
사용 가능한 옵션:
in:pinned- 사용자에게 고정된 주제in:bookmarked- 사용자가 북마크한 주제in:watching- 사용자가 감시 중인 주제in:tracking- 사용자가 추적 중인 주제in:muted- 사용자가 음소거한 주제in:normal- 일반 알림 수준의 주제in:watching_first_post- 첫 게시물을 감시하는 카테고리 또는 태그의 주제in:new- 새로운 활동이 있는 주제 (보지 못한 새로운 주제 + 읽지 않은 답변)in:new-topics- 아직 보지 못한 새로운 주제in:new-replies- 읽지 않은 답변이 있는 주제in:unseen- 아직 확인하지 않은 주제
예시:
in:bookmarked category:support
in:watching,tracking # 감시 중이거나 추적 중인 주제
in:unseen category:welcome # welcome 카테고리의 미확인 주제
in:new order:created # 모든 새로운 활동, 생성 날짜순 정렬
수치 필터
좋아요 필터
likes-min:- 모든 게시물 전체의 최소 총 좋아요 수likes-max:- 모든 게시물 전체의 최대 총 좋아요 수likes-op-min:- 시작 게시물에 대한 최소 좋아요 수likes-op-max:- 시작 게시물에 대한 최대 좋아요 수
게시물 수 필터
posts-min:- 최소 게시물 수posts-max:- 최대 게시물 수
참여자 필터
posters-min:- 최소 참여자 수posters-max:- 최대 참여자 수
조회수 필터
views-min:- 최소 조회수views-max:- 최대 조회수
예시:
likes-min:10 # 좋아요가 최소 10개인 주제
posts-min:5 posts-max:20 # 게시물이 5~20개인 주제
views-min:100 likes-op-min:5 # 참여도가 높은 인기 주제
상태 필터
status:
주제 상태로 필터링합니다
사용 가능한 상태:
status:open- 열린 주제 (닫거나 아카이브되지 않음)status:closed- 닫힌 주제status:archived- 아카이브된 주제status:listed- 목록에 표시(가시적)된 주제status:unlisted- 목록에 표시되지 않는 주제status:deleted- 삭제된 주제 (권한 필요)status:public- 공개 주제 (제한되지 않은 카테고리)
플러그인 특정 상태:
status:solved- 해결된 주제 (Solved 플러그인 사용 시)status:unsolved- 해결되지 않은 주제 (Solved 플러그인 사용 시)
예시:
status:open category:support
status:closed created-after:30
로케일 필터
locale:
로케일로 주제를 필터링합니다
기본 사용법:
locale:en # 영어 주제
locale:en,fr # 영어 또는 프랑스어 주제
-locale:fr # 프랑스어 주제 제외
정렬 옵션
order:
다양한 기준으로 결과를 정렬합니다
사용 가능한 정렬:
order:activity- 최신 활동 (기본값, 내림차순)order:activity-asc- 가장 오래된 활동부터order:created- 생성 날짜 (최신부터)order:created-asc- 가장 오래된부터order:latest-post- 최신 게시물 날짜order:latest-post-asc- 가장 오래된 최신 게시물order:likes- 모든 게시물 전체의 가장 많은 좋아요order:likes-asc- 가장 적은 좋아요order:likes-op- 시작 게시물의 가장 많은 좋아요order:likes-op-asc- 시작 게시물의 가장 적은 좋아요order:posters- 가장 많은 참여자order:posters-asc- 가장 적은 참여자order:title- 제목 알파벳순 (Z→A)order:title-asc- 제목 알파벳순 (A→Z)order:views- 가장 많은 조회수order:views-asc- 가장 적은 조회수order:hot- 가장 높은 핫 점수order:hot-asc- 가장 낮은 핫 점수order:category- 카테고리 이름order:category-asc- 카테고리 이름 역순order:read- 마지막 읽은 날짜 (인증된 사용자)order:read-asc- 가장 오래 읽은 것부터
고급 예시
인기 있는 최근 토론 찾기:
created-after:7 likes-min:10 order:likes
관심을 필요로 하는 지원 주제:
category:support status:open posts-max:3 created-after:7
사용자가 북마크한 개발 주제:
category:dev in:bookmarked order:activity
해결된 버그 보고서 제외:
category:bug -tag:solved status:open order:created
특정 사용자의 높은 참여도 주제:
created-by:admin,moderator likes-min:5 views-min:100
최근 목록 미표시 주제 (스태프만 가능):
status:unlisted created-after:30 order:created
자동 완성 기능
필터 입력창은 지능형 제안을 제공합니다:
- 필터 제안 - 입력하는 동안 사용 가능한 필터 표시
- 카테고리 자동 완성 - 이름 또는 슬러그로 카테고리 제안
- 태그 자동 완성 - 게시물 수와 함께 태그 제안
- 사용자 이름 자동 완성 - 표시 이름과 함께 사용자 이름 제안
- 날짜 제안 - 빠른 날짜 옵션 제공 (어제, 지난주 등)
- 접두사 지원 - 카테고리와 태그의 접두사 옵션 표시
팁 및 모범 사례
- 자동 완성 사용 - 필터 인터페이스는 입력하는 동안 지능형 제안을 제공합니다
- 필터 조합 - 정확한 결과를 위해 다양한 필터 유형을 혼합합니다
- 필터 URL 공유 - 필터 URL은 공유할 수 있습니다 - URL을 복사하여 검색을 공유하세요
- 사이드바에 유용한 필터 추가 - 필터 URL을 사이드바에 추가하여 쉽게 접근할 수 있습니다
- 제외 사용 - 원치 않는 결과를 제외하려면
-접두사를 사용합니다 - 날짜 단축키 - 상대 날짜에 숫자를 사용합니다 (30 = 30일 전)
- 키보드 내비게이션 - 화살표 키로 제안 사항을 탐색하고, Tab/Enter로 선택합니다
- 특수 문자 따옴표 처리 - 공백이나 특수 문자가 있는 태그 그룹 이름에는 따옴표를 사용합니다
사용자 정의 사이드바 링크 생성
사이드바에 필터 링크를 사용자 정의 링크로 추가할 수 있습니다:
- 사이드바 설정으로 이동합니다
/filter?q=category:support status:open과 같은 필터 URL을 가진 사용자 정의 링크를 추가합니다- "열린 지원 주제"와 같이 설명적인 이름을 부여합니다
기술적 참고 사항
- 필터는 키워드 검색과 필터를 결합하여 전체 텍스트 검색을 사용합니다
- 키워드 검색에는 최소 검색어 길이가 적용됩니다
- 결과는 권한에 따라 조정됩니다 - 접근할 수 있는 주제만 볼 수 있습니다
- 성능을 위해 필터 쿼리는 서버 측에서 처리됩니다
- 이 기능은 사용자 정의 필터를 위한 플러그인 확장을 지원합니다
