Index

Templates dynamiques

Un template dynamique permet de charger uniquement les données qui seront affichées. C'est beaucoup plus performant et cela permet d'éviter les bugs d'affichage liés à l'utilisation de la pagination et des facettes notamment.

Les template dynamiques sont écrits en VueJs

La doc développeur pour les template custom est disponible en anglais seulement
Doc développeur

Il est possible de modifier le contenu de l'un des blocks du template dynamique

Créer le fichier dans le dossier custom/templates/bazar/entries/index-dynamic-templates/
et penser à préciser dynamic="true" lorsque vous appelez le template

Dans le template notez qu'il faut indiquer les necessary_fields (nb de commentaires et nb de reactions) pour que la donnée soit disponible

{{ bazarliste id=".." template="my-template" dynamic="true" }}

{# custom/templates/bazar/entries/index-dynamic-templates/my-template.twig #}
{% extends "@bazar/entries/index-dynamic-templates/card.twig" %}
{% set necessary_fields = ['comments_count','reactions_count'] %}
{% block area_subtitle %}
<div class="count">
	    <div class="count-item">
        <span v-if="entry.reactions_count.bf_reactions">
        <i class="reaction-icon fas fa-heart"></i><span v-html="entry.reactions_count.bf_reactions?.jaime?.count"></span>
         </span>
         <span v-if="entry.comments_count">
         <i class="comment-icon far fa-comment"></i></i><span v-html="entry.comments_count"></span>
          </span>
   
   </div>
</div>
{% endblock %}


exemple visible sur le projet : https://reseau-ecoresponsables.educagri.fr/?ToutesLesActualites