That is a very helpful component! Should be from user experience point of view built into Discourse, but that is my opinion.
Anyways, I’m stuck in trying to make the same logic work for Categories. I wanted to do it with api.modifyClass but seem to miss the crucial part. Can you please help me?
I have this setting for my desktop page:
Basically the red box on the left should be clickable:
If you want to experiment and fork this component, you are welcome to do so
As a starting point to get a category to be clickable, I would suggest looking through the code in this component that does so by modifying the topic-list-item component inside Discourse core.
You could try creating a new file within this same folder which targets one of the many types of category layouts included in our components, making sure to target the same category page style you have selected on your forum.
Some of these are listed in their locations below…
Wir haben uns auf diese Komponente verlassen, um die Ansicht Kategorien + Neueste (standardmäßig in unserem Fall) mit klickbaren Themenkarten zu erstellen. Seit dem heutigen Update auf die neueste Version 3.1.0beta8 (jetzt wird sie als 3.2.0.beta1-dev angezeigt) funktioniert die Komponente nicht mehr richtig.
Nun bleibt der aktive Zustand des Cursors klickbar, aber der Themenbereich ist nicht klickbar. Mit geöffneter Browserkonsole gibt es einen Fehler, der Entwicklern helfen kann, das Problem zu identifizieren:
Uncaught TypeError: this.router is undefined
function navigateToTopic(topic, href) {
if (this.siteSettings.page_loading_indicator !== "slider") {
// Mit dem Slider fühlt es sich besser an, wenn sich die Kopfzeile aktualisiert, sobald der Rest des Themeninhalts geladen ist,
// überspringen Sie also das frühe Setzen.
this.appEvents.trigger("header:update-topic", topic);
}
this.session.set("lastTopicIdViewed", {
topicId: topic.id,
historyUuid: this.router.location.getState?.().uuid
});
_url.default.routeTo(href || topic.get("url"));
return false;
}
Hallo @kinetiksoft – Ich konnte das Problem auf meiner Seite nicht reproduzieren. Die Theme-Komponente scheint gut mit der neuesten Version von Discourse zu funktionieren. Die Verwendung des Links „Vorschau im Theme-Ersteller“ hier im OP scheint ebenfalls zu funktionieren.
Könnten Sie einen Link zu einer Website mit dem Problem teilen? Möglicherweise gibt es eine Kollision mit einem anderen Theme/Plugin.
Danke @kinetiksoft! Es scheint, dass das Problem auftritt, wenn die Theme-Komponente zusammen mit der Ansicht „Kategorien + Neueste“ verwendet wird (die Sie als Homepage konfiguriert haben).
Ich habe einen PR erstellt, der das Problem beheben sollte.
Ich werde hier posten, sobald er zusammengeführt wurde, und dann müssen Sie Ihr Forum auf die neueste Version von Discourse Core aktualisieren.
Wir werden diese Woche einen Update-Versuch unternehmen und ich werde auf dieses Thema zurückkommen, um zu berichten, wie alles läuft. Nochmals vielen Dank!
Ich bin mir nicht sicher, ob ich bei der Einrichtung dieser Theme-Komponente etwas falsch gemacht habe, aber der gesamte Textkörper auf dem Thema auf der Karte ist nicht anklickbar. Wenn Sie direkt nach dem Ende des Textes in einer Zeile klicken, können Sie die Karte aktivieren und das Thema öffnen.