Bannière aléatoire

Contexte

Mon forum est connu pour une série tournante de bannières amusantes. Voici un plugin que j’utilise pour afficher aléatoirement différentes bannières entre les visites ou lorsque l’utilisateur effectue un rafraîchissement.

Comment installer

|||
|-|-|-|
| :information_source: | Résumé | Ajoute une bannière choisie aléatoirement dans une liste.
| :hammer_and_wrench:|Dépôt| GitHub - ScottMastro/discourse-randomized-banner: Randomized Discourse Banner Plugin |
|:open_book: | Guide d’installation | Comment installer des plugins dans Discourse


:down_arrow: RAFRAÎCHIR :down_arrow:


Options du plugin

Les images de bannière à randomiser sont incluses dans le réglage banner images. Pour afficher une bannière statique unique à un visiteur (utilisateur non connecté), ajoutez-la au réglage guest banner. Pour afficher une bannière statique à tous les utilisateurs, utilisez le réglage override banner.

Implications SEO

Étant donné la nature aléatoire de ce plugin qui rend la bannière dynamique, une implémentation naïve peut insérer la bannière aléatoire trop tard, entraînant une mesure élevée de Largest Contentful Paint (LCP) et pouvant causer un Content Layout Shift (CLS).

Pour le LCP, l’option optimize lcp précharge la bannière invité et la bannière de remplacement (si elles existent) afin qu’elles s’affichent plus rapidement. Les bannières randomisées ne sont pas préchargées afin de minimiser le préchargement d’actifs qui ne sont pas utilisés. Il est important de garder la taille des fichiers de vos bannières plus petite pour minimiser le temps de téléchargement des bannières.

NOTE
J’ai maintenu le LCP à des niveaux suffisants sur mon forum, mais j’essaie d’utiliser des bannières de moins de 2 Mo et j’utilise un CDN. J’ai également fait en sorte que ma bannière invité pèse environ 200 Ko. Mais j’ai modifié l’implémentation du plugin juste avant de taper ce post. Il ne devrait pas y avoir de problèmes de LCP, mais il n’y a aucune garantie. Je prévois de surveiller mon LCP. Veuillez utiliser avec prudence.

Pour le CLS, le décalage de contenu est évité en définissant la taille de l’image à l’avance dans le HTML. Le banner aspect ratio est nécessaire à l’avance pour dessiner la div qui contient la bannière. Par conséquent, vous voulez que toutes vos bannières aléatoires aient à peu près le même rapport d’aspect. D’autres rapports seront accommodés mais pourront être étirés ou rétrécis.

11 « J'aime »

C’est super et cela pourrait bien faire l’affaire pour ce que je cherchais !

J’ai une question : y a-t-il une taille d’image particulière requise ou recommandée pour la bannière ? Je pense que je voudrais que la nôtre soit un peu moins haute. Est-ce que cela a de l’importance ?

1 « J'aime »

Il occupera 100 % de la largeur et le paramètre aspect_ratio déterminera la hauteur. Cela permet d’allouer l’espace où la bannière sera placée avant le téléchargement de celle-ci, afin que la page ne change pas soudainement de disposition.

Vous pouvez donc modifier le paramètre aspect_ratio pour réduire la hauteur.

2 « J'aime »