Willkommensbanner auf die Homepage des Benutzers beschränken

Okay, hier ist eine funktionierende Lösung. In meinem Beispiel wird das Willkommensbanner nur auf der Seite /latest angezeigt, unabhängig von den Benutzeroberflächeneinstellungen der Benutzer. Ich werde es Ihnen ermöglichen, es so anzupassen, dass es nur auf der Seite /categories angezeigt wird. :slight_smile:

  1. Stellen Sie die Einstellung “Welcome Link Banner show on” auf “all” oder “discovery” ein, je nachdem, auf welcher Seite (oder welchen Seiten) das Banner angezeigt werden soll.

  2. Fügen Sie dieses Skript in Ihr Theme ein:

    <script type="text/discourse-plugin" version="1.4.0">
        // zeigt das Willkommensbanner nur auf der /latest-Seite an
        api.onPageChange(() => {
            const router = api.container.lookup('service:router');
    
            if (router.currentRoute.name === 'discovery.latest') {
                document.body.classList.add('route-discovery-latest');
            } else {
                document.body.classList.remove('route-discovery-latest');
            }
        });
    </script>
    
  3. Fügen Sie dieses CSS zu Ihrem Theme hinzu:

    body:not(.route-discovery-latest) .welcome-link-banner-connector {
       display: none;
    }
    

Referenz verwendet:

8 „Gefällt mir“