En-tête des catégories mises en avant

:bookmark_tabs: Summary Feature categories on select views.
:hammer_and_wrench: Repository Link Manuel Kostka / Discourse / Components / Featured Categories · GitLab
:open_book: New to Discourse Themes? Beginner’s guide to using Discourse Themes

Install this theme component

Cards view

List view

Settings

You can switch between the two above layouts or choose none and declare your own styles. You can also pick a route and set an outlet for the component.

Template

.featured-categories {
  &__container {
  }
  &__heading {
  }
  &__list-container {
  }
  &__category-container {
  }
  &__category-link {
    .category-logo {}
    .category-name {}
    .category-description {}
}
28 « J'aime »

Handy TC, thank you.

A toggle to display only on homepage, display site logo, and display site description under logo would be desirable additions I imagine.

2 « J'aime »

Right now it shows on global lists (latest/new/unread/top). I was thinking of adding a drop-down to settings to select the global pages it should show. So, yes, on my roadmap when I have time for this again!

What would be the use case for having the logo? On the global pages you’re almost “home” anyways?

What I’d actually be most interested in adding is a mobile view. I didn’t have an idea for that so far, so it’s just not shown on mobile. Thanks for sharing If you’d have an idea for that!

4 « J'aime »

Personalized aesthetics, and combined with a short description, would be quick insight about a community for new visitors, and serve as a reminder for existing users about the mission of the community. Positioned above or left of the links.

Displaying this on global links by default, as well as optionally per category (and tag pages?), would serve as a convenient navigation menu for prioritized areas - this would be my primary intended use. (By the way, the ability to include custom links - not only categories - would be another desirable feature.)

Personally, I find that most Discourse sites tend to be on the vague side especially upon initial visit, and by default I think Discourse navigation can be confusing for the average user. Generally my sites are designed to prioritize only a few areas (of many), and these proposed additions would make it very clear to the average user what those areas are, as well as easy to access.

Good component,
We have installed Versatile Banner, how can we move this component UNDER Versatile Banner?
So that the component Versatile Banner is shown first and then yours.
Thank you.

Yes, both components are rendered on the same outlet. I don’t know what causes the order of elements in that case? On my site it shows under the banner by default…

But you should be able to target the order with CSS declarations:

.below-site-header-outlet.categories-header {
  order: -1 !important;
}
.below-site-header-outlet.banner-themes {
  order: -2 !important ;
}
2 « J'aime »

This sounds like many custom options though. I wouldn’t want to add that much logic to this component.
Building a featured navigation sounds more like a use case for a custom html banner to me? You’d just need some links with images and titles.

I agree with that! I think dedicated banners for visitors and for newly-signed-up users can be helpful and welcoming.

2 « J'aime »

There’s a ‘swap default positioning’ in the Versatile Banner settings, if that’s any good to you?

swap default positioning

If there is another banner-related component active, use this to swap its position with the Versatile Banner

3 « J'aime »

Try this setting, it didn’t help me :frowning:

J’ai installé un composant de thème mais il ne s’intègre pas dans le contenu principal, ce qui le rend vraiment déplacé (laid), j’utilise le thème air.
Pouvez-vous m’aider s’il vous plaît où je peux faire apparaître le composant à l’intérieur du conteneur de couleur sombre ?

Cela ressemble à ceci :

Je voudrais que cela ressemble à ceci :

Bonjour,
Je débute avec Discourse et le theming…
Je voudrais avoir une sorte de cartes en haut, comme vous pouvez le voir ici : Secret World Legends - Funcom Forums
Ce composant de thème semble aider dans cette direction…
Je l’ai installé et j’ai pu sélectionner les catégories que je veux voir apparaître, mais je n’ai obtenu que les titres…
Ce qui est logique car je n’ai encore défini aucune image…

Ma question (qui est probablement une question stupide car personne d’autre ne l’a posée) est la suivante : comment puis-je définir l’image des catégories ?
Et comment puis-je les “télécharger” ?

Merci pour toute aide…

Accédez aux paramètres de vos catégories que vous avez utilisés pour créer une catégorie et sélectionnez l’onglet image.

Télécharger une image

2 « J'aime »

Salut, je suis nouveau sur Discourse et j’ai une question concernant l’en-tête des catégories mises en avant.

J’essaie d’obtenir ceci mais je n’y arrive pas.

Ils ont donné quelques lignes de code :

html.categories-header{
  .below-site-header-outlet.categories-header {
    .wrap {
      .categories-header-item {
        [lien, logo, nom de chaque élément...]
      }
    }
  }
}

Comment puis-je spécifier le lien, le logo et le nom de l’élément ?

Quelqu’un peut-il clarifier cela ?

Merci.

Salut, bienvenue :wave:

Si vous souhaitez afficher une image comme celle de l’exemple, vous devez sélectionner les catégories pertinentes dans les paramètres du composant de thème et vous assurer que chacune d’elles a une image assignée (paramètres de catégorie → Images → Logo de catégorie).

3 « J'aime »


Ceci est le paramètre du composant de thème « Catégories mises en avant » et je ne trouve rien :frowning:

Vous devez modifier votre paramètre de catégorie :

Cliquez sur l’onglet Images :

…et téléchargez une Image de logo de catégorie !

1 « J'aime »

J’ai une rangée de produits, comment puis-je diviser les produits en plusieurs colonnes ?

Quelque chose comme ça ?

Si oui, essayez ce CSS. Ajoutez-le à votre CSS de thème ou dans un composant.

À l’intérieur, vous pouvez voir des variables que vous pouvez contrôler.
Vous pouvez choisir le nombre de colonnes, l’écart entre les éléments et la largeur de chaque élément.
Les éléments s’empilent automatiquement.

.below-site-header-outlet.categories-header > div.wrap {
    --ch-columns: 6;
    --ch-gap: 2.5em;
    --ch-width: 110px;
    
    display: grid !important;
    
    grid-template-columns: repeat(auto-fill, minmax(var(--ch-width), 0fr));
    gap: var(--ch-gap) !important;
    
    max-width: calc(var(--ch-columns) * var(--ch-width) + ((var(--ch-columns) - 1) * var(--ch-gap))) !important;
}
3 « J'aime »

Merci pour votre aide.

Puis-je demander une aide supplémentaire ?


C’est ce que j’essaie de réaliser.

Pouvez-vous m’aider à ce sujet ?

Essayez quelque chose comme ceci :

.below-site-header-outlet.categories-header > div.wrap {
    --ch-columns: 4;
    --ch-gap-row: 2em;
    --ch-gap-col: 6em;
    --ch-width: 120px;
    
    > div {
        width: var(--ch-width);
    }
    
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    
    max-width: calc(var(--ch-columns) * var(--ch-width) + ((var(--ch-columns) - 1) * var(--ch-gap-col))) !important;
}
4 « J'aime »