Derzeit müssen Sie, um die Startseite Ihrer Discourse-Site zu ändern, die Site-Einstellung top menu konfigurieren und Ihre gewünschte Startseite als erste Option in der Liste angeben. Dieses Verhalten ist für neue Administratoren recht unklar.
Heute führen wir eine Änderung ein, die eine neue Site-Einstellung default homepage hinzufügt, um diesen Prozess klarer und einfacher zu gestalten.
Bestehende Sites müssen nichts unternehmen, da der Standardwert für diese neue Einstellung first item in top menu lautet, was der gleichen Funktionalität entspricht, die wir bisher hatten. Die gleichen Optionen sind auch in der neuen Einstellung vorhanden. Wenn Sie eine Startseite wählen, die nur für angemeldete Benutzer verfügbar ist, wie z. B. new, werden wir weiterhin auf das erste top menu-Element zurückgreifen, das für anonyme Besucher verfügbar ist.
Eine Änderung, die diese neue Einstellung ermöglicht, ist, dass Sie jetzt eine Startseite haben können, die nicht im oberen Menü vorhanden ist. Sie können beispielsweise categories als Ihre Startseite festlegen und diese aus der top menu-Einstellung entfernen, da der Link zu allen Kategorien auch in der Seitenleiste verfügbar ist.
Da wir bald eine neue Startseite über den custom-homepage-Outlet einführen werden, bin ich gespannt, ob diese neue Einstellung die benutzerdefinierte Startseite einschließt, wenn ein Plugin oder ein Theme-Komponente eine einführt. Ich plante nämlich, die Benutzereinstellungen so zu aktualisieren, dass die Startseite-Einstellung auf den Standardwert -1 zurückgesetzt wird.
Wird diese neue Einstellung also auch die Optionen in der Startseite-Einstellung der Benutzereinstellungen aktualisieren?
Zuletzt: Wenn die Standard-Startseite auf erstes Element im oberen Menü eingestellt ist und ein benutzerdefinierter Link über api.addNavigationBarItem() hinzugefügt und als erstes Element platziert wird, wird er dann tatsächlich als erstes Element behandelt?
Nein, das ist immer noch gleich. Der Theme-Modifier für benutzerdefinierte Startseiten überschreibt die Site-Einstellung vollständig. Die Navigation ist etwas kompliziert, denn wenn eine Site mehrere Themes zur Verfügung hat und eines keine benutzerdefinierte Startseite hat, müssten wir Fallbacks verwalten. Etwas, das wir uns überlegen sollten.
Noch nicht … die Optionen sind ohnehin immer noch dieselben wie im oberen Menü, aber eine Sache, die sich geändert hat, ist, dass default jetzt immer in den Benutzereinstellungen verfügbar ist (zuvor war es bedingt). “Default” in den Benutzereinstellungen folgt der Site-Einstellung.
Auch hier noch ein “nicht noch” — abgesehen von einer benutzerdefinierten Startseite in einem Theme hat die Startseite einer Discourse-Site immer noch verschiedene Anforderungen, eine Themenlisten-Seite (oder /categories) zu sein, und api.addNavigationBarItem() hat viel lockerere Anforderungen.
Danke, Kris. Ich stehe diesbezüglich voll hinter dem Projekt und bin gespannt, wie es sich weiterentwickeln wird.
Ein Beobachtung, die ich teilen kann, ist, dass Benutzer mit personalisierten Startseite-Einstellungen eine benutzerdefinierte Startseite, die von einem Theme-Component eingeführt wird, niemals zu sehen bekommen.
Im Gegensatz zu den Menüpunkten oben gibt es für die benutzerdefinierte Startseite keinen Pfad, für den ich einen eigenen Menüpunkt erstellen könnte.
Aus genau diesem Grund – auch wenn es nach einer extremen Maßnahme klingt – hatte ich geplant, die Benutzereinstellungen zurückzusetzen, um den Standardwert -1 zu verwenden. Soweit ich das überblicke, ist dies die einzige Option, um allen Benutzern die neue Startseite anzuzeigen. Anschließend können sie diese in ihren Einstellungen weiterhin personalisieren.
Ich möchte, dass meine anonymen Benutzer auf einer benutzerdefinierten Startseite landen, während angemeldete Benutzer zur Seite mit den neuesten Beiträgen geleitet werden. Oder zumindest die Option dafür haben.
Der Anwendungsfall besteht darin, dass Discourse eine einzige Startseite/Landingpage bereitstellt, die auf gelegentliche Besucher zugeschnitten ist, während unsere regulären Benutzer nahtlos in das vollständige Forumserlebnis eintauchen können.
Obwohl dies typischerweise durch eine separate Website und Discourse auf einer Subdomain erreicht wird, führt dies zu erheblichem Verwaltungsaufwand und zusätzlichen Kosten. Ich möchte die Dinge vereinfachen und alles in einer Instanz zusammenfassen.
Ist dies mit der neuen Einstellung derzeit möglich?
Ja, das ist ein interessanter Fall, aber mit den aktuellen Seiteneinstellungen ist das nicht möglich.
Es fallen mir ein paar Alternativen ein:
Erstelle eine benutzerdefinierte Startseite für beide und verzweige basierend auf der Benutzerprüfung (offensichtlich etwas mehr Wartungsaufwand im Vergleich zur Verwendung einer Standardlösung)
Die Benutzeroberflächen-Einstellung für „Standard-Startseite“ überschreibt die benutzerdefinierte Themens Startseite, also könnte eine kleine Anpassung zur Nutzung dieser Einstellung funktionieren… so etwas wie
Ich bin etwas zurückhaltend, was den Verlust der Möglichkeit betrifft, dass Benutzer ihre eigene Startseite auswählen können. Aber andererseits tun das auch nur wenige tatsächlich.