À 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();
}
?>