Composant de thème pour les en-têtes de catégories Discourse

Salut, désolé, je suis un débutant total sans aucune compétence en codage :frowning:
Avez-vous les instructions d’installation pour ce composant ?
Normalement, il y a un bouton « Installer ce composant de thème », mais je ne le trouve pas… J’ai déjà installé de nombreux composants sur mon site…

Le bouton bleu avec le texte « Installer ce composant de thème ». (Légendé par l'IA)

J’apprécie énormément votre temps et vos conseils !

Salut @Angela_MRS,

Si vous suivez l’image ci-dessous, vous pouvez l’installer de cette façon sans sélectionner le bouton d’installation.

Ceci si vous êtes administrateur ou propriétaire du forum.

1 « J'aime »

Merci beaucoup @Aaron_Walsh :heart_eyes:

@Angela_MRS Il y a aussi un lien vers le guide sur la façon de l’installer.

2 « J'aime »

Petite demande, pouvez-vous faire en sorte que la couleur du lien ‘En savoir plus’ soit la même que celle du reste du texte ?

Mes liens sont réglés sur un bleu foncé moyen, et beaucoup de mes bannières ont des couleurs sombres, donc le lien est pratiquement invisible.

Le reste du texte semble s’afficher automatiquement en blanc ou en noir en fonction de la couleur de fond. Pouvez-vous faire la même chose pour le lien aussi ?

Bonjour David,

Vous pouvez créer un composant de thème personnalisé et, en utilisant l’outil d’inspection des éléments dans votre navigateur (desktop), identifier l’élément et utiliser du CSS pour remplacer la couleur.

1 « J'aime »

Ce TC reçoit quelques dépréciations dans la console. Je soupçonne que le code a vraiment besoin d’un rafraîchissement :

Je pense que c’est un TC brillant, et qu’il comble une lacune que les TC #officiels n’ont pas. Ce serait formidable de le voir recevoir un peu plus d’attention, mais je sais (ou du moins je soupçonne) que @Rhidian est passé à autre chose.

5 « J'aime »

Je viens de mettre à jour mon site et je suis venu dire la même chose.
S’IL VOUS PLAÎT S’IL VOUS PLAÎT S’IL VOUS PLAÎT…
Mettez à jour cet excellent composant. Je viens de créer un nouveau site qui l’utilise à merveille et je détesterais devoir trouver une alternative. Ce composant fait EXACTEMENT ce dont j’ai besoin.

1 « J'aime »

Et maintenant, cela mord un peu plus fort après une mise à jour récente :

image

3 « J'aime »

Espoir d’une mise à jour.

1 « J'aime »

@nathank @tknospdr @CAX.DO J’ai ouvert une PR pour corriger les problèmes de compatibilité, en utilisant maintenant un fichier gjs au lieu des balises script obsolètes.

J’espère que cela sera approuvé :crossed_fingers:.

10 « J'aime »

J’ai contacté @Rhidian par une autre méthode - j’espère qu’il pourra y jeter un œil bientôt.

@NateDhaliwal - juste par curiosité, seriez-vous ouvert à reprendre le dépôt et le sujet méta pour ce TC à l’avenir ?

3 « J'aime »

Salut Nathan, j’ai marqué la PR comme brouillon pour l’instant car je cherche à remplacer certains aspects par une approche différente.

3 « J'aime »

J’ai converti le système de widgets en un composant Glimmer et j’ai ajouté la fonctionnalité suivante :

dans le paramètre show_parent_category_background_image.

La nouvelle PR est :

Personnellement, je n’ai aucune idée de comment j’ai ajouté 3000 lignes de code.

5 « J'aime »

Merci Nate. C’est un travail fantastique. J’ai fusionné votre pull request. C’est formidable de voir ce composant recevoir une mise à jour significative pour le rendre compatible avec les nouvelles fonctionnalités de Discourse. :beating_heart:

1 « J'aime »

PS - Je serais reconnaissant pour toute aide concernant la mise à jour des problèmes de compatibilité avec ce composant, que certains trouvent utile. Ce devrait être un travail plus simple !

1 « J'aime »

Pas de problème, je suis heureux de rendre la pareille !

1 « J'aime »

Bonjour ! J’ai reçu une notification sur mon site pour mettre à jour ce composant de thème, et quand je l’ai fait, tout le site a planté et ma page principale a disparu. J’ai pu le retirer du site, mais est-ce que cela est lié à ces mises à jour ?

Presque certainement ! Heureux que vous ayez pu le supprimer.
Pourriez-vous le réinstaller (peut-être dans un thème de développement séparé) et essayer de capturer les erreurs de console ? Il serait également utile de savoir comment vous l’avez configuré.

Bug avec les balises HTML

J’ai également constaté un petit bug : les balises HTML ne s’affichent pas correctement dans les en-têtes de catégorie :

Sans le TC

Avec le TC

De plus, la taille du texte de description « normal » ne semble pas correspondre à celle de base (dans mon exemple ci-dessus, le TC est réglé sur plus grand).

1 « J'aime »

Salut @nathank, merci pour ta réponse rapide ! J’ai essayé de créer un thème de test et j’y ai appliqué ce composant de thème. Je pense que c’est la bonne erreur :

Message (4397 copies signalées)

[db6814] ActionController::RoutingError (Aucune route ne correspond à [GET] "/admin/customize/user_fields.json")
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'


Backtrace

actionpack (7.2.2.1) lib/action_dispatch/middleware/debug_exceptions.rb:35:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster (2.20.0) lib/logster/middleware/reporter.rb:40:in `call'
railties (7.2.2.1) lib/rails/rack/logger.rb:41:in `call_app'
railties (7.2.2.1) lib/rails/rack/logger.rb:29:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/request_id.rb:33:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
plugins/z-communiteq-features/plugin.rb:142:in `call'
rack (2.2.10) lib/rack/method_override.rb:24:in `call'
rack (2.2.10) lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler (3.3.1) lib/mini_profiler.rb:191:in `call'
lib/middleware/processing_request.rb:12:in `call'
message_bus (4.3.8) lib/message_bus/rack/middleware.rb:60:in `call'
lib/middleware/request_tracker.rb:385:in `call'
actionpack (7.2.2.1) lib/action_dispatch/middleware/remote_ip.rb:96:in `call'
rails_multisite (6.1.0) lib/rails_multisite/middleware.rb:26:in `call'
plugins/z-communiteq-features/plugin.rb:168:in `call'
railties (7.2.2.1) lib/rails/engine.rb:535:in `call'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `public_send'
railties (7.2.2.1) lib/rails/railtie.rb:226:in `method_missing'
rack (2.2.10) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.10) lib/rack/urlmap.rb:58:in `each'
rack (2.2.10) lib/rack/urlmap.rb:58:in `call'
unicorn (6.1.0) lib/unicorn/http_server.rb:634:in `process_client'
unicorn (6.1.0) lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn (6.1.0) lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn (6.1.0) lib/unicorn/http_server.rb:143:in `start'
unicorn (6.1.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

Env

HTTP HOSTS: community.eaie.org

Il y a clairement un problème entre ce composant et un autre que j’utilise : GitHub - discourse/discourse-minimal-category-boxes car lorsque je le supprime, la page d’accueil s’affiche. Si je ne le supprime pas, j’obtiens juste une page blanche.

Vue normale :

Vue avec les boîtes de catégorie minimales supprimées :

Vue avec les boîtes de catégorie minimales présentes :

Mais je ne pense pas que ce soit toute l’histoire, car même avec les boîtes de catégorie minimales supprimées, lorsque je clique sur une catégorie, cela ne fonctionne pas, j’obtiens juste une page blanche :

Voici les paramètres que j’ai utilisés dans le composant de thème :

[
	{
		"setting": "show_category_name",
		"value": true
	},
	{
		"setting": "show_category_description",
		"value": true
	},
	{
		"setting": "description_text_size",
		"value": "larger"
	},
	{
		"setting": "text_align",
		"value": "left"
	},
	{
		"setting": "show_subcategory_header",
		"value": true
	},
	{
		"setting": "show_parent_category_name",
		"value": false
	},
	{
		"setting": "show_lock_icon",
		"value": true
	},
	{
		"setting": "category_lock_icon",
		"value": ""
	},
	{
		"setting": "show_category_logo",
		"value": true
	},
	{
		"setting": "show_parent_category_logo",
		"value": false
	},
	{
		"setting": "show_site_logo",
		"value": false
	},
	{
		"setting": "position_logo",
		"value": "left"
	},
	{
		"setting": "size_logo",
		"value": "standard"
	},
	{
		"setting": "header_style",
		"value": "banner"
	},
	{
		"setting": "header_background_image",
		"value": "cover"
	},
	{
		"setting": "show_parent_category_background_image",
		"value": false
	},
	{
		"setting": "show_mobile",
		"value": false
	},
	{
		"setting": "force_mobile_alignment",
		"value": false
	},
	{
		"setting": "hide_if_no_category_description",
		"value": true
	},
	{
		"setting": "hide_category_exceptions",
		"value": ""
	},
	{
		"setting": "show_read_more_link",
		"value": false
	},
	{
		"setting": "read_more_link_text",
		"value": ""
	}
]

Désolé si c’était trop d’informations ! Je ne savais pas ce qui était pertinent ici. Merci ! Nous adorons ce composant de thème, j’espère donc que nous pourrons le résoudre.

1 « J'aime »