Composant Thème Masqueur de Catégorie

Bonjour à tous, j’ai créé un composant de thème simple. J’espère que cela pourra être utile à certains !

:eyeglasses: Aperçu

Il s’agit d’un composant de thème qui vous permet de masquer des catégories spécifiques soit dans le menu hamburger, soit dans les boîtes de catégories.

:thinking: Pourquoi auriez-vous besoin de ce composant ?

Si votre site Discourse comporte de nombreuses catégories et que vous souhaitez en masquer certaines dans la barre de menu ou sur la page d’accueil, ce composant peut vous être utile.

:framed_picture: Captures d’écran

Aperçu du menu hamburger : Avant → Après

:gear: Menu des paramètres :

Vous trouverez plus de détails sur l’utilisation de ce composant de thème ainsi que les instructions d’installation sur le dépôt GitHub du composant.

14 « J'aime »

Cela a l’air plutôt sympa, mais quel avantage cela vous apporte-t-il par rapport à la mise en sourdine d’une catégorie ?

5 « J'aime »

Corrigez-moi si je me trompe, mais d’après ce que j’ai compris, lorsque je mute une catégorie, cela signifie essentiellement qu’il n’y aura plus de notifications ? :thinking: Quand j’ai essayé de muter une catégorie, elle apparaît toujours dans le menu hamburger et dans les boîtes de catégories.

Ce composant de thème est davantage un changement esthétique. Il masque visuellement les catégories souhaitées, mais conserve les notifications et toutes les autres fonctionnalités de la catégorie intactes.

2 « J'aime »

Cela ne se produit (je pense) que si l’utilisateur a un sujet dans l’une de ces catégories qui n’est pas masqué.

Votre composant empêcherait cela de se produire, ce qui pourrait être utile dans des situations où vous voulez vraiment supprimer la catégorie et garder les choses ordonnées.

4 « J'aime »

Salut Keegan,

Ce composant ressemble exactement à ce dont nous aurons besoin à l’avenir. Notre cas d’usage est très spécifique : nous souhaitons masquer les sous-catégories d’une catégorie parente particulière.

En combinaison avec l’extrait de code provenant de ce lien, cela pourrait réaliser exactement ce que nous recherchons :

2 « J'aime »

Bonjour, cela semble être cassé après la dernière mise à jour de Discourse.

1 « J'aime »

@Heliosurge Merci de me l’avoir signalé, je corrigerai cela dès que possible et publierai une mise à jour ici.

2 « J'aime »

Salut @Heliosurge,

Les problèmes liés au composant de thème sont maintenant résolus. Tout devrait fonctionner correctement désormais.

3 « J'aime »

Merci, Keegan. C’est une idée intéressante, car j’avais déjà publié un sujet d’aide après avoir utilisé du CSS auparavant pour réaliser cela.

Un membre, @manuel, m’avait fourni un excellent bout de code CSS, car j’utilisais cela pour masquer de nombreuses sous-catégories afin que seuls les parents s’affichent dans le menu hamburger.

Donc, en y réfléchissant, peut-être ajouter un interrupteur pour masquer uniquement les sous-catégories.

.hamburger-panel .category-link.subcategory {
      display:none;
}

Ce paramètre peut rendre les choses très pratiques si les utilisateurs ont beaucoup de sous-catégories à masquer.

4 « J'aime »

@Heliosurge

Ça semble très pratique ! Merci ! Je l’ai maintenant ajouté à ce composant de thème, vous pouvez donc désormais activer ou désactiver la possibilité de masquer les sous-catégories dans le menu hamburger et/ou dans le contexte de la liste des catégories.

3 « J'aime »

Super ! Merci, continuez ce travail formidable.

:clinking_beer_mugs::smiling_face_with_sunglasses::+1::sparkles:

1 « J'aime »


Bonjour @keegan
Pouvons-nous masquer la catégorie dans le menu supérieur ?
Merci !

Je reçois l’erreur suivante lors de l’installation (sur 3.1.0beta3) :

Erreur : attendu ]. ┌──> /tmp/discourse_theme_526e702e5adb76bf8137c869c5f6d389/discourse-category-hider/stylesheets/mobile/categories.scss 6 │ [data-category-id=‘#{$box}’] { │ ^^^^ ╵ ╷ 1 │ [data-category-id=“str-split(, "|")”] │ ━ erreur dans la sortie interpolée ╵ mobile/categories.scss 6:26 @import /var/www/discourse/mobile.scss 1:993 root stylesheet

2 « J'aime »

oui, ce serait utile sauf que l’installation est maintenant cassée pour la dernière version de Discourse.

Je viens de publier un correctif, veuillez réessayer l’installation/la mise à jour du composant.

Je viens d’ajouter cette fonctionnalité. Vous pouvez maintenant ajouter le nom de la catégorie au paramètre de thème category_breadcrumb pour masquer certaines catégories du menu déroulant des miettes de pain de catégorie.

5 « J'aime »

Excusez-moi, mais pas d’effet


Ai-je raison ?

1 « J'aime »

Assurez-vous d’utiliser le nom de la catégorie pour celle-ci, et non son slug.

3 « J'aime »

Merci,
Succès,
Tout le monde, remarquez les majuscules ou les minuscules

4 « J'aime »

Salut

Ce composant fonctionne bien dans l’écran de catégorie standard et le fil d’Ariane, cependant :

Il ne supprime pas les catégories du menu hamburger, sauf si la barre latérale est définie sur héritée.

Y a-t-il un moyen de masquer les catégories dans la barre latérale/hamburger standard ?

J’ai essayé le paramètre « catégorie hamburger », mais je n’arrive pas à le faire fonctionner.

Merci

2 « J'aime »

Salut @martyn_thomas

Vous pouvez définir les catégories dans le menu de navigation avec les paramètres d’administration - default_navigation_menu_categories - ce paramètre vous permet de sélectionner les catégories qui seront affichées par défaut dans la section Catégories du menu de navigation. Les utilisateurs peuvent outrepasser cela et personnaliser leur propre section de menu de catégories en cliquant sur l’icône du crayon à côté de l’en-tête Catégories, tout comme vous pouvez le faire, et cela devrait généralement être encouragé.

2 « J'aime »