Feature request: respect "Hide my public profile" user pref in user directory and Who's Online

I am setting up a community where members opt in to displaying their public profile in the forums. In my use case, if they do not opt in, they should not be visible at all to anyone else in the community except for staff. Either way, they should be able to see and message/chat staff, and vice versa.

There are two main places where I see them still showing up rather glaringly:

  1. user directory - their profile shows up on the list of registered users
  2. Who’s Online - their avatar shows up on the list of users who are currently online

In both of these places, you can even select their avatar and see the message and chat buttons to message them, even if there is a “this user’s public profile is hidden” message.

I’ve seen the Default hide presence but toggling that does not seem to have an effect on the user directory or Who’s Online plugin.

Have you investigated this admin setting?

Also, unless you’re gating content to a private category, could they just not sign up for the community? I know that sounds sacrilegious from a community manager. If they’re just looking to subscribe to categories, could they do that via RSS?

Or can their username be anonymized?

Hey thanks for the suggestion. Yes, that admin setting is enabled and is the default.

And yes, my goal is to allow users to join and only talk to me directly via their private category, chat and messages. So they should be able to see and talk to me and I should be able to see and talk to them. But the only other users that are visible and reachable in this way should be those who want to participate in the forums and have opted in to making their profile public.

I really like the new anonymous username feature, which is also the default as users sign up. If they are not so concerned and want to participate in the forums they can change it to their real name at signup or later via their user preferences.

The forums are invite only, members only, so subscribing via RSS is not an option. Good thinking, though.

I think you can disable the user directory using enable_user_directory. But of course that also impacts users that don’t want to be hidden.

How do you hide those users in search, in the lists of group members like https://meta.discourse.org/g/trust_level_0 and in the autocomplete for @mentions and PM recipients? Did you disable the badges so they won’t appear there?

I wonder if staged users interacting with their category or a group inbox where you are a member of would get you closer to hiding their existence. Staged users seem kind of built for hiding their existence.
Of course, they won’t see the forum interface, but if they do, they could, for example, like a post, which would make their username available to everyone. So signing up, turning the staged account into a full one might be the step opting in to be visible. (You can still try to make them less visible, but I guess you’d need a plugin to hide them everywhere)


Sorry I missed the “feature request” in the title; I was focused on the category.

Maybe it’s also worth quoting the reply you got a few years ago

Thanks, Moin! Wow, that topic is a blast from the past, from a past life when I was at the job before the one I had at Discourse! :rofl:

The concerns now are a bit different. Back then I was trying to set something up that I wouldn’t even recommend anymore.. a helpdesk group and a helpdesk user.

Now I am trying to create a private membership space where people by default are set up to just engage with me personally but can opt in to engage in the community. If they only want to engage with me personally then they shouldn’t have a presence and profile in the community at all. But if they do want to engage in the community then they should be able to create a profile and have it be visible.

I acknowledge my use case is perhaps rather unique, and that the above can’t be achieved perfectly due to the way discourse works. But I still think discourse could be tweaked in a few ways to at least not so prominently promote the members who don’t want to engage in the community.

I guess for now I will just turn off the “Who’s online” display of user avatars so at least their own avatar is not showing up there when they are browsing. That will give pause to those who prefer privacy! :grimacing:

I will also remove the user directory from the sidebar for now.

I’ve set the visibility of these groups so users can’t see them at all. They are confusing anyway.

I do keep the groups link in the sidebar (below the fold) because I want users who are in the same groups for private collaboration to be able to see each other.

Good catch. Not much to do here, unfortunately. Same thing with search. I’d prefer it if users who have not opted to show their public profile would not show up in these places either.

That’s a good thought.. but..

I do want them to see the forum interface, just not visible to anyone to me if they choose to not show their profile and engage in the forums.

How did you do that? On my forum, the visibility settings are not available for default groups. While the trust level groups aren’t shown in the group list, users can still see the group and its members by using the link. It’s the same here on meta. You can use the link I shared, but you won’t find it in the group directory.

But hiding the profile is not the same as hiding existence. I know some people don’t like that ‘account’ and ‘profile’ are separate tabs in the user preferences. But to me it makes sense. Hiding your profile hides the data in the profile tab, but not your account. People can see the username and avatar.
Just because I might want to hide, for example, what I entered in required custom fields, it doesn’t mean I don’t want to interact with the community.

If hiding the profile was the same as hiding existence, it wouldn’t make sense for many users currently using it. They do post, like, and interact with the community in other ways. Hiding them while doing that would result in a weird experience of interacting with ghosts.

I don’t recall how I removed the “all groups” pulldown from the user directory. The trust level groups also do not show up to regular users on the groups list or on their profile pages. That must be a setting somewhere.

I’m not seeking perfection here.

If they do, then I agree that will be an odd experience. I would then reach out to them to encourage them to change their profile so they are comfortable showing it.

Anyway, thanks for the discussion. I’ve shared my feedback and made some tweaks, and I think for now can leave things on my site as they are while I wait for feedback from my members!