Restreindre la bannière de bienvenue à la page d'accueil de l'utilisateur

D’accord, voici une solution fonctionnelle. Dans mon exemple, la bannière de bienvenue s’affichera uniquement sur la page /latest, indépendamment des paramètres d’interface de l’utilisateur. Je vais vous laisser la personnaliser pour qu’elle s’affiche uniquement sur la page /categories. :slight_smile:

  1. Définissez le paramètre show on du Welcome Link Banner sur “all” ou “discovery”, en fonction de la ou des pages où vous souhaitez afficher la bannière.

  2. Ajoutez ce script dans votre thème :

    <script type="text/discourse-plugin" version="1.4.0">
        // montre la bannière de bienvenue uniquement sur la page /latest
        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. Ajoutez ce CSS à votre thème :

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

Référence utilisée :

8 « J'aime »