Icônes de catégories

Oui, je pense que votre meilleure option est de toujours définir le bon préfixe. Le plugin FontAwesome Pro remplace uniquement les icônes de base par le style que vous avez sélectionné. Consultez ce fichier pour la liste des icônes converties :

comments ne figure pas dans cette liste, il utilise donc par défaut l’icône de base.

4 « J'aime »

J’ai créé un composant de thème pour ajouter une icône dans la vue du calendrier du plugin Events.

Il utilise le widget category-icon, qui n’affiche pas d’icône pour les sous-catégories. J’ai donc dû ajouter un « mode forcé » de cette manière :

  api.createWidget("category-icon", {
    tagName: "div.category-icon-widget",
    html(attrs) {
      let iconItem = getIconItem(attrs.category.slug);
      let force_display = ('force_display' in attrs);
      if(iconItem && (!attrs.category.parent_category_id || force_display)) {
        let itemColor = iconItem[2] ? `color: ${iconItem[2]}` : "";
        let itemIcon = iconItem[1] != '' ? iconNode(iconItem[1]) : "";
        return h("span.category-icon", { "style": itemColor }, itemIcon);
      }
    }
  });

Voyez-vous un moyen d’obtenir le même résultat sans cette astuce ?
Si non, seriez-vous prêt à intégrer cela dans le code ?

Merci d’avance.

2 « J'aime »

Bonjour Penar, ce composant provoque un problème de tri étrange dans les catégories. Voici les étapes pour reproduire le problème :

  1. Définissez le tri d’une catégorie sur Créé > Descendant, la catégorie affichera le tri correctement.
  2. Visitez un sujet dans la catégorie.
  3. Cliquez sur le fil d’Ariane pour revenir à la catégorie.
  4. Maintenant, la catégorie trie par plus récent, et non par date de création. Vous pouvez rafraîchir la page pour retrouver le tri correct.

Il a fallu pas mal d’enquête pour identifier ce TC comme étant le problème, c’est très étrange !

Voici une capture de cette situation en action,

Le sujet 1 a été créé en premier mais possède une réponse.
Le sujet 2 a été créé en second et n’a pas de réponse.

Avec le tri par Created, le sujet 2 devrait être en haut de la liste, ce qui est le cas au départ, mais après avoir visité un sujet et cliqué sur le fil d’Ariane, le sujet 1 se retrouve en haut de la liste.

2 « J'aime »

Merci pour le rapport détaillé @davidkingham, un bug très sournois. J’ai posté une correction.

2 « J'aime »

Après la mise à jour d’aujourd’hui, j’ai dû désactiver cette fonctionnalité, car elle détruit ma page d’accueil et mes catégories. Je pourrais poster une capture d’écran ici, mais mon forum est réservé aux 21 ans et plus. Alors, @pmusaraj, je t’enverrai la capture d’écran par message privé.

2 « J'aime »

Merci pour le rapport @zooy0rk, ce problème est également résolu.

5 « J'aime »

La nouvelle mise à jour semble casser toute l’interface utilisateur de mon site

2 « J'aime »

Avez-vous des erreurs dans la console ? Quelle version de Discourse utilisez-vous ?

1 « J'aime »

D’accord, j’ai mis à jour vers la dernière version 2.6.0.beta1 et cela semble avoir résolu le problème.

4 « J'aime »

J’espère obtenir de l’aide pour un problème que je rencontre… J’essaie d’utiliser ce composant de thème pour remplacer simplement l’icône de verrouillage de catégorie par une étoile, mais les résultats sont mitigés.

Cela modifie l’icône pour la liste des derniers sujets :

Et pour le menu déroulant des catégories :

Mais cela ne change pas l’icône à côté de la catégorie sur la page d’accueil de la liste des catégories (/categories) ; c’est toujours un cadenas :

Est-ce que je manque quelque chose ? J’ai l’impression d’oublier quelque chose ici…

Voici les paramètres du thème :

Toute aide pour résoudre l’énigme de la raison pour laquelle cette icône de cadenas persiste serait géniale !! Merci !

3 « J'aime »

Essayez far-star pour le nom de l’icône au lieu de simplement « star ». « far » est pour les icônes régulières, « fab » est pour les icônes de marques.

C’est une limitation du composant ; il ne s’interconnecte pas avec les pages /categories. Je vais examiner la possibilité de corriger cela, ce qui nécessitera probablement d’abord une modification du cœur du système.

3 « J'aime »

Si vous essayez de changer toutes les icônes de cadenas en étoiles, vous pouvez créer un nouveau composant de thème et ajouter ceci à la section En-tête :

<script type="text/discourse-plugin" version="0.8">
      api.replaceIcon('lock', 'star');
</script>
4 « J'aime »

Merci @davidkingham, c’est brillant ! J’y ai réfléchi et je suis ravi de remplacer tous les cadenas par des étoiles. Et ton code fonctionne parfaitement. Merci beaucoup :clap:

3 « J'aime »

Pour la petite histoire, le noyau et ce composant ont également été mis à jour, et le composant met désormais à jour l’icône de cadenas sur les pages /categories.

5 « J'aime »

https://github.com/discourse/discourse-category-icons/pull/6

Veuillez également envisager une correction pour l’affichage des icônes des sous-catégories, comme décrit dans Category Icons - #50 by md-misko

3 « J'aime »

@ScammerRevolts @zooy0rk Haha, j’ai eu le même problème. Je suis vraiment content que cela n’ait pas été plus grave, je n’aurais jamais deviné que c’était la cause, car j’avais d’autres erreurs liées à PostgreSQL pendant la reconstruction. :sweat_smile: J’étais déjà en train de préparer une nouvelle instance pour restaurer une sauvegarde. Tout est parfaitement résolu maintenant que ce composant a été mis à jour ; il était en retard d’environ 4 révisions, je crois.

Le mode sans échec a été très utile pour identifier le problème : Using Safe Mode to troubleshoot issues with themes and plugins

2 « J'aime »

C’est maintenant fusionné @md-misko, merci pour la PR !

J’ai également ajouté une petite correction au cœur pour afficher ces icônes dans la mise en page Boîtes avec sous-catégories pour /categories.

2 « J'aime »

Je vois les icônes de sous-catégories lorsque « Style de liste des sous-catégories » est défini sur « Boîtes avec sujets en vedette », mais pas lorsqu’il est défini uniquement sur « Boîtes » ?

1 « J'aime »

Bon, la correction est intégrée au noyau, vous devez donc reconstruire votre site.

3 « J'aime »