Listes en vedette

:information_source: Résumé Créer et présenter des listes de sujets personnalisées
:hammer_and_wrench: Dépôt Manuel Kostka / Discourse / Components / Featured Lists · GitLab
:question: Guide d’installation Comment installer un thème ou un composant de thème
:open_book: Nouveau aux thèmes Discourse ? Guide pour débutants sur l’utilisation des thèmes Discourse

Installer ce composant de thème

Le composant vous permet de filtrer des listes de sujets personnalisées et de les présenter sur votre forum.

Apparence par défaut

Éditeur de paramètres

Style

Pour le style CSS, la structure du composant est :

.featured-lists {
  &__wrapper { }

  &__list-container { }

  &__list-header { }

  &__list-body { }
}

Par exemple, vous pourriez styliser un look de tableau d’école ancienne :

Ou des panneaux modernes et minimalistes :

Si vous faites des styles personnalisés, veuillez les partager sur ce sujet ! :sparkles: :sparkling_heart:

26 « J'aime »

Salut, comment puis-je empêcher l’affichage du sujet de la catégorie dans les listes mises en avant ?

Est-il également possible de masquer une ligne s’il n’y a pas de sujets à l’intérieur ? Par exemple, si j’utilise une ligne pour les nouveaux sujets, elle s’affiche vide avec les informations de la ligne mais sans sujets.

1 « J'aime »

Merci pour vos commentaires ! Je viens de mettre à jour le composant, il ne rend donc plus les listes vides.

Je ne vois pas de classe dédiée pour les sujets « à propos ». Mais vous pourriez utiliser une déclaration de style pour masquer les sujets épinglés des listes de fonctionnalités :

.featured-lists__list-body .topic-list-item.pinned {
  display: none;
}
2 « J'aime »

Merci pour la mise à jour, cela fonctionne très bien. Est-il possible à l’avenir que le bouton de publication par plus publie dans la catégorie désignée pour la ligne correspondante ?

2 « J'aime »

Cela devrait déjà fonctionner comme suit :

  • Si vous définissez une catégorie ou une étiquette, le compositeur remplira l’une ou l’autre ou les deux.

  • Si la liste n’a pas de catégorie définie, le compositeur remplira avec la valeur du paramètre global catégorie du compositeur par défaut :

Comment cela ne fonctionne-t-il pas pour vous ?

2 « J'aime »

Beau composant @manuel, j’aime beaucoup ça, surtout la façon dont vous l’avez rendu facilement personnalisable pour qu’il puisse être adapté à d’autres thèmes. Excellent travail et merci de partager ! :clap: :slight_smile:

2 « J'aime »

Oui, cela fonctionne. Ce que je demandais, c’est si je définis une catégorie sur une ligne qui est différente de celle par défaut dans l’administration, une personne qui clique sur un article peut-elle aller dans cette catégorie et non dans celle définie dans les paramètres d’administration ?

Je ne suis pas sûr de ce que vous essayez d’accomplir… pourriez-vous l’expliquer avec un exemple ?

1 « J'aime »

Si je définis Afficher sur sur Partout
Comment masquer les listes de fonctionnalités lors de l’ouverture de sujets d’une catégorie spécifique ?

Vous pourriez soit forker le composant et ajouter votre condition spécifique à discourse-featured-lists/javascripts/discourse/components/featured-lists-wrapper.gjs at main · nolosb/discourse-featured-lists · GitHub.

Ou simplement utiliser quelques déclarations CSS pour masquer le composant dans vos catégories spécifiques.

Ce composant thématique est génial ! Désolé de déterrer ce sujet, mais j’ai une question à propos de ce composant.

Serait-il possible d’afficher des catégories au lieu de sujets ?

Par exemple, au lieu que le corps de cette liste contienne quatre sujets différents, il contiendrait quatre catégories différentes, et cliquer sur l’une d’elles vous dirigerait vers cette catégorie.

1 « J'aime »

Un joli plugin - merci ! Dans l’éditeur de plugin, j’ai essayé d’augmenter le nombre d’affichages de 3 à 5. Cela s’enregistre, mais revient ensuite à 3, même si plusieurs catégories ont plus de 3 articles. Existe-t-il un moyen de remplacer le max=3, ou une autre approche pour y parvenir ?

Avec l’éditeur, vous devez enregistrer deux fois, une fois dans la fenêtre de l’éditeur :

Et ensuite à nouveau sur la page principale du composant :

image

C’est peut-être ce qui cause votre problème ? Définir n’importe quel nombre de sujets fonctionne bien pour moi.

2 « J'aime »

C’était exactement ça ; j’avais oublié cette étape. Merci beaucoup pour votre réponse rapide et votre plugin très utile.

2 « J'aime »

Je me demande… Le sujet “À propos” ne pourrait-il pas être désépinglé et retiré de la liste ?

Je suppose que vous le pourriez. Le résultat serait cependant différent, le sujet étant généralement caché. D’après mon expérience, il est en fait plus courant de vouloir afficher une sélection des sujets les plus récents dans une liste mise en avant, tout en voulant que les sujets épinglés et « À propos » soient visibles ailleurs.

1 « J'aime »

Je serais curieux, étant donné qu’il s’agit d’un sujet spécial (c’est-à-dire que les gens ont découvert qu’ils ne veulent vraiment pas être supprimés). Le fait de désépingler et de ne pas lister n’affecterait-il pas, par exemple, la description de la catégorie dans les “Category Boxes” ?

Salut, ce composant fonctionne presque parfaitement pour moi, cependant j’aimerais avoir la possibilité de placer les listes en dessous au lieu de dessus.

image

Y a-t-il un moyen simple de le faire ? D’après ce que j’ai vu dans le dépôt, il semble que ce ne soit pas encore prévu.

@Maria vous pourriez placer le composant sur n’importe quelle sortie de plugin. Vous pouvez utiliser le composant Emplacements des sorties de plugin pour inspecter les sorties disponibles.

1 « J'aime »

@manuel @Lilly à propos de Css.
J’ai 2 listes de 2 catégories : Yoga et Fitness.
Je configure les deux listes pour qu’elles s’affichent partout.
Comment masquer la liste « Yoga » lors de l’ouverture d’un sujet (elle sera toujours affichée sur la page d’accueil, la catégorie et d’autres endroits) ?
La liste « Fitness » est toujours affichée partout.

Merci aux experts de Discourse