Voici un exemple d’appel de snippet dans le code d’un snippet
Sa fonction est d’attacher une gallery(maxiGallery) à la page en cours
En fonction e l’ultimate parent on ajoute un chunk qui est un texte de presentation.
Pour bien faire il faudrait rajouter du code pour changer les parametres du doc en cours pour -> ne pas mettre en cache
Pour que ce soit plus simple pour le client $action est une TV(radio) oui/non
if(isset($action) && $action=="oui"){//TV passée en parametres du snippet
$ultimateID = $modx->runSnippet('UltimateParent');
$snippetName = 'MaxiGallery';
$snParams = array();
$snParams['manager_webgroups'] = 'Registered Users';
$snParams['display'] = 'embedded';
$snParams['embedtype'] = 'lightboxv2';
$snParams['pics_in_a_row'] = 3;
switch($ultimateID){
case 58:
$snParams['language'] = 'fr';
$messIntro = "{{introGallery-FR}}\n";
$output .= $messIntro;
$output .= $modx->runSnippet($snippetName, $snParams);
return $output;
break;
case 71:
$snParams['language'] = 'en';
$messIntro = "{{introGallery-UK}}\n";
$output .= $messIntro;
$output .= $modx->runSnippet($snippetName, $snParams);
return $output;
break;
case 109:
$snParams['language'] = 'de';
$messIntro = "{{introGallery-DE}}\n";
$output .= $messIntro;
$output .= $modx->runSnippet($snippetName, $snParams);
return $output;
break;
}
}
Appel dans la page
[[attachGallery? &action=`[*action*]`]]