Sous boucle .. [Réglé]
Myster Membre non connecté
Booster Missile
- Booster Missile
- Voir le profil du membre Myster
- Inscrit le : 04/10/2010
- Groupes :
Je bute sur un problème, du moins avec le système de template très probablement.
Je m'explique, j'ai un système de tutoriel avec des chapitres et des séparateurs, donc ce qui est censé faire
1er séparateur
- Chapitre 1
- Chapitre 2
2ème séparateur
- Chapitre 3
- Chapitre 4
Le soucis c'est qu'en fait lorsque j'affiche donc les données, ça fait
1er séparateur
- Chapitre 1
- Chapitre 2
2ème séparateur
- Chapitre 1
- Chapitre 2
Dans le deuxième séparateur c'est censé affiché les chapitres associés à ce séparateur, en PHP j'y arrive parfaitement en faisant
Code PHP :
// Affichage du chapitre dans le bon séparateur if($chapters['separator_id'] == $separator['id']){ }
Mais avec le template TPL ça ne fonctionne pas
Code TPL :
# START separators # {separators.NAME}<br/> # START chapters # {chapters.TITLE} # END chapters # # END separators #
Merci pour votre aide
Édité par Myster Le 20/02/2021 à 18h06
Myster Membre non connecté
Booster Missile
- Booster Missile
- Voir le profil du membre Myster
- Inscrit le : 04/10/2010
- Groupes :
Code PHP :
foreach ($separators as $separator) { $tpl->assign_block_vars('separators', [ 'NAME' => $separator['name'], ]); foreach ($chapters as $chapter) { if ($chapter['separator_id'] == $separator['id']) { $tpl->assign_block_vars('separators.chapters', [ 'CHAPTER_ID' => $chapter['id'], 'TITLE' => $chapter['title'], 'AUTHOR_USERNAME' => $chapter['display_name'], 'AUTHOR_ID' => $chapter['user_id'], 'CREATED_AT' => date('d/m/Y', $chapter['created_at']), ]); } } }
Apparemment il fallait mettre le nom du premier assign_block dans le second ( $tpl->assign_block_vars('separators.chapters') )
Édité par Myster Le 20/02/2021 à 18h23
MickaelFR Membre non connecté
Booster Fusée
- Booster Fusée
- Voir le profil du membre MickaelFR
- Inscrit le : 20/01/2014
- Site internet
- Groupes :
j1.seth Membre non connecté
- Administrateur
- Voir le profil du membre j1.seth
- Inscrit le : 01/09/2008
- Site internet
- Groupes :
- Chef de Projet
- Equipe Développement
Oui effectivement pour les boucles imbriquées il faut rappeler le nom de la première boucle dans la seconde.
j1.seth
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie