Ce composant de thème vous permet de personnaliser le bouton « Nouveau sujet » sur la liste des sujets d’une catégorie ou d’une étiquette, ainsi que le nom de l’action et le bouton dans le compositeur (surligné ci-dessous). Si vous avez une catégorie Bug, par exemple, vous pouvez modifier ces textes pour dire « Signaler un bug » :
Ce paramètre vous permet de définir le filtre (nom de l’étiquette ou de la catégorie), l’icône du bouton « Nouveau sujet » (cela ne change pas les icônes dans le compositeur), ainsi que le nom de l’action en haut du compositeur et le bouton « Créer un sujet » du compositeur.
Il existe un paramètre supplémentaire, activé par défaut, appelé inherit parent category. Lorsqu’il est activé, toutes les catégories enfants verront également leur texte modifié (sauf indication contraire dans les paramètres).
\u003e:information_source: Notez que si vous configurez une étiquette, elle remplacera la catégorie sélectionnée.
Idées pour de futures améliorations
Texte localisable pour différentes langues
Prise en charge des combinaisons de catégories et d’étiquettes, et de plusieurs étiquettes
\u003cbr\u003e
\u003e:discourse2: Hébergé par nous ? Les composants de thème sont disponibles pour utilisation sur nos plans Standard, Business et Enterprise.
Aujourd’hui, je travaillais sur une version beaucoup plus simple de cela en utilisant api.customizeComposerText()
C’est une bien meilleure solution. Merci @awesomerobot !
Dans mes expériences, je n’ai jamais pu remplacer l’étiquette du bouton du compositeur pour les catégories en utilisant le plugin discourse-post-voting. Cela devient un problème plus important lorsque plusieurs catégories sont activées pour le vote de messages.
Si je puis me permettre ; activer la prise en charge du remplacement des étiquettes de discourse-post-voting serait une excellente amélioration. ( :
Ceci est un excellent composant de thème ! Une idée pour aller plus loin pourrait être la suivante :
Si vous renommez le bouton parce que vous souhaitez effectivement changer le type de sujet, alors vous devriez changer la dénomination dans toute la *catégorie.
Par exemple :
Vous avez une catégorie appelée Événements. Vous changeriez effectivement le mot « sujet » dans toute la catégorie en « événements ». Ce n’est pas « Nouveau Sujet », c’est « Nouvel Événement », au lieu d’une liste de Sujets, vous auriez une liste d’Événements, etc.
Vous voyez cela dans d’autres outils où vous changez l’utilisation principale de quelque chose. Voici ce que fait AirTable lorsque vous créez une nouvelle table. Les tables, par défaut, ont des « enregistrements ».
Traiter le composant de thème de cette manière nous permettrait de renommer facilement et efficacement une catégorie en une entité plus spécifique. Demandes de support, Événements, etc.
J’ai trouvé ce composant de thème en cherchant, car je voulais changer ce mot pour « Sujet » en « Événements » :
Il modifie également le texte du bouton Répondre avec la même chaîne, ce qui est moins idéal car il ne s’agit pas de créer un autre rapport de bug, c’est une réponse
Quelles sont les chances qu’un autre champ puisse être ajouté à l’éditeur pour modifier le texte du bouton de réponse (ou le laisser vide pour le laisser tel quel Répondre) ?
Désolé, une dernière chose : cela ne semble pas non plus respecter le cas où deux sous-catégories (chacune d’un parent différent) ont le même slug. par exemple :
parent1
sous1
parent2
sous1
Dans ce cas, je ne peux pas obtenir le composant de thème pour différencier les deux sous-catégories, et elles partagent toutes deux la même configuration de l’éditeur.
J’avais complètement oublié le bouton de réponse ! Pour l’instant, je l’ai juste laissé tel quel (reply), mais un réglage séparé pour changer son texte serait logique.
Bon point, il semble que l’utilisation de l’ID de catégorie plutôt que du nom de catégorie dans les paramètres serait la meilleure façon d’éviter cela. Cela signifie donc que tous les paramètres existants que vous avez mis en place devront être mis à jour.
Est-il possible de corriger la différence de taille des boutons ? (ancienne capture d’écran, votre dernière mise à jour a corrigé le problème des doubles boutons)
Hmm, j'essaie d'utiliser ce composant sans succès et je vois beaucoup d'avertissements dans mes logs comme celui-ci.
Message (4 copies signalées)
[DiscourseJsProcessor] DÉPRÉCATION : L’utilisation de {{attrs}} pour référencer des arguments nommés est dépréciée. {{attrs.canCreateTopic}} devrait être mis à jour en {{@canCreateTopic}}. (‘discourse/components/custom-new-topic-button.hbs’ @ L2:C8) [deprecation id: attrs-arg-access] Voir Ember.js - Deprecations pour plus de détails.
at theme-transpiler.js:3164:26752
at j.computed (theme-transpiler.js:3168:1693)
at j.computed (theme-transpiler.js:3168:161)
at j.computed (theme-transpiler.js:3168:1693)
at D (theme-transpiler.js:3168:1754)
at te (theme-transpiler.js:3168:1318)
at PathExpression (theme-transpiler.js:3198:21763)
at yo (theme-transpiler.js:3187:2776)
at Al (theme-transpiler.js:3187:3513)
at Ml (theme-transpiler.js:3187:3309)
at yo (theme-transpiler.js:3187:3013)
at Al (theme-transpiler.js:3187:3513)
at Ml (theme-transpiler.js:3187:3309)
at yo (theme-transpiler.js:3187:3013)
at Ml (theme-transpiler.js:3187:3350)
at yo (theme-transpiler.js:3187:3013)
at Al (theme-transpiler.js:3187:3513)
at Ml (theme-transpiler.js:3187:3309)
at yo (theme-transpiler.js:3187:3013)
at Bi (theme-transpiler.js:3187:3879)
at PA (theme-transpiler.js:3190:3002)
at Cf (theme-transpiler.js:3190:9856)
at Al (theme-transpiler.js:3176:35353)
at gf (theme-transpiler.js:3176:35600)
at D (theme-transpiler.js:3198:42250)
at Sft.o.precompile (theme-transpiler.js:3281:3078)
at dDe (theme-transpiler.js:3161:1003)
at e.CallExpression (theme-transpiler.js:3159:33796)
at h (theme-transpiler.js:10:111797)
at e.uPe [as _call] (theme-transpiler.js:59:16906)
at e.oPe [as call] (theme-transpiler.js:59:16726)
at e.lPe [as visit] (theme-transpiler.js:59:17700)
at t.visitQueue (theme-transpiler.js:59:40645)
at t.visitSingle (theme-tr…
Trace
/var/www/discourse/lib/discourse_js_processor.rb:133:in block in create_new_context' mini_racer-0.8.0/lib/mini_racer.rb:273:in block in attach’
mini_racer-0.8.0/lib/mini_racer.rb:242:in call_unsafe' mini_racer-0.8.0/lib/mini_racer.rb:242:in block (2 levels) in call’
mini_racer-0.8.0/lib/mini_racer.rb:369:in timeout' mini_racer-0.8.0/lib/mini_racer.rb:241:in block in call’
mini_racer-0.8.0/lib/mini_racer.rb:240:in synchronize' mini_racer-0.8.0/lib/mini_racer.rb:240:in call’
/var/www/discourse/lib/discourse_js_processor.rb:168:in block in v8_call' /var/www/discourse/lib/discourse_js_processor.rb:167:in synchronize’
Hmm étrange, je l’ai testé sur la dernière version de Discourse et tout fonctionne bien — je viens de fusionner une mise à jour du composant qui résoudra ce problème de dépréciation, pouvez-vous mettre à jour et réessayer ?
Lorsque vous utilisez votre composant, le bouton change de nom, mais appuyer dessus ne lance plus le Wizard sélectionné dans les paramètres de catégorie. Nous serions heureux d’utiliser votre composant sur un grand site de production, mais nous ne le pouvons pas pour le moment. J’espère que cela pourra être résolu. Aucune pression
Je ne vois pas cela, j’ai la même configuration et mes boutons fonctionnent. Vous devrez peut-être examiner d’autres plugins ou TC. Je suis sur les dernières versions pour information.
Ainsi, l’option de personnaliser également le texte du bouton de réponse dans le compositeur et sur les messages (toujours basé sur la balise et la catégorie) sera incluse.