Hello,
En intégrant le NoiZetier dans un squelette je me suis dit que certaines évolutions pourraient être envisagées pour améliorer l’expérience utilisateur.
L’utilisation que j’en ai concerne un squelette Z basé sur le framework v2 - donc Z-Core.
Déclaration des pages et blocs:
-
la liste des pages est déterminée par lecture des fichiers XML ou HTML stockés dans le répertoire des contenus principaux des pages (souvent content/). Si on veut modifier cette liste il faut utiliser le pipeline noizetier_lister_pages. Ne pourrait-on pas signifier une liste de pages exclues (constantes, variables globales, fichier?)
-
la liste des blocs est donnée par la variable globale $GLOBALS[‹ z_blocs ›] et cette liste s’applique par défaut à toutes les pages. On peut modifier cette liste de façon globale avec le pipeline noizetier_blocs en particulier pour exclure certains blocs comme head ou head_js. Comme précédemment ne pourrait-on pas signifier par configuration la liste des blocs exclus partout.
-
pour une page donnée on peut décrire dans un fichier XML son titre, sa description et aussi la liste des blocs autorisés si on veut réduire encore plus cette liste pour la page. Et quand on liste les blocs on peut aussi fournir un titre et une description : il n’y a pas d’autre moyen pour cela. Ne pourrait-on pas proposer comme pour les pages une déclaration des blocs.
-
Passer de XML à YAML (y compris pour les compositions)
Déclaration des noisettes:
-
Chaque noisette est définie par un fichier YAML. Il serait intéressant de pouvoir préciser dans ce YAML les pages compatibles ou non plutôt que d’utiliser le nom de la noisette pour cela ce qui ne permet d’ailleurs que de définir 2 valeurs : une page donnée ou toutes les pages.
-
Si cela n’est pas possible ou n’intéresse personne : ne peut-on pas au moins envisager d’autoriser le rangement dans un répertoire sous noisettes/ : noisettes/article/xxxx au lieu de noisettes/article-xxxx
Compilation des noisettes:
-
Chaque noisette est insérée systématiquement dans un div englobant. Pourrait-on débrayer cette fonctionnalité?
-
Chaque noisette est insérée en ajax par défaut. Ne pourrait-on pas inverser le défaut voire configurer le défaut ?
-
Ne pourrait-on pas imaginer le NoiZetier comme un préprocesseur qui produirait les pages HTML avant compilation plutôt qu’après ?
Interface NoiZetier du privé:
-
définir un ordre d’affichage des pages et des blocs
-
Intégrer une noisette dans un bloc donné et l’appliquer en un clic à toutes les pages. Il serait possible ensuite de la retirer de quelques pages si besoin
-
Passer en écran large pour réorganiser l’interface d’ajout des noisettes: par exemple, un onglet par bloc plutôt qu’une litanie de blocs les uns sous les autres
-
présentation plus claire des noisettes avec par exemple un regroupement par plugin fournisseur
-
définir des noisettes favorites pour les avoir mieux positionner dans l’interface
-
renvoyer une erreur quand une noisette à disparue (en général si on renomme le fichier associé)
A votre avis
++
Eric