사용자 디렉터리에서 사용자 정의 필드를 검색할 수 있나요?

이 업데이트 감사합니다!

두 가지 질문으로 제 이해를 확인하고 싶습니다.

  • 사용자 디렉토리에서 사용자 정의 컬럼으로도 검색할 수 있나요? 예를 들어, “좋아하는 색” 프로필 필드에 대한 사용자의 답변으로 검색할 수 있나요?
  • 이 기능으로 인해 "자기소개"와 "웹사이트"와 같은 기본 사용자 필드도 디렉토리에서 검색 가능해지나요?

제대로 확인한 바로는, 검색이 사용자 이름에만 해당되는 것 같습니다. @HAWK 님이 이 부분을 확인해 주실 수 있을까요? (그 줄은 제가 게시글을 올린 뒤에 추가된 것입니다.)

사용자 디렉터리에서 사용자 정의 필드를 필터링/검색할 수 있는 기능을 추가해 주셨으면 합니다.

우리 커뮤니티는 WordPress/Discourse 하이브리드 구성으로 운영되고 있으며, WordPress 쪽에서 지도 기반 회원 디렉터리를 만들었습니다. 하지만 회원들이 진정으로 원하는 것은 관심사 기반 회원 디렉터리입니다.

WordPress 쪽에서 이를 구현하는 것은 정말 어렵습니다. 하지만 https://[YourDiscourseSite]/u에서 구현하는 것이라면 그렇게 많은 작업이 필요하지 않을 것 같습니다.

예를 들어, 현재 학습 목표, 거주했던 장소, 그리고 가장 인기 있는 관심사/열정/스킬과 같은 사용자 정의 필드가 있습니다. "커뮤니티 빌딩"이라는 공통 관심사나 "파이썬 코딩"이라는 학습 목표에 대해 키워드 검색을 할 수 있다면, 제 커뮤니티에 정말 훌륭한 기능이 될 것입니다.

@HAWK, 2022년 9월 @weallwegot의 답변에서 관련 언급을 보았습니다. 원하시는 방식이라면 기능 요청의 명세를 자세히 작성해 드리겠습니다.

참고로, 사용자 디렉터리의 향상된 검색 기능을 원하는 사람은 저만이 아닙니다.

이전에 릴리스 노트에서 관련 내용을 본 적이 있어서 거의 잊고 있었습니다.

2.7.0.beta8에서 사용자 정의 필드가 선택적으로 검색 가능하도록 변경된 것으로 보입니다. (아래 링크 참조)

이 기능이 커뮤니티에서 요구하는 조건을 충족하나요?

조엘, 안녕하세요 :slight_smile:

여기서 팀 구성원들을 언급할 필요는 없어요. 그들은 포럼을 읽거든요. 만약 특정 기능을 담당하는 사람들이 무언가를 놓친다면, 다른 사람들이 필요하다고 판단되면 정보를 전달해 줄 거예요 :slight_smile:

이번 경우에는 어쨌든 HAWK를 언급할 대상이 아니에요 (Sam Saffron and Sarah Hawk named Discourse Co-CEOs 참고).

사용자 디렉토리의 커스텀 필드 검색 기능을 테스트해 봤는데, 확실히 개선의 여지가 있습니다.

그 밖에도 특수 문자가 검색 결과가 반환되어야 할 때 반환되지 않는 경우가 있고, 레이아웃에 더 많은 열을 표시할 공간이 부족하다, 등등이 있습니다.

변경 사항이 필요하다면, 여기서부터 시작하여 더 깔끔하고 안정적인 기능으로 작업하는 것이 좋다고 생각합니다.

팀에 이 내용을 알렸어요! :v:

동의해 주셔서 기쁩니다. :slight_smile:

저는 순수하게 기능적인 관점에서 접근하고 있습니다. 예를 들어, 관심사 커스텀 필드에서 “커뮤니티 빌딩” 또는 학습 목표 "파이썬 코딩"에 대한 키워드 검색을 할 수 있는가 하는 것입니다.

UX에 대해서는 아마 저보다 여러분의 눈이 더 예리할 것입니다.

저라면 먼저 기능을 다루고, 그 다음 UX를 다룰 것입니다. 하지만 이건 저만의 생각일 뿐입니다. Discourse 개발자들에 대해 아시는 분이라면, 그들은 두 가지를 동시에 처리할 수 있을 것입니다. :grinning:

사용자 디렉토리에서 검색 가능한 커스텀 필드에 관한 향후 개발을 가속화하는 데 도움이 된다면, 더 많은 대화를 나누거나 기능 명세서(feature specs)를 작성하는 것도 마다하지 않겠습니다.

검색이 어디서 이루어질지, 일반적인 검색 페이지인지 아니면 사용자 디렉터리 페이지에서 별도로 이루어지는지 정확히 파악하기 어렵습니다.

사용자 디렉터리에서 이루어지는 경우라면, 다음과 같은 기능이 있기를 희망했습니다:

이상적으로는 Discourse의 핵심 기능으로 포함되기를 원하지만, 더 많은 사람들이 관심을 보인다면 이를 구현하기 위한 플러그인/테마를 만들 수 있을 것입니다.

짐, 내가 당신과 나 모두 하고 싶은 일을 하는 방법을 찾고 있을 때, 당신의 포럼 스레드도 봤어요. 코딩을 모르는 입장에서, 디스코어 코어에 해당 기능이 포함되는 것이 가장 합리적인 것 같아요. 왜냐하면 이건 모든 디스코어 사용자들에게 유용한 도구이기 때문이죠.

우리가 원하는 것을 구현하는 플러그인이나 테마 컴포넌트를 만들 경우, 디스코어 사용자의 대부분은 그런 옵션이 있다는 사실조차 모를 가능성이 큽니다.

아, 네, 동의합니다. Discourse 코어에 포함되는 것이 더 나을 것 같습니다. 사용자의 사용 방식에 따라 사용자 디렉토리가 Discourse의 가장 큰 기능 중 하나가 될 수 있다고 생각합니다. 예를 들어 비영리 단체에서 사용할 때, 이곳에서 소통을 하고, 회원 디렉토리를 관리하며, 원하면 구독 기능도 함께 사용할 수 있을 것 같습니다.

아마도 처음에는 플러그인/테마로 시작하여 나중에 코어에 통합되는 방식이 될 수 있겠죠.

이것이 현재 사용자 필드 검색의 코어 버전에서 작동하나요? 해당 릴리스의 커밋을 확인해 보니 작동할 것 같습니다. 현재 테스트할 수 있는 인스턴스가 손에 익지 않아서 확인이 어렵지만, 구체적으로 무엇이 부족하다고 느끼시는지 궁금합니다!

이렇게 묻는 이유는 2020년에 이 용도를 위해 플러그인을 만들었지만, 오픈소스로 공개할 여유가 없었기 때문입니다. 커뮤니티 내에서 콘텐츠 검색을 만드는 사용 사례(특히 여러 플랫폼에 걸친 경우)를 탐구하는 데 정말 관심이 많습니다 - 만약 이것이 당신의 사용 사례라면 알려주세요, 더 자세히 이야기하고 싶습니다!

어쨌든- 여기 플러그인이 있습니다. 코어 버전이 결국 어떻게 구현되었는지와 중복된 것 같아 80% 정도 확신하지만, 개발 과정에서 개선이나 협업이 가능하다면 공유하는 것이 좋겠다고 생각했습니다.

아니요, 제가 설명한 기능은 현재 Discourse 3.1.0.beta4 기준으로는 작동하지 않습니다.

좋네요!

우리는 실제로 커뮤니티를 위해 WordPress-Discourse 하이브리드를 사용하고 있습니다. 두 플랫폼을 하나의 도구로 검색할 수 있다면 정말 놀라운 일이겠지만, 단순히 Discourse에서 커스텀 필드를 검색할 수만 있어도 만족할 것입니다.

2020년에 만들었다고 하셨으니, 그 이후로 업데이트하지 않았을 것으로 예상했습니다. :grinning:

현재 Discourse 코어 버전과 호환되려면 플러그인에 추가 업데이트가 필요할 것 같습니다. 그리고 Discourse 개발진이 커스텀 필드 검색을 코어에 포함할 계획이 없다고 보므로, 당신 같은 분이 "제 플러그인이 작동합니다!"라고 말하기를 기다리고 있을 뿐입니다… 그리고 나서 테스트해 볼 것입니다. :slight_smile:

사용자 정의 필드로 검색할 수 있습니다. :+1: 설정에서 해당 필드를 검색 가능하도록 설정할 수 있습니다:

또한 디렉터리에서 해당 필드를 열로 포함할 수도 있습니다(이 경우 열 헤더를 클릭하여 정렬할 수 있습니다):

검색 예시:

해당 필드가 검색에 포함되려면 Jobs::ReindexSearch 백그라운드 작업이 실행될 때까지 기다려야 합니다 [1]. /sidekiq/scheduler 페이지에 접근 권한이 있다면 해당 페이지에서 작업을 트리거하여 속도를 높일 수 있습니다.


  1. 최대 1시간까지 걸릴 수 있습니다 ↩︎

이 지식이 저에게는 큰 퍼즐 조각이었어요! 이전에는 단순히 특정 커스텀 필드를 검색 가능하게 설정하고, /u 페이지에 표시를 위한 컬럼을 추가한 뒤 바로 검색을 수행했습니다. 그런데 Jobs::ReindexSearch 백그라운드 작업이 아직 실행되지 않았기 때문에 검색 결과가 전혀 반환되지 않았습니다.

이 핵심 정보를 알게 된 후, 커스텀 필드 검색을 어떻게 활용할지 실험해 볼 수 있었습니다. 안타깝게도 현재 기능에는 UX 문제가 너무 많아 포럼 회원들이 커스텀 필드 검색을 사용하도록 허용하기 어렵습니다.

Discourse 개발자, 플러그인 개발자, 또는 제가 무슨 말을 하려는지 궁금해하는 분들을 위해 이 문제를 보여드리고자 이 영상을 녹화했습니다.

영상을 볼 수 없거나 보고 싶지 않으시다면, 아래에 UX 문제점의 텍스트 하이라이트를 정리해 두었습니다.

  • 표시 옵션의 기본값은 '전체 기간(All Time)'이 아닌 다른 값(예: 주 또는 월)일 가능성이 높습니다. 따라서 검색자는 검색 결과가 지난 X주/월/분기/년 동안 활동한 사람들로 제한된다고 생각할 수 있습니다.
  • 검색창에는 "사용자 이름으로 필터링"이라는 텍스트가 있습니다. 이 텍스트만으로는 "키워드 검색에 사용하세요"라는 의미가 전달되지 않습니다.
  • 드롭다운 메뉴에는 "모든 그룹(all groups)"이라고 표시되어 있어, 검색의 주요 용도가 그룹 관련이 아니라 포럼 전체를 대상으로 한다는 사실을 모르고 그룹 관련 기능인 것으로 오해하는 것이 당연할 수 있습니다.
  • 개별 커스텀 필드로 검색할 수 없습니다. 모든 필드를 한 번에 검색하게 되며, 사용자 수와/또는 키워드에 따라 검색 결과가 너무 많이 반환될 수 있습니다.
  • 검색창에 입력하면 타이핑을 계속하는 동안 실시간으로 결과가 반환됩니다. 하지만 새 결과가 로드되고 커서가 입력 필드에서 벗어날 때까지의 대기 시간이 매우 짧습니다. 일부 사용자는 타이핑 속도가 느리거나 잠시 멈추기 때문에 이 부분은 좋지 않습니다.
  • 커스텀 필드를 보려면 오른쪽으로 스크롤해야 합니다. 그리고 대부분의 사용자가 포럼에 접근하는 모바일 화면에서는 현실적으로 불가능합니다.

디렉토리에 새로운 인터페이스가 필요하다고 늘 생각해 왔습니다. 이 부분에 대해 여기서 조금 언급한 적이 있어요:

이런 스타일의 UI를 여러분도 원하실지 궁금합니다.

또한 Locations 플러그인의 User Map 기능과 필터/검색을 결합하면 얼마나 유용할지도 생각해 봤습니다.