Erstelltes Thema Sortieren

:information_source: Zusammenfassung Fügt eine sortierbare Spalte für das Erstellungsdatum zur Themenliste hinzu
:eyeglasses: Vorschau \u003chttps://discourse.theme-creator.io/theme/Alteras/created-topic-sort\u003e
:hammer_and_wrench: Repository GitHub - Alteras1/discourse-created-topic-sort: Discourse theme component adds topic sorting by created date
:question: Installationsanleitung So installieren Sie ein Theme oder eine Theme-Komponente
:open_book: Neu bei Discourse Themes? Anfängerleitfaden zur Verwendung von Discourse Themes

Installieren Sie diese Theme-Komponente

Dies fügt eine sortierbare Spalte für das Erstellungsdatum zur Themenliste hinzu. Fügt außerdem einen optionalen “Erstellt”-Tab zur Navigationsleiste hinzu.

In der Desktop-Ansicht wird eine ganze Spalte hinzugefügt. Auf Mobilgeräten wird das Erstellungsdatum nur inline mit dem Aktivitätsdatum hinzugefügt, wenn die Sortierung “Erstellt” ausgewählt ist (siehe Screenshots unten).

\u003e :information_source: Bevor Sie diese Komponente verwenden, sollten Sie den Bedarf Ihrer Community an der Kenntnis des Erstellungsdatums prüfen. Es gibt bereits eine integrierte Möglichkeit, neu erstellte Themen innerhalb eines bestimmten Zeitraums automatisch zu kennzeichnen (anpassbar durch Benutzer in den Einstellungen > Tracking > Themen).

Einstellungen

Navigationsleisten-Element “Nach Erstellungsdatum sortieren” aktivieren

Fügt ein Navigationsleisten-Element “Nach Erstellungsdatum sortieren” zum Navigationsmenü hinzu. Standard: true

Screenshots

Desktop

Mobile

Spalte nur beim Filter “Erstellungsdatum” anzeigen

Verhindert, dass die Spalte “Erstellungsdatum” außerhalb des Filters “Erstellungsdatum” angezeigt wird. Erfordert, dass “Navigationsleisten-Element ‘Nach Erstellungsdatum sortieren’ aktivieren” auf true gesetzt ist. Standard: false

Navigationsleisten-Element auf der Startseite anzeigen

Fügt das Navigationsleisten-Element “Nach Erstellungsdatum sortieren” auf der Startseite hinzu. Standard: true

Spalte auf der Startseite anzeigen

Fügt die Spalte “Erstellt” auf der Startseite hinzu. Standard: true

Kategorien, in denen das Navigationsleisten-Element angezeigt werden soll

Liste der Kategorien, in denen das Navigationsleisten-Element “Nach Erstellungsdatum sortieren” angezeigt werden soll. Leer lassen, um in allen Kategorien anzuzeigen. Standard: leer

Kategorien, in denen die Spalte “Erstellt” angezeigt werden soll

Liste der Kategorien, in denen die Spalte “Erstellt” angezeigt werden soll. Leer lassen, um in allen Kategorien anzuzeigen. Standard: leer

Navigationsleisten-Element davor

Passt die Position des Navigationsleisten-Elements in der Liste an. Standard: top.

Screenshots

Sortierung


Mobile Ansicht

Mit Kategorie und Tags

Kompatibilität & Hinweise

Bei Mobilgeräten ist die Sortierfunktionalität bereits stark eingeschränkt, sodass das Erstellungsdatum nur als Information dient. Das zusätzliche Feld erscheint nur, wenn das Erstellungsdatum vom Bump-Datum abweicht.

Die Kompatibilität mit Topic List Thumbnails ist eingeschränkt. Im Listenstil funktioniert es normal. Im Blog-Stil wird das Erstellungsdatum unten rechts angezeigt. Im Grid- und Masonry-Stil ist das Erstellungsdatum nur sichtbar, wenn der Filter “Erstellt” ausgewählt ist, und ersetzt das Aktivitätsdatum. Im Minimalstil ist das Erstellungsdatum ausgeblendet.

16 „Gefällt mir“

Wow, ein weiteres perfektes Plugin, das das Forum verändert! Es wäre großartig, wenn es sich mit dem Discourse Nav Item Icon / Emoji Plugin integrieren ließe.

3 „Gefällt mir“

Ich denke, es sollte damit funktionieren. :slight_smile:
Fügen Sie es einfach hinzu, zum Beispiel:
emoji:created_date:twitter:spiral_calendar:filter

4 „Gefällt mir“

Kann bestätigen, dass das Hinzufügen der Einstellung, wie Don es hat, funktioniert!


5 „Gefällt mir“

Sehr schön! Leider verträgt es sich nicht gut mit den Topic Thumbnails TC, es fügt aus irgendeinem Grund eine zusätzliche Zeit hinzu:

Beachten Sie die zusätzlichen 7 Stunden am unteren Rand der Mitte.

Es scheint, dass ich dies einfach ausblenden kann .topic-list .topic-list-data:last-of-type, aber ich dachte, ich würde Sie informieren :grin:

EDIT: Ich habe eine weitere Merkwürdigkeit gefunden, wenn ich auf Neueste klicke, wird Erstellt hervorgehoben, und wenn ich auf Erstellt klicke, wird Neueste hervorgehoben :zany_face:

1 „Gefällt mir“

Interessant. Es scheint, dass dies nur ein seltsamer Nebeneffekt davon ist, wie die Topic Thumbnails und Created Topic Sort gleichzeitig zu den Templates hinzugefügt werden. Könnte es ein Problem mit dem Masonry- und Grid-Modus sein? Ich werde sehen, ob ich stattdessen eine geeignete Anpassung in CSS vornehmen kann, anstatt es nur zu verstecken, sobald ich einen sauberen Weg gefunden habe, die Verwendung der Theme-Komponente zu erkennen.

Das Hervorheben von „latest“ und „created“ klingt wirklich seltsam. „Created“ sollte nur hervorgehoben werden, wenn die URL /latest?order=created enthält… hmmm…

Ich habe einige der Komponenten aktualisiert, um sie schöner zu gestalten (oder zumindest an die Topic Thumbnails-Komponente anzupassen).

Im Blog-Stil wird das Erstellungsdatum unten rechts angezeigt. Ich konnte keine saubere Möglichkeit finden, es direkt neben dem Bump-Datum zu platzieren, daher muss dies ausreichen. Im Grid-Stil und im Masonry-Stil ist das Erstellungsdatum nur sichtbar, wenn der Filter „Erstellt“ ausgewählt ist, und ersetzt das Aktivitätsdatum. Ich habe versucht, sowohl das Aktivitätsdatum als auch das Erstellungsdatum gleichzeitig anzuzeigen, aber dadurch wirkte die Karte überladen. Im Minimal-Stil ist das Erstellungsdatum ausgeblendet.

Wäre es schwierig, dem eine Kategorie-Geltung hinzuzufügen? Wir würden es gerne in unserem Ankündigungsbereich haben, müssen es aber nicht in unserer allgemeinen Diskussion usw. anzeigen.

1 „Gefällt mir“

Überhaupt nicht! Ich habe gerade ein Update veröffentlicht, das vier neue Einstellungen hinzufügt, um zu steuern, wo das Navigationsleistenelement und die Spalte angezeigt werden.\n\n- Navigationsleistenelement auf der Startseite aktivieren: Fügt das Navigationsleistenelement „Nach Erstellungsdatum sortieren“ auf der Startseite hinzu.\n- Spalte auf der Startseite aktivieren: Fügt die Spalte „Erstellt“ auf der Startseite hinzu.\n- Kategorien zum Anzeigen des Navigationsleistenelements: Liste der Kategorien, in denen das Navigationsleistenelement „Nach Erstellungsdatum sortieren“ angezeigt werden soll. Leer lassen, um in allen Kategorien anzuzeigen.\n- Kategorien zum Anzeigen der Erstellungsspalte: Liste der Kategorien, in denen die Spalte „Erstellt“ angezeigt werden soll. Leer lassen, um in allen Kategorien anzuzeigen.\n\nhttps://github.com/Alteras1/discourse-created-topic-sort/pull/7\n\nBeachten Sie jedoch, dass die Einschränkungen für die Anzeige der Spalte nur auf Websites funktionieren, die die neuen Topic-List-Änderungen verwenden.

2 „Gefällt mir“

Vielen Dank! :star_struck: Das ist großartig!

Gibt es eine Möglichkeit, dies zur Standard-Startseite zu machen? Ich habe gesehen, dass einige Plugins Optionen zur Website-Einstellung „Top-Menü“ hinzufügen, daher denke ich, dass es möglich ist.

Dann könnte ich das Standard-„Neueste“ effektiv ersetzen, indem ich dieses mit CSS ausblende.

Die Standard-Startseite kann mit ein wenig JS festgelegt werden:

import { setDefaultHomepage } from "discourse/lib/utilities";
setDefaultHomepage("/latest?order=created");

Die Möglichkeit, die Option in den Einstellungen des Top-Menüs hinzuzufügen, ist definitiv vorzuziehen, aber ich glaube nicht, dass es auf diese Weise von einem TC aus möglich ist, zumindest nach meinem letzten Stand. Ich muss sehen, ob sich zwischenzeitlich etwas geändert hat.

1 „Gefällt mir“

Danke! Das sollte funktionieren, aber es hängt %3F_discourse_homepage_rewrite an die URL an, was die Sortierung beeinträchtigt. :confounded_face:

2 „Gefällt mir“

Ich konnte das umgehen, indem ich setDefaultHomepage("latest?order=created&"); verwendet habe.
Aber jetzt ist das Problem, dass die tatsächliche Sortierung nicht angewendet wird, obwohl alle Indikatoren darauf hindeuten.

Ich habe dann dieselbe URL über Custom Homepage for Groups ausprobiert und das hat funktioniert :tada: Ich bin mir nicht sicher, warum die Weiterleitung dieser Komponente anders funktionieren würde, da ich ziemlich sicher bin, dass sie dieselbe Methode verwendet.

2 „Gefällt mir“

Ich habe es herausgefunden, es musste den PreloadStore löschen

Man kann also sein Standardthema bearbeiten oder eine neue Komponente hinzufügen, um dies zum JS hinzuzufügen:

import { apiInitializer } from "discourse/lib/api";
import { setDefaultHomepage } from "discourse/lib/utilities";
import PreloadStore from "discourse/lib/preload-store";

export default apiInitializer((api) => {
  setDefaultHomepage("latest?order=created&");
  PreloadStore.remove("topic_list");
});

und dieses CSS, um den Tab “Neueste” zu entfernen:

li.nav-item_latest {
    display: none;
}

Ich wünschte, es könnte auf der Root-Homepage-URL bleiben, aber das wird wahrscheinlich ein Plugin erfordern.

3 „Gefällt mir“

Habe dieses Plugin erstellt: Created as Default Sort Order
Meine Homepage wird also sauber nach Erstellung sortiert. Ich benutze diese Komponente immer noch, um die Spalte hinzuzufügen.

4 „Gefällt mir“

Vielen Dank für diese großartige Theme-Komponente!

Ich habe einen sehr kleinen und einfachen PR erstellt, der es ermöglicht, zu konfigurieren, wo der Navigationsleisten-Eintrag erscheint.

2 „Gefällt mir“

Vielen Dank für den PR! Ich habe ihn zusammengeführt und die Beschreibung der Einstellungen im OP aktualisiert.

1 „Gefällt mir“