Rechte Seitenleisten-Blöcke

||||\n-|-|-|\n:discourse2: | Zusammenfassung | Right Sidebar Blocks zeigt eine Seitenleiste rechts neben den Themenlisten mit einer konfigurierbaren Liste von Blöcken. \n| :eyeglasses: | Vorschau | Vorschau im Discourse Theme Creator\n:hammer_and_wrench: | Repository-Link | \u003chttps://github.com/discourse/discourse-right-sidebar-blocks\u003e\n:open_book:|Neu bei Discourse Themes?| Anfängerleitfaden zur Verwendung von Discourse Themes\n\n[wrap=theme-install-button repoUrl="https://github.com/discourse/discourse-right-sidebar-blocks\" repoName="Right Sidebar Blocks"]\nDiese Theme-Komponente installieren\n[/wrap]\n\n[quote]\n\n:discourse2: Da dies eine von der Discourse-Mannschaft gewartete #offiziell Theme-Komponente ist, können Support, Bug, UX und Feature Anfragen in den entsprechenden Kategorien hier auf Meta gestellt und mit dem entsprechenden Theme-Komponenten-Tag versehen werden. Klicken Sie auf einen Link unten, um eine zu starten. :+1: \n\n\u003ckbd\u003e [:question:\u0026nbsp;Support](Discourse Meta "Support zur Konfiguration und Nutzung von Right Sidebar Blocks anfragen") \u003c/kbd\u003e \u003ckbd\u003e [:bug:\u0026nbsp;Bug](Discourse Meta "Ein Bug-Report bedeutet, dass etwas kaputt ist und die normale/typische Nutzung der Theme-Komponente verhindert") \u003c/kbd\u003e \u003ckbd\u003e [:eyes:\u0026nbsp;UX](Discourse Meta "Diskussion über die Benutzeroberfläche von Right Sidebar Blocks und wie Funktionen präsentiert werden (einschließlich Sprache und UI-Elemente)") \u003c/kbd\u003e \u003ckbd\u003e [:bulb:\u0026nbsp;Feature](Discourse Meta "Diskussion darüber, wie bestehende Funktionen von Right Sidebar Blocks verbessert oder erweitert werden können und wie vorgeschlagene neue Funktionen funktionieren könnten")\u003c/kbd\u003e\n\n[/quote]\n\n### Funktionen\n\nDie Komponente enthält einige Blöcke, die Sie in der Seitenleiste anzeigen können:\n\n* popular-tags\n* top-contributors\n* recent-replies\n* category-topics\n* custom-html\n* category-list\n* subcategory-list\n* upcoming-events-list*\n* minimal-gamification-leaderboard** \n\n\u003e:information_source: Das Benutzerverzeichnis muss aktiviert sein, damit die Liste der Top-Mitwirkenden gefüllt wird. Wenn Ihre Liste leer ist, suchen Sie in Ihren Admin-Einstellungen nach enable user directory, um sicherzustellen, dass es aktiviert ist.\n\n\* Nur verfügbar, wenn es mit dem Calendar Plugin verwendet wird.\n** Nur verfügbar, wenn es mit dem Gamification Plugin verwendet wird.\n\nSie können auch andere Ember-Komponenten als Blöcke verwenden, Sie müssen nur den korrekten Namen verwenden. Zum Beispiel enthält Core eine signup-cta Ember-Komponente, und Sie können sie einfach so in der Seitenleiste verwenden. Beachten Sie, dass Sie keine Komponenten verwenden können, die einen Satz von Parametern erwarten, aber Sie können Ihre eigene Ember-Komponente in einem separaten Theme erstellen und sie nur über ihren Namen in der blocks-Einstellung der Seitenleiste referenzieren. \n\nSie können einige Funktionen für die bereitgestellten Blöcke über Parameter steuern.\n\n| Name | Beschreibung | Standard | Wert | verfügbar für |\n|—|—|—|—|—|\n| count | Begrenzt die Anzahl der Ergebnisse | variiert | Zahl | alle außer custom-html |\n| excerptLimit | Begrenzt die Länge jedes Antwortauszugs | 150 | Zahl | recent-replies |\n| id | Kategorie-ID | | Kategorie-ID (category-list verwendet durch Kommas getrennt) | category-topics, category-list |\n| content | anzuzeigender Inhalt | | html | custom-html |\n| scopeToCategory | wird nur in Kategorie oder Unterkategorie X angezeigt | | Kategorie-ID | popular-tags |\n| excludedTags | Liste der ausgeschlossenen Tags | | Tagnamen | popular-tags |\n| displayInSpecificCategories | Liste der Kategorien, in denen das Widget angezeigt werden soll | alle | durch Kommas getrennte Zahlen | popular-tags |\n| id | Leaderboard-ID | | Zahl | minimal-gamification-leaderboard |\n| tag | welches Tag angezeigt werden soll | | Tag-Name | tag-topics |\n| period | Zeitraum der Top-Themen | weekly | all, yearly, quarterly, monthly, weekly, daily | top-topics |\n| title | Titel des Blocks | variiert | String | tag-topics, category-list, top-contributors |\n| excludedGroupNames | Schließt angegebene Gruppen aus | | Gruppenname | top-contributors |\n| order | Ordnet die Mitwirkenden | | String (likes_received oder likes_given) | top-contributors |\n| period | Zeitraum für Top-Mitwirkende | yearly | all, yearly, quarterly, monthly, weekly, daily | top-contributors |\n| upcomingDays | Ereignisse, die vor dem angegebenen Wert begonnen haben | 180 | Zahl | upcoming-events-list |\n| timeFormat | Format von Datum/Uhrzeit des Ereignisses | LT | momentjs Format | upcoming-events-list |\n\n### Einstellungen\n\n| Name | Beschreibung\n|-|-|\n| blocks | \n| show in routes | Nur für fortgeschrittene Benutzer: Beschränkt die Seitenleiste auf die ausgewählten Routen.\u003cbr\u003eBeispiele: discovery.latest, discovery.unread, discovery.new, discovery.top, tag.show, "c/category-slug" (für Kategorien), "tag/sample-tag" (für Tags).\u003cbr\u003eWenn leer, wird die Seitenleiste auf allen Listenrouten angezeigt.\n\nblocks: Wählen Sie die anzuzeigenden Blöcke und passen Sie deren Reihenfolge an\n\nshow_in_routes: Entscheiden Sie, auf welchen Themenlisten-Routen die Seitenleiste angezeigt werden soll. Standardmäßig wird sie auf allen Discovery-Routen außer /categories angezeigt. \n\n| Übersetzung | Standard\n|-|-|\n| top_contributors.heading | Top-Mitwirkende\n| top_contributors.view_all | Alle anzeigen\n| popular_tags.heading | Beliebte Tags\n| popular_tags.view_all | Alle anzeigen\n| recent_replies.heading | Neueste Antworten\n| subcategory_list.heading | Unterkategorien\n| top_topics.heading | Top-Themen\n| category_list.heading | Kategorien\n\n### Screenshots\n\n

\n\n\n\n\n\nBeachten Sie, dass die Komponente nur sehr grundlegendes Styling mitbringt. Es wird davon ausgegangen, dass Administratoren, die die Komponente verwenden, ihr eigenes Styling in ihrem eigenen Theme hinzufügen.\n\n### Interaktionen\n\nIn Verbindung mit dem Discourse Calendar Plugin können Sie einen Seitenleistenblock für Ihre anstehenden Ereignisse hinzufügen. Der Blockname lautet upcoming-events-list, und das Datumsformat kann nach dieser Syntax angepasst werden (z. B. MMMM D, YYYY ).\n\n\n\n\n\n\n\u003cbr\u003e\n\n\n\u003e:discourse2: Bei uns gehostet? Theme-Komponenten sind für die Nutzung in unseren Standard-, Business- und Enterprise-Tarifen verfügbar.

60 „Gefällt mir“
Discourse Gamification
Sidebar for Subcategories
Add User leaderboard in sidebar
FKB Pro - Social theme
Setup Continuous Integration using GitHub Actions
Blogroll (feature request)
Topic List Previews (TLP)
How to include a YouTube video or video widget on the community home page?
How to extend the Discourse sidebar?
Discourse Bars :beers: :cocktail: (a sidebar framework)
Homepage Blocks
Topic List Excerpts
🏷️ Bars Tag List Component
Discourse Bars :beers: :cocktail: (a sidebar framework)
When to switch themes/plugins to `.gjs`?
FKB Pro - Social theme
Recent replies takes 2 seconds to display
Leaderboard in homepage
Discourse Gamification Plugin in the Header
Discourse Calendar updated to use fullcalendar 6
I'm getting errors when I switch categories too quickly
目前我感觉看到的最好看的Discourse主题,有没有谁能爱心奉献一个
Adding ‘hot topics’ to the Sidebar
Tag Icons + Tag Banners + Right Sidebar Blocks
Discourse Sidebar Blocks
Custom Components -- add button or text at any plugin outlet
Top Posters Widget?
Creating a Top 20 leaderboard for a specific date range
Connectors not rendering
Sidebar for Subcategories
Displaying tags along with categories
FKB Pro - Social theme
Customizing your site with existing theme components
Creating and installing plugins?
FKB Pro - Social theme
Adding a recent comments widget
Add social media handles on home page
Alternate presentation of sub-categories which puts the _top_ category first?
FKB Pro - Social theme
Looking for the perfect theme
Discourse Bars :beers: :cocktail: (a sidebar framework)
Discourse Bars :beers: :cocktail: (a sidebar framework)
Add right sidebar gamification mini-leaderboard
Add right sidebar gamification mini-leaderboard
Pyx's Modern Theme

Was sollte ich im Parameter „name“ hinzufügen, wenn ich benutzerdefiniertes HTML verwende?

1 „Gefällt mir“

Großartig, das als #offizielle Theme-Komponente zu sehen! Es eröffnet sicherlich eine neue Welt der Anpassungen.

Ich habe 2 Fragen:

  1. Ich möchte in der Seitenleiste die /latest-Themenliste so anzeigen, wie category-topics sie anzeigt. Ist das möglich? recent-replies kommt dem schon ziemlich nahe (besonders wenn der Auszug ausgeblendet ist), aber ich möchte wirklich auch Themen ohne Antworten einbeziehen.

  2. Ist es möglich, die Seitenblöcke nur in bestimmten Kategorien anzuzeigen? Was ich meine ist, dass nur die Route angezeigt wird, die die Kategorie-Themenliste ist, und das nur für die von mir angegebenen Kategorien.

1 „Gefällt mir“

Entschuldigung, die Dokumentation hierfür ist mangelhaft (ich werde sie jetzt aktualisieren). Der Name des Parameters für custom-html ist content.

Wir haben nichts Fertiges für die vollständige /latest-Liste, aber Sie können Ihre eigene erstellen und sie mit ihrem Namen zur Konfiguration hinzufügen. Sie sollte der Kategorie-/Tag-Liste sehr ähnlich sein, nur ohne Filter.

Derzeit nicht, Sie können sie nicht nur in bestimmten Kategorien anzeigen. Sie können jedoch discovery.category in der Einstellung show in routes verwenden, die die Seitenleiste nur auf Kategorie-Routen anzeigt (aber auf allen, nicht auf einer Teilmenge).

3 „Gefällt mir“

Vielen Dank, ist es möglich, die Seitenleiste auch in jedem Thema einzuschließen?

4 „Gefällt mir“

Ich habe gerade eine Einschränkung der Komponente festgestellt, insbesondere bei den Blöcken category-topics und subcategory-list, und zwar, dass das Hinzufügen mehrerer Blöcke dieser Typen mit unterschiedlichen id immer dazu führte, dass sie die Themen/Unterkategorien des obersten Blocks im Launch-Editor (vermutlich) anzeigen.

Ein Fehler, den ich gerade habe, ist, dass nach dem Herumspielen mit dem subcategory-list-Block etwa 10-12 Mal, er auf unserer Staging-Website überhaupt nicht mehr angezeigt wird (siehe Video unten).

2 „Gefällt mir“

Der Block subcategory-list nimmt überhaupt keinen Parameter entgegen. Wenn er verwendet wird, zeigt er die Unterkategorien der aktuellen Kategorie an, basierend darauf, zu welcher aktuellen Kategorie Sie navigiert sind … daher macht es keinen Sinn, diesen Block mehr als einmal zu verwenden.

Deshalb wird die subcategory-list in Ihrem Video auch nicht angezeigt. Wenn Sie sich auf einer Nicht-Kategorie-Route befinden, wird dieser Block nicht angezeigt.

Für category-topics sehe ich in Ihrem Video dieselbe ID zweimal verwendet: 7. Ich habe einen lokalen Test durchgeführt und mit verschiedenen IDs werden unterschiedliche Themen angezeigt (d. h. ich kann den gemeldeten Fehler nicht reproduzieren).

4 „Gefällt mir“

Hallo, vielen Dank für dieses großartige Plugin!

Ich habe eine Frage zur subcategory-list Seitenleiste: Gibt es eine Option, sie nur für eine bestimmte Kategorie anzuzeigen?

Unsere Entwickler haben sich das angesehen, und es scheint keine Parameter-ID-Unterstützung für subcategory-list zu geben. Könnten Sie das bitte hinzufügen?

2 „Gefällt mir“

Und bezüglich des top-contributors-Blocks: Gibt es eine Möglichkeit, die Ergebnisse für einen Zeitraum von einer Woche abzurufen?

2 „Gefällt mir“

Derzeit nein, diese Option gibt es nicht. Es wäre sinnvoll, sie hinzuzufügen, obwohl ich mir vorstellen könnte, dass sie mehrere IDs unterstützen sollte, damit Sie den Block für eine Liste von Kategorien (z. B. A, B und C) anzeigen können. Ich bin gerne bereit, PRs im Repo zu überprüfen. Wenn Ihre Entwickler der Meinung sind, dass sie dies hinzufügen können, wäre das großartig. (Andernfalls kann ich es zu einer Liste von “nice-to-haves” in der Theme-Komponente hinzufügen.)

Meinen Sie a) die Ergebnisse abzurufen und für eine Woche zu cachen oder b) die Top-Beitragenden der letzten Woche bei jeder Ladung abzurufen? Letzteres sollte einfach hinzuzufügen sein, Caching ist etwas kniffliger.

3 „Gefällt mir“

@pmusaraj können Sie\n\n> padding: 3px 4px 3px 4px\n\nfür die beliebten Tags hinzufügen?\n\nDanke.

1 „Gefällt mir“

Hallo @pmusaraj, vielen Dank für deine Antwort!

Unser Entwickler hat die PRs hier geteilt, bitte schau sie dir an: Implement the `displayInCategories` parameter which allows to specify a list of categories where the `subcategories-list` block is displayed by d521bb85 · Pull Request #10 · discourse/discourse-right-sidebar-blocks · GitHub

Die zweite Variante wäre perfekt! Wir müssen tatsächlich die Liste der Top-Beitragenden der letzten Woche anzeigen. Vielen Dank!

4 „Gefällt mir“

Die Komponente hat absichtlich sehr wenig Styling, damit die Benutzer ihre eigenen Stile in ihren eigenen Themes/Theme-Komponenten hinzufügen können.

Danke, diese PR ist großartig und wurde jetzt zusammengeführt! Ich werde auch bald daran arbeiten, die Konfigurierbarkeit für den Top-Contributors-Block hinzuzufügen (oder wenn jemand anderes schneller ist, freue ich mich über eine PR).

3 „Gefällt mir“

Ich bin mir nicht sicher, wo ich den Code dafür finden kann – könnten Sie mich bitte dorthin leiten? Ich würde gerne die Kategorie-Themen modifizieren, sodass das Fehlen einer ID alle Kategorien ergibt (und somit effektiv die /latest-Liste).

Das wäre großartig, wenn das in allen Blöcken vorhanden wäre!

2 „Gefällt mir“

@pmusaraj Großartig! Vielen Dank für deine Hilfe, ich freue mich darauf, den Top-Beitrags-Block zu verwenden :slight_smile:

1 „Gefällt mir“

Hallo! Ich bin mir nicht sicher, ob diese Komponente Fehler verursacht. Aber sobald sie deaktiviert ist, werden keine weiteren Fehler mehr angezeigt. :thinking: Könnte sich das jemand ansehen, um mir bei der Fehlersuche zu helfen? Ich wäre Ihnen sehr dankbar.

Wenn sie aktiviert ist, würde mich beim Besuch eines bestimmten Themas auf dem Desktop das Klicken auf das Website-Logo in der oberen Leiste, um zur Homepage zurückzukehren, zu einem nie verschwindenden Ladebildschirm führen und Fehler in der Browserkonsole auslösen (wie unten). Keine zugehörigen Fehlerprotokolle im Pfad mysite/logs zu sehen.

d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'findFiltered')
    at new CategoryTopics (d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98:18)
    at h.createComponent (base-component-manager.js:37:1)
    at h.createComponent (ember-component-manager.js:54:1)
    at C.create (manager.js:558:1)
    at Object.evaluate (runtime.js:3301:1)
    at Object.evaluate (runtime.js:1312:1)
    at Dt.evaluateSyscall (runtime.js:5232:1)
    at Dt.evaluateInner (runtime.js:5188:1)
    at Dt.evaluateOuter (runtime.js:5180:1)
    at Wt.next (runtime.js:6191:1)
    at Wt._execute (runtime.js:6175:1)
    at Wt.execute (runtime.js:6166:1)
    at qt.handleException (runtime.js:5369:1)
    at Kt.handleException (runtime.js:5605:1)
    at Lt.throw (runtime.js:5302:1)
    at Be.evaluate (runtime.js:2580:1)
    at Lt._execute (runtime.js:5285:1)
    at Lt.execute (runtime.js:5266:1)
    at Ht.rerender (runtime.js:5634:1)
    at Er.render (index.js:7578:1)
    at index.js:7896:1
    at It (runtime.js:5074:1)
    at Rr._renderRoots (index.js:7876:1)
    at Rr._renderRootsTransaction (index.js:7928:1)
    at Rr._revalidate (index.js:7970:1)
    at invoke (backburner.js:351:1)
    at p.flush (backburner.js:241:1)
    at h.flush (backburner.js:447:1)
    at q._end (backburner.js:999:1)
    at _boundAutorunEnd (backburner.js:648:1)
CategoryTopics @ d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98
createComponent @ base-component-manager.js:37
createComponent @ ember-component-manager.js:54
create @ manager.js:558
(anonym) @ runtime.js:3301
evaluate @ runtime.js:1312
evaluateSyscall @ runtime.js:5232
evaluateInner @ runtime.js:5188
evaluateOuter @ runtime.js:5180
next @ runtime.js:6191
_execute @ runtime.js:6175
execute @ runtime.js:6166
handleException @ runtime.js:5369
handleException @ runtime.js:5605
throw @ runtime.js:5302
evaluate @ runtime.js:2580
_execute @ runtime.js:5285
execute @ runtime.js:5266
rerender @ runtime.js:5634
render @ index.js:7578
(anonym) @ index.js:7896
It @ runtime.js:5074
_renderRoots @ index.js:7876
_renderRootsTransaction @ index.js:7928
_revalidate @ index.js:7970
invoke @ backburner.js:351
flush @ backburner.js:241
flush @ backburner.js:447
_end @ backburner.js:999
_boundAutorunEnd @ backburner.js:648
Promise.then (asynchron)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (asynchron)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (asynchron)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then (asynchron)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_ensureInstance @ backburner.js:1206
scheduleOnce @ backburner.js:845
k @ index.js:522
queueRerender @ mount-widget.js:124
scheduleRerender @ widget.js:319
rerenderResult @ widget.js:365
F @ hooks.js:207
(anonym) @ hooks.js:247
dispatch @ jquery.js:5430
_.handle @ jquery.js:5234
frame:251 Sie haben das Flag abgelehnt, aber Drittanbieter-Cookies sind in Ihrem Browser deaktiviert, sodass das Flag beim nächsten Besuch der Seite wieder angezeigt wird.

Ich sehe Informationen über diese Komponente in der JS-Datei, die in der ersten Zeile des obigen Fehlerprotokolls erwähnt wird.

// Zeile 96-103 von d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe
      const filter = "c/" + categoryId;
      this.category = _category.default.findById(categoryId);
      this.store.findFiltered("topicList", {
        filter
      }).then(result => {
        const results = result.topic_list.topics;
        results.forEach(topic => {
          topic.url = "".concat((0, _getUrl.default)("/t/")).concat(topic.slug, "/").concat(topic.id);
1 „Gefällt mir“

Ah, ja, Entschuldigung dafür. Es sollte jetzt behoben sein, Sie müssen nur das neueste Update der Theme-Komponente abrufen.

3 „Gefällt mir“

Danke! Funktioniert jetzt super.

3 „Gefällt mir“

Hallo @pmusaraj, entschuldige, wenn ich aufdringlich wirke – ich wollte nur wissen, ob es einen Zeitplan für diese Implementierung gibt.

Es wäre eine großartige Ergänzung :slight_smile:

Vielen Dank!

3 „Gefällt mir“

Vielen Dank für diese großartige Komponente!

Mir ist aufgefallen, dass meine gesamte Kopf- und Fußzeile global verschwindet, wenn ich diese aktiviert habe (alles in meiner header.html und footer.html). War das beabsichtigt? Aber um dies zu umgehen, muss ich die PluginAPI verwenden, um manuell eine Kopf- und Fußzeile hinzuzufügen.

2 „Gefällt mir“