사용자 설정 또는 사용자 필드를 통해 게시물의 좋아요를 숨길 수 있도록 허용

이것은 커스텀 사용자 그룹에 대해 작동하는 것 같습니다:

<script type="text/discourse-plugin" version="0.8">
api.reopenWidget("post-menu", {
    menuItems() {
        const user = Discourse.User.current();
        if(user.primary_group_name.toLowerCase() === "no_likes") {
            return this.siteSettings.post_menu
                .split("|")
                .filter((item) => item !== "like");
        }
        return this.siteSettings.post_menu.split("|").filter(Boolean);
    },
});
</script>

하지만 사람들이 그룹에 가입하도록 하는 대신 커스텀 사용자 필드 불리언 값을 확인하는 방식으로 처리할 수 있는지 확인해 보고 싶습니다. 어떻게 해야 하는지 아이디어를 얻기 위해 다른 플러그인들을 살펴보고 있지만, 지금까지 시도한 모든 것이 작동하지 않았습니다.

ETA: 이것은 작동하는 것 같습니다. 다만 사용자 필드 불리언 값을 체크하거나 해제한 후 새로고침을 해야 합니다.

<script type="text/discourse-plugin" version="0.8">
api.reopenWidget("post-menu", {
    menuItems() {
        const user = Discourse.User.current();
        if(user.custom_fields['user_field_10']) {
            return this.siteSettings.post_menu
                .split("|")
                .filter((item) => item !== "like");
        }
        return this.siteSettings.post_menu.split("|").filter(Boolean);
    },
});
</script>
2개의 좋아요