Pour un Discourse que je gère, je souhaite mettre en évidence les sujets qui nécessitent l’attention de la communauté. Actuellement, ceux-ci sont récupérés via une requête de recherche quelque peu complexe (un seul utilisateur, non résolu, plus vieux que deux jours). J’ai réussi à ajouter un lien redirigeant vers la recherche correspondante dans la barre de navigation.
Maintenant, je voudrais que l’élément affiche le nombre de sujets correspondants (comme le font les éléments « Nouveau » et « Non lu »). Je peux obtenir les résultats de la recherche via :
const ajax = require('discourse/lib/ajax').ajax;
ajax("/search.json" + search_query).then (function(result){
console.log(result);
});
Néanmoins, cela semble inefficace et probablement quelque chose que je ne souhaite pas exécuter à chaque chargement de page (nous avons environ 15 000 vues de page par jour), donc ma question est :
- Dois-je m’attendre à ce que l’appel de cette requête depuis la partie thème
<head>ralentisse le chargement des pages ? Ou la requête se produirait-elle de manière transparente après le chargement (de la majeure partie de) la page ? - Si l’efficacité était un problème, puis-je interroger uniquement le nombre de résultats de recherche, c’est-à-dire sans que le serveur m’envoie également les détails des sujets correspondants ? Ou même obtenir une réponse oui/non indiquant s’il existe au moins un sujet correspondant.
Merci pour tous les conseils.