Bonjour @jrgong,
Ce n’est pas difficile à réaliser via un plugin, comme vous le savez probablement bien.
En gros, vous pourriez créer une liste de membres du personnel (par e-mail, nom d’utilisateur, etc.) en tant que paramètre global, de manière similaire à la façon dont Discourse définit les développeurs par adresse e-mail.
Ensuite, vous pourriez utiliser ce GlobalSettting dans certaines patches pour autoriser les deux cas d’usage qui vous intéressent.
Le premier de vos cas d’usage : personnaliser les thèmes en tant que membre du personnel, est relativement simple à implémenter via un monkey patch du cœur, je pense.
Pour le deuxième cas d’usage, avec peu de travail, vous pourriez forker ce plugin et redessiner la contrainte d’accès aux routes dans ce plugin (et tout autre changement nécessaire) :
Puisque la contrainte pour le plugin de publicité est intégrée au plugin, il est judicieux de modifier ce code pour permettre à votre personnel « autorisé » d’accéder aux parties de ce plugin que vous souhaitez autoriser, en fonction de votre propre RBAC.
Autrement dit, les deux exigences que vous souhaitez sont réalisables si vous êtes prêt à écrire le code ; ou bien, bien sûr, vous pouvez demander à l’un des développeurs de plugins Discourse experts de vous aider dans Marketplace.