Es gab kürzlich eine große Diskussion in einem Forum, das ich verwalte, darüber, ob „Gefällt mir“-Angaben entfernt werden sollten. Die Hälfte möchte sie loswerden, die andere Hälfte möchte, dass sie bleiben. Ich habe die Theme-Komponente gefunden, die die Möglichkeit zum Liken von Beiträgen für TL0- und anonyme Benutzer ausblendet, und habe dies größtenteils an unseren Bedarf angepasst. Allerdings bin ich mir nicht sicher, wie ich sie mit einem von mir erstellten booleschen Benutzerfeld („Toggle Likes“) verknüpfe. In der ursprünglichen Theme-Komponente wird so etwas wie „settings.hide_for_anon_user“ verwendet, wodurch eine Theme-Einstellung namens „hide_for_anon_user“ in der Datei settings.yml erstellt wird. Diese kann jedoch nur von einem Administrator und nicht auf Benutzerseite umgeschaltet werden.
Wie würde ich auf das benutzerdefinierte Feld dafür zugreifen? Ich habe es bereits zu public_user_custom_fields hinzugefügt, weiß aber nicht, wie ich es in der JS-Datei der Komponente referenzieren soll. Ich habe userCustomFields.user_field_10, settings.current_user.custom_fields.user_field_10 und current_user.custom_fields.user_field_10 ausprobiert, aber nichts davon funktioniert; sie blenden einfach alle Beiträge in einem Thread aus.
Ich denke, du kannst eine Gruppe ohne „Gefällt mir“-Angaben erstellen und diese nutzen, um Likes zu verstecken, genau wie tl0. Stelle die Gruppe so ein, dass sich jeder beitreten kann.
Wie verweise ich in diesem Fall jedoch auf die Gruppe?
Ich habe
this.currentUser.trust_level === 0;
durch
this.currentUser.no_likes;
ersetzt, aber es hat nicht funktioniert. Wieder bin ich mir nicht sicher, wie man auf benutzerdefinierte Gruppen verweist. Ähnlich wie bei Benutzerfeldern scheint dies in keiner Dokumentation klar dargelegt zu sein.
Ich würde jedoch gerne wissen, ob es eine Möglichkeit gibt, dies so zu gestalten, dass stattdessen das boolesche benutzerdefinierte Benutzerfeld geprüft wird, anstatt dass Personen einer Gruppe beitreten müssen. Ich habe bereits andere Plugins durchsucht, um eine Idee zu bekommen, wie das geht, aber bisher hat alles, was ich versucht habe, nicht funktioniert.
ETA: Dies scheint zu funktionieren, aber Sie müssen die Seite aktualisieren, nachdem Sie das Benutzerfeld-Boolean-Feld gesetzt oder entfernt haben.
Anscheinend werden Beiträge ausgeblendet, wenn Benutzer abgemeldet sind. Ich bin mir nicht sicher, wie ich den Code ändern soll – hat jemand einen Vorschlag?