J’essaie de savoir s’il est possible de personnaliser le CSS en fonction des rôles ou des groupes d’utilisateurs ?
Par exemple, je veux masquer le nombre de statistiques de sujets sur la page principale, j’ai pu le faire relativement facilement en ajoutant
.topics {
display: none;
au CSS du thème.
Cependant, ce que je veux vraiment faire, c’est masquer cela pour tout le monde sauf pour les administrateurs et les modérateurs. Je veux que cela s’affiche pour le groupe des administrateurs et le groupe des modérateurs.
Est-il possible de déterminer si l’utilisateur appartient à un groupe à des fins de personnalisation CSS ?
Pour les administrateurs et les modérateurs, une classe staff est ajoutée au corps du document par défaut. Donc, si c’est tout ce dont vous avez besoin, vous pouvez simplement utiliser body.staff dès la sortie de la boîte.
Merci, c’est super. Pour référence, quels autres groupes CSS peuvent être adressés nativement en CSS (autre que staff) ? Y a-t-il quelque chose pour les utilisateurs anonymes (non connectés) ou les administrateurs (sans modérateurs) ?
.anon représente tous les utilisateurs anonymes. Je ne pense pas que .admins ou .moderators fonctionne à moins d’installer le composant. Ce n’est pas beaucoup de code et peut facilement être ajouté à un autre composant. Je fais cela avec mes composants de thème associés afin que les gens n’aient pas à installer les deux. Ce qui est génial avec ce composant CSS de groupe, c’est qu’il permet également de cibler les niveaux de confiance.
Vous pouvez voir comment j’utilise .staff et .anon dans l’un de mes composants de thème ici.
Génial, merci. Je me demande si la page du composant de thème peut lister l’ensemble des noms standard de groupe/rôle/confiance qui peuvent être accédés (qui sont intégrés à Discourse), ce serait une excellente référence prête à l’emploi. Ou si vous pouvez les lister ici si vous les connaissez.
Si vous installez le composant css de groupe, vous pouvez utiliser tous les groupes et niveaux de confiance par défaut sur la page groupes-utilisateurs-admin ainsi que tous les groupes personnalisés que vous créez.