Ich versuche herauszufinden, wie man es ermöglicht, dass Benutzer Unterforen erstellen können, die wie Slack-Kanäle funktionieren.
Eine der Vorschläge war die Verwendung von Tags. Ein Benutzer würde also ein Tag erstellen (oder eine von mir entwickelte App würde dies über die API erledigen), und die Seite dieses Tags würde wie die Seite des Unterforums funktionieren.
Die Frage ist dann, wie man sicherstellt, dass nur Mitglieder des Unterforums in diesem Unterforum posten können. Mit anderen Worten: Nur Mitglieder dieses Unterforums dürften das Tag des Unterforums mit ihren Beiträgen verknüpfen.
Gibt es eine Möglichkeit, dies mit „benutzerdefinierten Benutzerfeldern
Danke für die Antworten, Leute. Ich stimme zu, dass Kategorien der einfachere Weg dafür zu sein scheinen. Aber das wären Unterforen, die Benutzer in großer Zahl erstellen könnten. Es könnten Hunderte oder sogar mehr sein (die Unterforen sind ein zentraler Bestandteil der App und werden mit wachsender Nutzerbasis ebenfalls wachsen).
Mir wurde gesagt, dass das Erstellen von Hunderten oder Tausenden von Kategorien ein großes Problem darstellen wird, sodass ich nach anderen Lösungen suchen sollte. Habt ihr weitere Vorschläge? Ich bin bereit, eine separate App zu entwickeln, die mit der API interagiert. Das Wichtigste, was ich von Discourse brauche, ist die hervorragende Funktionalität für Beiträge, Antworten und Tags.
Was du erstellen möchtest, entspricht nicht dem Ziel von Discourse.
Du suchst eine Plattform wie Reddit oder Discord, auf der Nutzer Subreddits oder Server erstellen können, die sie „besitzen“, während du die volle Kontrolle und Monetarisierung der Plattform behältst.
Discourse zielt genau auf das Gegenteil ab: Jeder Subreddit/Server/Guild soll seine eigene Website sein, die eigenen Daten besitzt und unter einer eigenen URL lebt.
Obwohl man ein Open-Source-Projekt stark anpassen kann, empfehle ich dir, etwas anderes zu verwenden, das deinem Vorhaben näher kommt.
Ich verstehe, dass dies nicht der typische Anwendungsfall ist, aber ich würde definitiv einen Weg finden wollen, dies mit Discourse umzusetzen, angesichts dessen, wie großartig Discourse ist. Und ich komme bereits ziemlich nah heran – ich erstelle über die API ein Tag und leite Benutzer auf die Tag-Seite weiter, die wie eine Unterforum-Seite funktioniert. Der entscheidende Teil, der mir noch fehlt, ist die Möglichkeit, Benutzer einzuschränken, die mit diesem Tag posten dürfen.
Discord wäre für diese Zwecke nicht geeignet, wegen der Einschränkungen bei der Integration mit Apps. Ich bin nicht vertraut damit, wie ich Reddit mit einer App integrieren könnte.
Meinen Sie damit, dass ich dies tatsächlich mit Reddit umsetzen könnte, oder meinten Sie nur, dass dies die Art von Funktionalität ist, die ich im Sinn habe?
Wie auch immer, der Hauptvorteil von Discourse ist meiner Ansicht nach, dass es ein Forum und kein Chat ist. Und genau diese forumähnlichen Funktionen sind es, die ich hier brauche. Ich habe noch keine Alternativen zu Discourse gefunden, die in dieser Hinsicht funktionieren könnten, aber ich bin definitiv offen für Vorschläge.
Ich habe diese gesehen. Ein Unterschied hier ist, dass ich gerne eine völlig separate App entwickeln würde, die dann mit der Discourse-API interagiert, um dem Nutzer das Erlebnis zu bieten, eine Untergruppe zu erstellen. Ich könnte also die Untergruppe selbst in der separaten App erstellen, Mitglieder damit verknüpfen usw.
Ich würde jedoch gerne weiterhin die Frontend-Beitragsfunktionen von Discourse auf der Unterforum-Seite nutzen können, die meine App erstellt hat (Erstellen von Themen, Antworten, Verlinken zu Kategorien und Hinzufügen von Tags).
Mir wurde gesagt, dass es eine Möglichkeit gibt, benutzerdefinierte Felder mit Tags zu verknüpfen oder so ähnlich, um die Tags einzuschränken, die ein Nutzer posten darf.
Die eigentliche Hoffnung ist jedoch das, was ich bereits erwähnt habe: Ich kann einen Großteil der Unterforum-Einrichtung auf meiner App-Seite übernehmen, aber es würde mir viel Zeit sparen, wenn ich weiterhin die Beitragsfunktionen von Discourse nutzen könnte.
Ich schätze alle Antworten sehr. Könnte mir jemand einige Beispiele dafür geben, wie Benutzer-Custom-Fields normalerweise verwendet werden?
Es scheint, als könnte ich einfach ein benutzerdefiniertes Feld hinzufügen, das sich auf das jeweilige Unterforum (z. B. ‘subforum123’) bezieht, für jeden berechtigten Benutzer. Wenn ein Benutzer dann eine Unterforum-Seite aufruft, könnte ich über die API prüfen, ob der Benutzer das erforderliche benutzerdefinierte Feld besitzt. Wenn ja, kann er dort Beiträge verfassen. Wenn nein, dann nicht, und ich könnte einfach die Schaltflächen “Neues Thema” und “Antworten” ausblenden.
Sie werden in der Regel verwendet, um bei der Registrierung Informationen (Standort, Jobtitel usw.) zu sammeln, die auf der Profilkarte angezeigt werden.
Vielleicht möchtest du erreichen, dass Nutzer ihre eigenen Discourse-Instanzen (z. B. username.deineseite.com) erstellen können, die auf einer Multisite-Installation laufen, wobei dein „Haupt-Discourse
Das ist es, aber es hat den Vorteil, dass es möglich ist.
Ja, ich bin mir mindestens eines Unternehmens bewusst, das Hunderte oder mehr Unterseiten mit mindestens zwei verschiedenen Plugin-Sets für 100–300 pro Monat betreibt. Andere berechnen 20 pro Monat und Seite.
Falls es nicht klar ist: Im Grunde bauen Sie eine Discourse-Hosting-Firma auf.
Sie sollten für den Start mit ein paar Dutzend Seiten mit 4–16 GB RAM rechnen.
Zur Bestätigung: Meinen Sie, dass dieses Unternehmen 100–300 $ pro Monat für die Wartung von Hunderten von Subsites zahlt? (Das scheint das zu sein, was Sie sagen – das ist für Hunderte von Subsites ein recht niedriger Betrag.)
Ich meine, dass ein Unternehmen (dasjenige, das Discourse entwickelt) 100–300 pro von Ihnen zu erstellender Site berechnet. Andere verlangen [in der Größenordnung von 20 pro Monat](Discourse Hosting Plans and Pricing - Communiteq); vermutlich verdienen sie damit gut Geld.
Die Lösung des von mir vorgeschlagenen Problems erfordert wahrscheinlich mindestens hundert Stunden, wahrscheinlich sogar mehr.
EDIT: Wenn Sie jedoch nur eine einzelne Multisite aufsetzen möchten, könnte dies in weniger Zeit machbar sein.