Le pipeline « affiche_hierarchie » permet de modifier ou compléter le code HTML du fil d’ariane de l’espace privé. Il reçoit un certain nombre d’informations dans args
: l’objet et son identifiant en cours de lecture s’il y a lieu, éventuellement l’identifiant du secteur.
$out = pipeline('affiche_hierarchie', array(
'args'=>array(
'id_parent'=>$id_parent,
'message'=>$message,
'id_objet'=>$id_objet,
'objet'=>$type,
'id_secteur'=>$id_secteur,
'restreint'=>$restreint),
'data'=>$out));
Exemple
Le plugin « polyhiérarchie » qui autorise une rubrique à avoir plusieurs parents utilise ce pipeline pour lister les différents parents de la rubrique ou de l’article visité :
function polyhier_affiche_hierarchie($flux){
$objet = $flux['args']['objet'];
if (in_array($objet,array('article','rubrique'))){
$id_objet = $flux['args']['id_objet'];
include_spip('inc/polyhier');
$parents = polyhier_get_parents($id_objet,$objet,$serveur='');
$out = array();
foreach($parents as $p)
$out[] = "[->rubrique$p]";
if (count($out)){
$out = implode(', ',$out);
$out = _T('polyhier:label_autres_parents')." ".$out;
$out = PtoBR(propre($out));
$flux['data'] .= "<div id='chemins_transverses'>$out</div>";
}
}
return $flux;
}