Carnet Wiki

Version 2 — Janvier 2019 JLuc

Pipeline

Le pipeline styliser reçoit $flux tableau avec les index
-  [args][fond] : fond sans html. Ce peut être le résultat d’un find_in_path dont on a enlevé l’ext. .html.
-  [args][ext] : html si statique ou php sinon
-  [args][contexte] : environnement

fichier public/styliser

On peut le surcharger pour redéfinir public_styliser.

La fonction redéfinie peut appeler la version originale et la compléter. Par exemple dans phpBB :

function public_styliser($fond, $id_rubrique, $lang='', $connect='', $ext='html') {
/* EXTRAITS */
	$spipbb_meta = @unserialize($GLOBALS['meta']['spipbb']);
	if (!is_array($spipbb_meta) OR ($spipbb_meta['configure']!='oui')  OR empty($spipbb_meta['id_secteur'])) {
		include_once(_DIR_RESTREINT.'public/styliser.php');
		return public_styliser_dist($fond, $id_rubrique, $lang, $connect, $ext);
	}
...
}


spip_mashup

function spip_mashup_styliser($flux) /* EXTRAITS */
{	global $spip_version_branche;
	// On est dans une rubrique
	if (($fond = $flux['args']['fond'])
	 AND $flux['args']['ext']="html")
	{
		if ($flux['args']['contexte']['ajax_mashup'])
		{	// Recherche du squelette
			$base = find_in_path("mashup_$fond.html");
			$squelette = substr($base, 0, - 5);
			$flux['data'] = $squelette;
		}
		else if ($fond == 'rubrique')
		{
...
			$base = find_in_path("mashup.html");
			$squelette = substr($base, 0, - 5);
			$flux['data'] = $squelette;
		}
	}
	return $flux;
}

parametrer_par_motcle

parametrer_par_motcle, pour SPIP 2 seulement, non seulement définit le pipeline styliser, mais surcharge aussi public/parametrer.php et public/styliser.php pour parvenir à ses fins !