À noter : Depuis SPIP 3, les pages de l’espace privé sont écrites en squelettes et noisettes selon l’architecture Z.
En l’absence de squelette SPIP prive/exec/nom.html
, l’appel dans l’espace privé d’une page ?exec=nom
charge une fonction exec_nom_dist()
dans un fichier exec/nom.php
.
Ces fonctions sont pour la plupart découpées de la même façon : l’appel à un début de page, la déclaration d’une colonne gauche, d’une colonne droite, d’un centre. Des pipelines sont présents pour que des plugins puissent ajouter des informations dans ces blocs.
Exemple de page vide « nom »
<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation');
function exec_nom_dist(){
// si pas autorise : message d'erreur
if (!autoriser('voir', 'nom')) {
include_spip('inc/minipres');
echo minipres();
exit;
}
// pipeline d'initialisation
pipeline('exec_init', array('args'=>array('exec'=>'nom'),'data'=>''));
// entetes
$commencer_page = charger_fonction('commencer_page', 'inc');
// titre, partie, sous_partie (pour le menu)
echo $commencer_page(_T('plugin:titre_nom'), "editer", "editer");
// titre
echo "<br /><br /><br />\n"; // outch ! aie aie aie ! au secours !
echo gros_titre(_T('plugin:titre_nom'),'', false);
// colonne gauche
echo debut_gauche('', true);
echo pipeline('affiche_gauche', array('args'=>array('exec'=>'nom'),'data'=>''));
// colonne droite
echo creer_colonne_droite('', true);
echo pipeline('affiche_droite', array('args'=>array('exec'=>'nom'),'data'=>''));
// centre
echo debut_droite('', true);
// contenu
// ...
echo "afficher ici ce que l'on souhaite !";
// ...
// fin contenu
echo pipeline('affiche_milieu', array('args'=>array('exec'=>'nom'),'data'=>''));
echo fin_gauche(), fin_page();
}
?>