Ce projet est actuellement en pause. Nous pourrions y revenir à l’avenir et publierons une mise à jour ici dans ce cas.
Nous introduisons une fonctionnalité expérimentale pour aider les communautés disposant d’un grand nombre de catégories. ![]()
Ces derniers mois, nous avons travaillé dur pour améliorer le fonctionnement des sites Discourse pour les communautés comptant de nombreuses catégories (et pas seulement !). Cela permettra aux administrateurs de créer des milliers de catégories tout en conservant l’expérience utilisateur conviviale que vous connaissez déjà.
Il s’agit toujours d’une fonctionnalité expérimentale, qui peut être activée en modifiant le paramètre du site lazy_loaded_categories_groups. Il est actuellement désactivé par défaut.
Comment cela fonctionne-t-il ?
Actuellement, toutes les données des catégories sont chargées lorsque vous naviguez vers une communauté Discourse. On appelle cela un « chargement eager » (ou préchargement), ce qui n’est pas idéal pour les sites disposant de nombreuses catégories, car cela signifie qu’une grande quantité d’informations est transférée avant le premier rendu, ce qui augmente le temps de chargement global.
La nouvelle méthode s’appelle le « chargement lazy » (ou différé) et reporte le chargement des informations sur une catégorie jusqu’à ce qu’elles soient réellement nécessaires (par exemple, lors de la recherche d’une catégorie, de la navigation ou du lien vers celle-ci, de la lecture d’un sujet ou d’un message qui en fait mention, etc.). Moins de données transférées signifie un temps de chargement plus rapide et des utilisateurs plus satisfaits ! ![]()
Qu’est-ce que cela signifie pour vous, en tant que membre de Meta ?
Nous avons intensivement testé cette fonctionnalité en interne, mais étant donné l’ampleur des travaux effectués, il existe une légère chance d’introduire des bugs. Si vous remarquez un dysfonctionnement lié aux catégories, faites-le nous savoir en répondant à ce sujet ou en créant un sujet Contribute > Bug.
Qu’est-ce que cela signifie pour vous ou votre communauté ?
Que vous soyez hébergé par nous ou que vous utilisiez une installation autonome (self-hosted), cette fonctionnalité est désactivée par défaut et il ne devrait y avoir aucun changement visible.
Cependant, si vous envisagez d’étendre votre communauté avec de nombreuses catégories, nous vous encourageons vivement à activer cette fonctionnalité.
À l’avenir, nous l’activerons par défaut et finirons par déprécier et supprimer le code qui effectue le « chargement eager » des catégories.
Qu’est-ce que cela signifie pour les développeurs de plugins et de thèmes ?
En général, peu ou pas de modifications ne devraient être nécessaires pour la plupart des plugins, tant qu’ils utilisent les composants de catégorie fournis par le noyau ou les données préchargées (par exemple, interrogez uniquement les catégories déjà visibles lors du chargement de la page, car cela signifie qu’elles ont déjà été préchargées).
Certains problèmes peuvent survenir lors de l’utilisation d’informations sur des catégories qui n’ont pas encore été chargées. La méthode Category.findByIds continuera à ne renvoyer que les catégories qui ont déjà été chargées, tandis que Category.asyncFindByIds pourra effectuer une recherche sur le serveur si les informations n’ont pas encore été chargées.

















