Utiliser Z-core, le futur de Zpip pour Spipr

  la construction modulaire des squelettes du futur


La démarche de construction de squelettes par composition de noisettes a été validée avec Zpip, mais celui-ci devrait disparaitre des prochaines versions de SPIP, en particulier au profit de Z-core, qui reprend les memes principes, mais généralisés à l’ensemble du site public (les ./squelettes/ de SPIP ) et de l’espace privé ( à trouver dans ./prive/).

 
 
 
 
 
 
 
 
 
 
 
 
 
 

 Rappel synthétique de Zpip-dist v1

La démarche de décomposition Z s’articule autour d’une première normalisation en cinq blocs, dont deux constants, explicité dans article 3437 et extensible par
   $GLOBALS['z_blocs']=array('contenu','navigation','extra','head','more');
(qui était défini par défaut dans z_options.php )

On retrouve les 4 blocs par défaut ayant une déclinaison par page dans Zpip, et le bloc more ajouté dans notre cas.

La seule obligation sur l’ordre de figuration des blocs est de placer en premier celui qui affiche le contenu principal (ici contenu) et qui sera utilisé comme bloc maître.

Les squelettes de chaque bloc sont rangés dans un dossier de même nom (on aura dans notre cas un dossier more/ dans le dossier squelettes). A l’exception du bloc de contenu principal, tous les autres blocs doivent proposer un squelette dist.html qui affiche le contenu par défaut pour les pages n’ayant rien défini pour ces blocs.

 Passage à Z-Core et spipr

Pour accompagner le passage à HTML 5, la nomenclature des sous-dossiers a été modifiée : d’après spipr

Ce fonctionnement prévu pour le plugin Z-core (de préfixe zcore )


Passage de Zpip 1.x à Z-dist 2.0 :
- suppression des préfixes page- sur les squelettes
- renommage des dossiers pour les conventions utilisees en html/css :

  • contenu -> ./content
  • navigation -> ./aside
  • extra -> ./extra
  • head -> ./head (déjà existant, pour les inclusions du <head> HTML)
    - pied et entete deviennent des blocs comme les autres et sont renommés également comme blocs html :
  • inclure/entete.html -> ./header/dist.html
  • inclure/pied.html -> ./footer/dist.html

- ajout de dans body.html, et donc
- modification de structure.html :

  • suppression de la balise
  • suppression de la prise en charge de var_zajax qui est gérée par Z-core et provoque l’appel de ajax.html

Le plugin redéfinit le couple des balises #BOITE_OUVRIR #BOITE_PIED et #BOITE_FERMER déjà connues des développeurs de l’espace privé

Les blocs à utiliser sont définis dans l’appel à la fonction zcore_blocs() qui rend un résultat différent entre :
- l’espace privé : contenu navigation extra head hierarchie top
- l’espace public : content (les autres étants définis par la structure...)


Merci de nous signaler les coquilles ou erreurs qui figureraient dans cette page.


Liens visibles seulement pour les inscrits.

Article publié le 6 décembre 2015, et actualisé en décembre 2015 .

Répondre à cet article

(|non)]