I’ve got a community that does not want users to hide their profile or online presence. I don’t see a site setting to disable this. Is there a way to hide the checkbox on the user profile with CSS? It doesn’t seem to have a thingy that identifies just that field.
Even if it doesn’t, you can target it using numeric offsets in the CSS, conceptually “hide the third thing in this <div>” or whatever.
The only risk is that if the list later changes size, your offset will be incorrect.
This should work so long as it stays the last item on that list:
.user-preferences .control-group.other .controls:last-of-type {
display: none;
}
Beyond that, you can also remove it altogether by modifying the template. All you need is to use this:
<script type="text/x-handlebars" data-template-name="preferences/interface">
</script>
and copy / paste the contents of this file in there after removing line #43
If you modify the template and it’s updated in core, you need to update your template as well.
Thanks for the instructions, but we feel it’s quite a clumsy solution. Especially for those who are using common branches: the fixes can essentially break anytime. Any chance of having a proper CSS target for hiding the setting? Or even better, an admin setting to disallow the feature?
Agreed, can we make sure there is a proper css target here in the markup @awesomerobot?
A few sections in user preferences were missing classes, so I’ve added them here
https://github.com/discourse/discourse/commit/9a3dd6b59af0a5fc22045f376b421cb4fd074aad
You’ll be able to simplify to
.pref-hide-profile {
display: none;
}
È possibile nelle community ospitate?
Sì, se vai su admin > personalizza > temi potrai aggiungere il CSS sopra al tuo tema per nascondere l’impostazione.
È possibile eseguire una query con Data Explorer per vedere quali utenti hanno questa impostazione abilitata, in altre parole, gli utenti che hanno nascosto il loro profilo pubblico?
vorrai qualcosa del genere:
SELECT user_id FROM user_options WHERE hide_profile_and_presence = true
