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.