개인 메시지 기능이 비활성화되어 있어 개인 메시지를 받을 수 없음

매우 구체적인 사용 사례를 가지고 계신 것 같습니다. 사용자가 메시지를 하나도 없거나, 위에서 논의된 설정에 따라 메시지를 보낼 권한이 없는 경우 아이콘을 표시하는 것은 의미가 없습니다. 또한 사용자가 메시지를 가지고 있는지 확인하고 그에 따라 버튼을 표시하는 것은 다소 비용이 듭니다. 스태프에게 버튼이 표시되지 않는 문제는 수정하겠지만, 아이콘을 무조건적으로 표시하지는 않을 것입니다.

해당 사용 사례를 위해 테마를 커스터마이징해야 합니다. 사용자도 아이콘을 보게 하려면 테마의 header 섹션에 아래 내용을 추가할 수 있습니다.

<script type="text/discourse-plugin"
        version="0.8">
  api.addUserMenuGlyph(widget => {
   if (!widget.currentUser || widget.currentUser.staff) return

    const glyph = {
     action: "quickAccess",
     actionParam: "messages",
     label: "user.private_messages",
     className: "user-pms-link",
     icon: "envelope",
     href: `${widget.attrs.path}/messages`
    };
    return glyph;
});
</script>

이렇게 하면 해당 설정이 체크되어 있지 않더라도 사용자에게 아이콘이 표시됩니다. 다만, 이전에 언급한 수정 사항을 배포한 후 동일한 항목에 대해 아이콘이 두 개 표시되지 않도록 스태프는 제외됩니다.

5개의 좋아요