Suppression du support pour les « overrides de modèle » et les modèles spécifiques aux mobiles

Dans le passé, vous pouviez remplacer le modèle .hbs d’une route ou d’un composant Discourse en ajoutant un fichier de même nom dans le répertoire templates/ de votre thème et plugin. C’était très puissant, mais cela entraînait également des problèmes de maintenabilité importants.

Par conséquent, nous avons déconseillé les remplacements de modèles ces dernières années et les avons officiellement dépréciés en novembre 2024. Désormais, la meilleure solution consiste à utiliser les sorties de plugin enveloppantes pour rendre le contenu à la place du contenu principal.

Ce mois-ci (mars 2025), nous introduirons une bannière d’avertissement pour les administrateurs concernant les remplacements de modèles, et prévoyons de supprimer complètement la prise en charge avant la fin du T2.

Chronologie

(dates estimées - sujettes à modification)

  • :white_check_mark: Novembre 2024 - dépréciation introduite

  • :white_check_mark: Mars 2025 - bannière d’avertissement pour administrateurs activée

  • :white_check_mark: Juin 2025 - suppression de la fonctionnalité (visant la semaine du 2 juin)

Mise à niveau des thèmes / plugins

Les développeurs de thèmes et de plugins doivent se référer au guide des sorties de plugin pour en savoir plus sur les sorties de plugin enveloppantes. N’hésitez pas à ouvrir des PR ou des sujets Dev si vous souhaitez demander un nouveau point d’extension pour votre cas d’utilisation.

9 « J'aime »

Existe-t-il un moyen de voir facilement quel thème/plugin déclenche cet avis d’administration ? J’ai examiné tous mes thèmes et plugins et je ne vois pas de répertoire templates/ à la racine de leurs dépôts Git pour aucun d’entre eux.

2 « J'aime »

Il se trouve dans /assets/javascripts/discourse ou dans /javascripts/discourse, pas à la racine.

2 « J'aime »

La bannière d’avertissement doit afficher le nom du thème/plugin. Elle sera également imprimée dans la console du développeur du navigateur.

Sinon, nous avons peut-être un problème avec la dépréciation - pourriez-vous partager un lien vers un site concerné ?

Merci. Il ne s’affichait pas dans la bannière d’avertissement, mais il s’affichait dans la console du développeur, bien que pas très clairement.

Il s’est avéré que c’était ce composant.

4 « J'aime »

Merci @JonahAragon1. L’identification du thème devrait être bien plus claire que ça, je vais régler ça :yeux:

2 « J'aime »

Ce changement (https://github.com/discourse/discourse/commit/0e8d36d080d8a136b7d92a1f0022eca59924a560) corrigera la bannière d’avertissement afin qu’elle identifie plus clairement les thèmes :

4 « J'aime »

Avez-vous trouvé une solution pour rétablir DDG comme suggestion de recherche ? Je désactivé le composant pour le moment.

Non, j’ai juste décidé de désactiver complètement le formulaire. Je ne pense que personne dans ma communauté l’utilise et je n’en vois pas vraiment l’utilité. J’ai vu que l’auteur du composant a proposé une mise à jour qui nécessite un changement de base, donc ça fonctionnera probablement à nouveau bientôt.

2 « J'aime »

cela signifie que la carte utilisateur expérimentale sera introduite dans le cœur avant que celle-ci ne soit complètement dépréciée ? Je reçois actuellement cet avertissement pour ce composant GitHub - discourse/experimental-usercard

1 « J'aime »

Nous avons archivé le dépôt experimental-usercard et n’avons pas l’intention de mettre à jour davantage le composant de thème. Nous craignons donc que vous deviez le désactiver avant que les remplacements de modèles ne soient bloqués en juin 2025.

Nous espérons intégrer une partie de l’expérience au cœur du système à un moment donné, mais nous n’avons pas de calendrier précis à ce sujet. La carte utilisateur est une partie très personnalisée de l’interface utilisateur, de sorte que l’intégration de changements majeurs nécessitera une planification minutieuse et des changements dans l’ensemble de l’écosystème.

3 « J'aime »

Tout est en bonne voie pour atteindre cet objectif, nous avons donc l’intention de supprimer la prise en charge des remplacements de modèles la semaine commençant le 2 juin.

Comme cela se produira avant la sortie stable 3.5, nous avons rétroporté la bannière d’avertissement administrateur vers la version stable 3.4, afin que les communautés sur la version stable reçoivent un avertissement suffisant avant leur mise à jour vers la 3.5.

(cc @RGJ, car je sais que vous hébergez de nombreux forums sur la version stable)

4 « J'aime »

La prise en charge des substitutions de modèles et des modèles spécifiques aux mobiles a été abandonnée.

3 « J'aime »

Je reçois également cette erreur non spécifique (elle pointe juste vers le thème ‘Default’). L’indice de regarder dans la console m’a aidé. Je pense que c’est dans notre CSS personnalisé, mais j’ai seulement repris ce forum récemment, donc je vais devoir creuser un peu. Quand est-ce que cela est censé casser, afin que je puisse prévoir de creuser à temps ?


Screenshot 2025-07-26 at 16.16.52

Les remplacements de modèles ont été supprimés dans la dernière version du cœur de Discourse, donc je suppose que vous utilisez une ancienne version. Lorsque vous passerez à la dernière version, le remplacement cessera de fonctionner.

Il y a probablement quelque chose comme <script type="text/x/handlebars"> dans votre thème par défaut, qui devrait être supprimé.

1 « J'aime »

Huh. Intéressant. Nous n’avons commencé à voir cette bannière qu’après que notre équipe DevOps a mis à jour vers la version 3.4.6. La substitution personnalisée s’affiche toujours (et vous avez raison sur son emplacement / son apparence). Il est possible que ChatGPT interprète mal ce que fait cette substitution, je suis encore en train de comprendre tout cela

Tout est réparé, l’avertissement a disparu, le style est préservé. Youpi.

1 « J'aime »