Ich möchte meinen Benutzer von der Über-uns-Seite einiger von mir verwalteter Websites entfernen. Ich bin nicht derjenige, der Ihr Konto löscht oder sonst etwas. . .
Ein Weg ist dieser:
Aber ein Plugin scheint heutzutage etwas übertrieben, daher habe ich eine Theme-Komponente, die das macht:
import { withPluginApi } from "discourse/lib/plugin-api";
const hidden_admins = settings.hidden_admins.split("|");
const PLUGIN_ID = "hide-admins";
export default {
name: "theme-javascript-initializer",
initialize() {
withPluginApi("0.8.30", (api) => {
api.onPageChange((url) => {
if (url != "/about") {
return;
}
for (const admin of hidden_admins) {
var element = document.querySelector(`[data-username=${admin}]`);
if (element === null) {
break;
}
element.classList.add("hide-me");
}
});
});
},
};
Ist das aus irgendeinem Grund dumm? Kostet dieses onPageChange sehr viel? Das Plugin würde nur den About-Serializer beeinflussen, dies prüft bei jeder Seitenänderung. Ist das schlecht?
Es gab kürzlich ein Thema zu genau diesem Problem, das den Benutzer einfach im CSS hartcodiert hat. Wäre es besser, nur ein einziges CSS in einem Theme zu haben, das einfach Folgendes tut:
Das ist größtenteils das, was ich auch dachte, aber ich schätze deine Bestätigung sehr. Ich werde sehen, ob ich das hier etwas aufhübschen und öffentlich machen kann, und dann Werkzeuge schreiben, um es automatisch auf einigen Websites hinzuzufügen.