affiche_hierarchie

The "affiche_hierarchie" pipeline is used to modify or add to the HTML code for the breadcrumb path in the private zone. It accepts a certain number of data items in the args: the subject of its current identifier, if there is one, and possibly the identifier of the sector.

$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));

Example

The "polyhiérarchie" plugin, which enables a section or article to have multiple parents, uses this pipeline to list the various parents for the section or article currently displayed:

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;
}

Author Mark Baber Published : Updated : 31/05/10

Translations : English, français