사용자 프로필에 사용자 정의 활동 탭을 만드는 방법?

플러그인 개발을 시도해 보고 있는데, 관리자 설정 페이지에 플러그인 설정이 표시되도록 하긴 했지만, Discourse UI에 UI 요소를 어떻게 표시해야 하는지 정확히 모르겠습니다.

관련 문서의 방향이나 기존 플러그인에서 참고할 수 있는 파일이 어떤 것들이 있는지 알려주시면 정말 감사하겠습니다.

PS:
전체적으로 다음 섹션들을 수정하려 합니다.

  1. 게시글에서 사용자명 아래 (토픽 메타데이터) 유저비트 영역에 사용자 정의 문자열 추가
  2. 게시글 컨트롤 영역에 폼을 여는 버튼 추가
  3. 사용자 프로필 활동 페이지에 사용자 정의 탭 추가
  4. 사용자 카드 및 사용자 요약 통계에 사용자 정의 요약 정보 추가

Introducing Discourse developer toolbar 를 사용하는 것을 권장합니다.

그 다음, 컴포넌트를 삽입할 수 있는 플러그인 아웃렛을 찾아보세요:

image

그런 다음 예를 들어 다음과 같은 것을 볼 수 있습니다:

이것에 대한 가이드는 다음과 같습니다:

플러그인 아웃렛을 요청할 수 있을까요?

사용자 이름 아래에 평판 등급을 삽입하고 싶습니다. 아니면 경험에 비추어 볼 때, 이를 삽입하기에 좋은 위치는 어디일까요? topic-map-expanded-after인가요?

물론입니다! Development 토픽을 만들 수 있습니다.

어떤 이유로인지 표시되지 않지만, 게시물 이름 주변에 아웃렛이 있습니다:

이전 답변

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/components/post/meta-data/poster-name.gjs#L119

glimmer 게시물 스트림 모드를 활성화해야 합니다:

그 후, 다음과 같이 표시됩니다:

즉, 이 아웃렛은 post-metadata__after인가요, 아니면 renderAfterWrapperOutlet("post-metadata")를 사용해야 하나요?

네, 그 옵션을 시도해 보는 것이 좋은 방법이겠습니다.

이 모드로 실험하는 것은 괜찮지만, 설정 설명에 있는 면책 조항을 반드시 읽어보시기 바랍니다. 이 모드는 아직 프로덕션 환경에서 사용하기에 준비가 되어 있지 않습니다. Meta에서도 아직 사용하지 않고 있습니다.

현재의 게시물 스트림 구현을 사용하려면 이전 decorateWidget API 또는 addPosterIcon API를 사용해야 합니다:

미안해, 데이비드. 새로운 기능에 너무 들떠서 아직 활발한 개발 단계라는 경고를 완전히 무시했어. :sweat_smile: 다음에는 조심할게.

이 작업을 위해 버튼을 렌더링하는 데 다음을 사용했습니다.

api.registerValueTransformer("post-menu-buttons", ({ value: dag, context })

이제 다른 컴포넌트를 사용할 때 오류 없이 모달을 열지 못해 막혀 있습니다.