BuddyPress améliorera bientôt la façon dont il charge ses actifs JavaScript et CSS afin qu’ils ne soient chargés que sur les pages de la communauté. Auparavant, le plugin les chargeait sans discernement sur chaque page.
Le développeur principal de BuddyPress, Mathieu Viet, a déclaré qu’il n’était pas sûr qu’il y ait une raison spécifique expliquant pourquoi cela a été maintenu en place. Avant que le plugin n’introduise l’API BP Theme Compat dans la version 1.7, il était nécessaire d’utiliser un thème compatible BuddyPress comme celui fourni par défaut (BP Default).
« Je pense que nous avons conservé la façon dont ce thème chargeait ces actifs dans le premier pack de modèles (BP Legacy) que nous avons ajouté à BuddyPress », a déclaré Viet.
Les utilisateurs ont souvent demandé à BuddyPress de ne charger ses actifs que sur les pages communautaires dans l’espoir d’optimiser davantage leurs sites Web. Par exemple, en 2020, un utilisateur des forums BuddyDev a demandé un code personnalisé pour y parvenir. Les experts déconseillent de le faire
« Cela ne vous aidera pas beaucoup et causera beaucoup de problèmes à l’avenir », a déclaré Brajesh Singh, contributeur de BuddyPress. « Il existe des plugins dépendants qui peuvent commencer à lancer des erreurs JavaScript et à casser certaines fonctionnalités de votre site. Cela n’en vaut pas la peine. »
Singh a recommandé à l’utilisateur d’activer la mise en cache du navigateur pour éviter de charger les actifs plusieurs fois et de s’en tenir aux meilleures pratiques pour activer la compression gzip et d’autres mesures d’optimisation. Il a également recommandé d’ajouter un plugin qui empêcherait conditionnellement le chargement de BuddyPress sur certaines pages.
À venir dans la version 11.0.0, le noyau de BuddyPress s’orientera progressivement vers le chargement uniquement des actifs dont il a besoin dans les zones communautaires. Cette mise à jour chargera toujours JS et CSS partout mais proposera un filtre que les utilisateurs pourront ajouter à leurs fichiers bp-custom.php afin de conserver les actifs BP uniquement sur les pages de la communauté :
add_filter( ‘bp_enqueue_assets_in_bp_pages_only’, ‘__return_true’ );
« Si vous utilisez le filtre ci-dessus, vous remarquez que quelque chose ne va pas avec votre site Web en raison de l’utilisation d’un plugin ou d’un thème BP spécifique, signalez-le ici et nous aurons alors un autre cycle de développement pour corriger les choses avant de restreindre complètement ces actifs à BuddyPress a généré des pages dans une deuxième étape dans la version 12.0.0 », a déclaré Viet.
La version 11.0.0 devrait être publiée le 14 décembre 2022. Les premiers utilisateurs et les propriétaires de sites BuddyPress qui ont toujours souhaité que le plugin se comporte de cette manière peuvent en profiter après la prochaine mise à jour majeure en utilisant le filtre. Le filtre peut également être facilement supprimé si les utilisateurs dépannent et ont des problèmes avec les plugins.