Bonjour,
Je cherche à faire un snippet dont le rendu ce fera via template (chunk) qui contiendra des placeholders. Pour cela j’utilise modx->setPlaceholder(’nom’,’valeur’).
Le soucis viens du fait que je fait cet appel dans une boucle, pour obtenir une liste (de joueur). Ors au lieu de retourner la liste de tous les joueurs, mon snippet me renvoi une liste avec 20 fois le dernier joueur.
Comme je sent que je ne vais pas arriver à expliquer plus clairement mon problème. Voici mon code:
Voici l’appel de mon snippet:
[[effectif_equipe? &equipe=`[*parent*]`]]
Le code de mon snippet
<?php
$joueurs_liste ='';
if(isset($equipe)){
for($i=1; $i<=20; $i++){
$joueur = $modx->getTemplateVar('nom_j'.$i, 'name', $equipe, 1);
$joueur_nom = $modx->getTemplateVar('nom_licencie', 'name', $joueur['value'], 1);
$joueur_prenom = $modx->getTemplateVar('prenom_licencie', 'name', $joueur['value'], 1);
$joueur_numero = $modx->getTemplateVar('num_j'.$i, 'name', $equipe, 1);
$joueur_poste = $modx->getTemplateVar('poste_j'.$i, 'name', $equipe, 1);
$modx->setPlaceholder('joueur_nom', $joueur_nom['value']);
$modx->setPlaceholder('joueur_prenom', $joueur_prenom['value']);
$modx->setPlaceholder('joueur_numero', $joueur_numero['value']);
$modx->setPlaceholder('joueur_poste', $joueur_poste['value']);
$joueurs_liste .= $modx->getChunk(tpl_liste_joueur);
}
}
return $joueurs_liste;
?>
et voici mon chunk tpl_liste_joueur
#[+joueur_numero+] - [+joueur_prenom+] [+joueur_nom+] [+joueur_poste+]
Si quelqu’un a une idée de comment obtenir la bonne liste...