Ich erwäge, von XenForo zu migrieren, und je mehr ich erkunde, desto mehr erkenne ich, wie einfach alles ist, ohne simpel zu sein. Im Gegenteil, es ist mächtiger.
Ich muss einige Konfigurationen klären und vielleicht mentale Blockaden bezüglich der Funktionsweise von Gruppen, Abzeichen und Berechtigungen überwinden.
Ich werde auflisten, wie ich diese Funktionen in XenForo genutzt habe, und um Vorschläge bitten, wie dies in Discourse erreicht werden kann. Bitte weisen Sie mich in die richtige Richtung.
Gruppen als Berechtigungen
Ich hatte mehrere Benutzerguppen in einer Rangliste und die Berechtigungen basierten auf ihrer Seniorität. Ich sehe, dass Vertrauenstufen ein ähnliches und praktisches Konzept sind, aber habe ich die Flexibilität, eine benutzerdefinierte Berechtigungsgruppe zu erstellen? Zum Beispiel, wenn ich einem Member die Berechtigung entziehen möchte, Avatare hinzuzufügen, und ihn manuell in diese Gruppe einordne.
Gruppen als Initiationsritus
Die ersten X Beiträge eines neuen Mitglieds werden moderiert, bevor sie in eine Gruppe wechseln, die uneingeschränktes Posten erlaubt.
Gruppen als Rangtitel
Beispiel für Rangtitel basierend auf Aktivität:
- Soldat (50 Beiträge, 50 Likes)
- Serjeant (100 Beiträge, 100 Likes)
- Captain (100 Beiträge, 100 Likes, 1 Jahr in der Community)
- Kommandant (500 Beiträge, 500 Likes, 2 Jahre in der Community)
Benutzer steigen die Ränge anhand ihrer Aktivität auf und erhalten Titel, die neben ihrem Namen angezeigt werden. Ich sehe, dass wir Abzeichen haben, die dafür verwendet werden können und dass sie als individuelle Titel genutzt werden können. Es scheint jedoch eine Entweder/Oder-Entscheidung zu sein. Ich möchte sowohl den Rangtitel als auch den individuellen Titel sichtbar haben.
Für die Aktivitätskriterien denke ich, dass ich eine benutzerdefinierte SQL-Abfrage für die Abzeichen schreiben muss?
Gruppen als eingeschränkter Zugriff auf Kategorien
Das scheint für meine Bedürfnisse am besten geeignet zu sein. Ich passe nur die Berechtigungen “Sehen”, “Antworten”, “Erstellen” an.
Basierend auf meinen begrenzten Experimenten, denke ich, dass ich benutzerdefinierte Gruppen erstellen kann und diesen die oben genannten Berechtigungen auf Kategorie- oder Unterkategorieebene zuweisen kann. Bitte bestätigen Sie dies.
Wenn das stimmt, wie ermögliche ich automatische Mitgliedschaft in einer Gruppe basierend auf der Aktivität? Zum Beispiel, wenn jemand mehr als 100 Beiträge hat, erhält er automatischen Zugriff. Das ultimative Ziel ist es, den Zugriff auf die Kategorie zu gewähren.
Zweitens, wie entferne ich selektiv den Zugriff auf die Kategorie für Benutzer? Zum Beispiel, wenn ein Mitglied die Beitragskriterien erfüllt, aber sich als Störenfried verhält. Wie kann ich seinen Zugriff durch eine overriding verweigern?
Ich sehe, dass Discourse nur additive Berechtigungen hat und keine overwriting Verweigerungsrechte.
Gruppen als Abonnements
In Fortführung des oben Gesagten möchte ich, dass Benutzer Abonnements erwerben können, um Zugriff auf eine Gruppe zu erhalten, und wenn das Abonnement abläuft, werden sie aus der Gruppe entfernt (und somit vom Zugriff auf die Kategorie ausgeschlossen).
Aber wenn sie bereits aufgrund ihrer Aktivität (100 Beiträge) in einer anderen Gruppe sind, behalten sie den Zugang zur Kategorie, auch wenn ihr Abonnement abgelaufen ist. Additive Berechtigungen könnten hier helfen?