Aveline v1 : collection de noisettes Z

Aveline est une collection de noisettes hautement paramétrables, compatibles avec les thèmes Z et à inclure dans vos pages avec le noiZetier.

Mise à jour : Aveline a connu une restructuration entre sa version 0.6 et sa version 1.0. Pour les personnes utilisant une version 0.6, la procédure de mise à jour est décrite ici : Mettre à jour Aveline d’une version 0.X en version 1.X.

Principes généraux

Aveline est une collection de noisettes pour le noiZetier permettant de gérer l’ensemble des contenus de votre site.

Chaque noisette est hautement paramétrable. Vous pouvez, par exemple, choisir comment trier vos listes, ajouter une pagination, permettre aux utilisateurs de modifier le tri des listes, etc.

Les noisettes d’Aveline suivent la nomenclature CSS Z et peuvent donc être utilisées avec les thèmes Z.

En interfaçant Aveline avec le noiZetier et le plugin Compositions, il est aisé de produire des pages différentes selon les articles ou les rubriques. De fait, à aucun moment Aveline n’utilise de mots-clés « techniques » pour configurer les contenus affichés. Ce choix est volontaire, l’objectif étant de conserver le rôle éditorial et sémantique des mots-clés [1].

Utilisation typique

Dans le cas plus courant, Aveline sera utilisée pour gérer l’ensemble de ses contenus via l’interface privée de SPIP, sans avoir besoin de toucher au code. Certains plugins ne sont pas obligatoires pour utiliser Aveline mais sont recommandés pour profiter pleinement de cette collection de noisettes.

Pour les usages les plus courant, se référer à Installation typique d’Aveline pas à pas sous SPIP 2.1. Pour plus de détails, lire ci-dessous.

Utilisation (précisions)

Pour utiliser la collection de noisettes Aveline, vous devez avoir installé le noiZetier qui permet de positionner les noisettes dans les pages et de les paramétrer, et disposer d’un squelette Z.

Aveline prends tout son sens pour gérer tous les contenus de votre site sous forme de noisettes. Pour cela, vous devez installer ZPIP-vide qui fournit une structure Z vide de contenus.

Pour gérer l’ensemble des contenus sous forme de noisettes, l’installation typique la plus courante sera :

Voir Installation typique d’Aveline pas à pas sous SPIP 2.1 pour plus de détails.

Il est également possible d’utiliser Aveline pour compléter les contenus par défaut et non débrayables fournis par ZPIP-dist ou votre squelette Z personnalisé. Dès lors, une installation typique sera :

Installation

Aveline s’installe comme n’importe quel autre plugin.

Pour aller plus loin

Contributions intégrées à Aveline

Notes

[1À ce sujet voire la discussion, déjà ancienne, sur Le Plugin Attributs (abandonné).

[2Actuellement, ZPIP-vide nécessite le squelette ZPIP-dist qui fournit les mécanismes Z de génération de page et que ZPIP-vide vient surcharger. Dans une future version, le mécanisme de génération de pages sera disponible dans un plugin Z-core. Dès lors, ZPIP-vide ne sera plus dépendant de ZPIP-dist.

[3Avec quelques modifications.

[4Dans l’attente de son intégration ou d’un équivalent dans le plugin Comments.

[5Légèrement modifié

Discussion

30 discussions

  • 2

    @joseph

    Une ch’tite question toute conne.
    Je vois que l’éffervence monte concernant spip 3.0.
    Mais, je ne vois pas aveline dans les plugins compatibles.

    Est-ce parce que la 3.0 intègre en natif zip/aveline/composition ?

    Perso, je trouve que ton travail a révolutionné spip. J’espère que les « grands patrons » auront su en profiter.

    • Je vais commencer dans les semaines à venir le chantier de passage noiZetier / Aveline en SPIP 3.
      Tout n’a pas encore été testé. Le squelette Zpip-dist devrait probablement évoluer (suite aux débats sur la dist) et donc de faire les noisettes d’Aveline. L’interface du noiZetier est à repenser (pour avoir quelque chose de plus intuitif), un compagnon d’aide au démarrage d’Aveline (un peu comme le nouveau compagnon d’aide au démarrage de SPIP) dit être écrit....

      Et bien sur, il va falloir permettre à ceux qui étaient sous Aveline en SPIP 2.1, de migrer sans problème vers SPIP 3. Donc le chantier ara bien lieu. Mais aucune date de sortie annoncée.

       ;-)

    • ouaip, j’imagine la somme de travail :-(

      j’aurais aimé m’y connaitre un peu plus pour te soutenir dans cette tâche.
      au moins, je saurai en profiter comme il faut :-)

    Répondre à ce message

  • 8

    Hello Joseph

    Je traque un bug depuis un moment et je crois que je viens de le cerner... Il s’agit d’un soucis de connexion avec openid...

    Sur un spip vide 2.1.11 SVN [18624] avec les plugins suivants (à jour svn) nécessaires à aveline :

    • API de vérification
    • Aveline
    • jQuery UI
    • NoiZetier
    • Saisies pour formulaires
    • SPIP Bonux
    • YAML
    • Zpip-dist v1
    • ZPIP-vide

    Plus les 2 plugins Menus et OpenID

    Avec tout ca d’activé, sans aucune configuration (sauf openID), si on se place sur la page d’accueil du site + clic sur « se connecter », au retour de l’ident openID, on se retrouve a nouveau sur la page d’accueil. Normal.

    Si maintenant on rajoute la noisette « Formulaire d’authentification » à la page « Se connecter » avec le Noizetier, et qu’on refait la manip de connexion (après avoir supprimé le contenu de tmp), au retour de l’ident openID, on reste sur la page de connexion... La redirection ne fonctionne pas. Ou alors il y a un problème de cache... Mais on est bien connecté.

    Bon et « menus » dans tout ça ? Ben si on le désactive, la connexion fonctionne !

    Une idée ? une piste ?

    • Bonjour Yffic,

      si j’ai bien compris, le souci vient d’une redirection qui ne marche pas au retour de la page de connexion.
      Mais si Menu est désactivé, ça fonctionne ?

      Questions :

      1. A tout hasard, quel navigateur as-tu utilisé pour tes tests ?
      2. Si tu utilises Zpip-dist (sans noiZetier, YAML, Aveline...) + Menus :
        1. est-ce que le problème persiste ?
        2. est-il résolu quand tu désactives Menus ?
        3. a-t-on le même problème sans OpenID ?
      3. Avec Zpip + Aveline + noiZetier + Menus SANS OpenID :
        1. La redirection fonctionne-t-elle ?
        2. Si non, que se passe-t-il sans Menus ?
        3. Avec Menus mais sans OpenID ?

      Amicalement

    • Hello

      1. C’est pareil avec IE9 et Chrome
      2. Zpip-dist + Menus seuls, pas de problème
      3. Sans OpenID ou avec mais en se connectant avec le mot de passe : pas de problème

      Et je rajouterais Zpip-dist + Menus + Zpip-vide, pas de problème.
      Et Zpip-dist + Menus + Zpip-vide + Aveline (et necessites), pas de problème.

      Dans les logs Apache, je viens de relever ceci au retour de la connexion openID :
      -  Quand ca fonctionne : « POST /spipvide/spip.php ?page=login&url=.%2F HTTP/1.1 » 302 248
      -  Quand ca ne fonctionne pas : « POST /spipvide/spip.php ?page=login&url=.%2F HTTP/1.1 » 200 1502

    • Euhh je suis perdu. Dans quel cas a lieu l’erreur ?

    •  ;-)

      Comme indiqué dans le premier message, ça arrive dès que j’insère la noisette « Formulaire d’authentification » à la page « Se connecter »

    • Est-ce seulement quand OpenID et Menus sont activés ?

      Le paramètre url est-il bien présent dans l’URL ?

      Peux-tu vérifier avec var_mode=debug que ce paramètre url est bien transmis à la noisette, puis au formulaire ?

      • avec uniquement OpenID, Menus et Bonux, ça fonctionne
      • url est valide dans la noisette et bien transmis au formulaire prive/formulaires/login.php dans la variable d’entrée $cible.

      J’ai tracé le traitement du formulaire CVT : La fonction traiter n’est pas appelée quand ça ne fonctionne pas... Comme si au retour de l’ident open ID, spip fournissait le squelette de login.html sans le recalculer.

    • Là j’avoue sécher

    • Bon je vais tenter sur la liste. Merci d’y avoir réfléchi

    Répondre à ce message

  • 10

    Bonjour à tous,

    Il semble que la noisette selection d’article ait des problème avec le style vignette :

    1 Aucun squelette inclure/article-liste.html n’est disponible... plugins/auto/aveline/noisettes/selection_articles.html

    Je tenté de créer ma propre noisette de sélection d’articles avec tri au hasard en reprenant sa grande soeur d’aveline. Ma noisette selection au hasard plantant sur les vignettes, j’ai tenté avec celle d’aveline qui plante aussi.

    • Cette noisette est passée à la trappe lors de la réorganisation des résumés d’articles. Devrait être corrigé par la version 1.3.20 d’Aveline.

      Merci pour le retour de bug.

    • Bonjour,
      J’ai un problème similaire, mais avec le message suivant lors de l’affichage de la liste de sites d’une rubrique :

      Aucun squelette inclure/site-liste.html n’est disponible...

    • Bonjour,

      je ne reproduis pas le problème. Aucune noisette d’Aveline ne fait une dit fichier.

      Pourriez-vous vérifier les points suivants :

      • disposez-vous de la dernière version d’Aveline ?
      • avez-vous vider le cache ?
      • y a-t-il des noisettes personnalisées sur votre site ?
      • le problème perdure-t-il ?

      Bien cordialement

    • Bonjour,

      Je suis en 1.4.2.
      Le cache est vide, et le problème ne semble se produire que lorsque je recalcule la page.
      J’ai quelques noisettes personnalisées, et je viens de me rendre compte que j’ai un couple liste_sites.html + liste_sites.yaml à la fois dans /plugins/auto/aveline/noisettes et dans /squelettes/noisettes. J’avais dû faire une modif au fichier html, (il faut que je regarde en détail)
      Cela pourrait-il être l’origine de mon problème ?
      Merci !

    • Bonjour,
      tout à fait. Vous avez personnalisé cette noisette et les fichiers du répertoire squelette sont prioritaires sur ceux du plugin. Mais, vos fichiers personnalisés appellent un squelette qui n’est plus fourni par le plugin d’où l’erreur.

      Vous pouvez supprimer ces deux fichiers de votre répertoire squelette. Vous souvenez vous des raisons de leur personnalisation ?

      Cordialement

    • Bonsoir,

      Ok, j’ai compris d’où venait le problème donc.
      Par contre, j’avais modifié ce fichier pour permettre un tri au hasard de mes sites.
      Or apparemment, ce tri se définit maintenant avec /plugins/auto/aveline/inc-yaml/tri-site.yaml.
      Deux questions :
      -  je ne vois pas bien comment modifier ce fichier pour ajouter la possibilité de choisir « hasard » pour le tri,
      -  si je modifie ce fichier, il sera écrasé à la prochaine maj d’Aveline. Où dois-je mettre mon fichier modifié ?

      Merci :-)

    • Je teste dès que possible l’ajout du tri par hasard aux différentes listes. Il faut juste que je vérifie que cela fonction avec le critère tri de Bonux, sinon il faudrait faire évoluer Bonux en ce sens.

      Bien cordialement

    • Sinon, pour pouvoir disposer d’une liste des sites triée par hasard, tout en étant compatible avec Aveline et sans problème de surcharge, il est possible de créer dans le répertoire squelette une nouvelle noisette avec les deux fichiers suivants (basés sur la noisette liste_sites) :

      liste_sites_par_hasard.yaml

      nom: 'Liste des sites triées par hasard'
      icon: 'img/ic_site.png'
      contexte:
        - 'id_rubrique'
        - 'id_secteur'
        - 'id_syndic'
        - 'debut_liste_sites'
      parametres:
        - 'inclure:inc-yaml/branche-site.yaml'
        - 'inclure:inc-yaml/exclure_objet_en_cours-site.yaml'
        - 'inclure:inc-yaml/pagination.yaml'
        - 'inclure:inc-yaml/titre-site.yaml'
        - 'inclure:inc-yaml/resume-site.yaml'

      On a simplement supprimer les fonctions de tri à savoir les lignes :

        - 'tri_liste_sites'
        - 'sens_liste_sites'
      
        - 'inclure:inc-yaml/tri-site.yaml'

      Les autres éléments utilisant les inclusions d’Aveline, on disposera de toutes les fonctionnalités d’Aveline.

      Le second fichier est liste_sites_par_hasard.html :

      [(#SET{titre,[(#ENV{titre_liste}|=={titre_perso}|?{[(#ENV**{titre_liste_perso}|typo)],[(#ENV{titre_liste}|_T)]})]})]
      <B_liste_sites>
      <div class="liste sites">
      	#ANCRE_PAGINATION
      	[(#ENV{afficher_titre_liste}|oui)[<h2 class="h2">(#GET{titre})</h2>]]
      	[<p class="pagination">(#AVELINE_PAGINATION{'debut'})</p>]
      	<ul class="liste-items">
      	<BOUCLE_liste_sites(SITES){aveline_branche}{par hasard}{aveline_pagination}{aveline_exclure_objet_encours}>
      		#INCLURE{fond=inclure/site-resume,id_syndic=#ID_SYNDIC,id_syndic_expose=#ENV{id_syndic},env}
      	</BOUCLE_liste_sites>
      	</ul>
      	[<p class="pagination">(#AVELINE_PAGINATION{'fin'})</p>]
      </div>
      </B_liste_sites>

      On a simplement changé un critère de boucle en remplaçant {tri #ENV{tri},#ENV{senstri}} par {par hasard}.

      Normalement, une telle noisette devrait rester fonctionnelle même en cas d’évolutions d’Aveline.

      Note : il est toujours possible que certaines évolutions d’Aveline rendent la noisette incompatible. Mais nous essayons de limiter au maximum de telles évolutions. Dans votre cas, nous avons changé à un moment donné les inclusions de inclure/site-liste.html et inclure/site-resume.html par une seule inclusion de inclure/site-resume.html. Ce changement a justement été opéré pour permettre de faire évoluer les items de liste (en ajouter par exemple une vue vignette) sans avoir à modifier les appels dans les noisettes.

      Bien cordialement

    • Merci beaucoup pour ce suivi :-)
      Mon site est à nouveau fonctionnel avec ces deux fichiers !

    • La version 1.6.0 d’Aveline permet maintenant de trier les listes d’objets par hasard.

      Note : il faudra aussi mettre à jour Spip-Bonux.

    Répondre à ce message

  • 3

    Bonjour Joseph,

    Il semble qu’il y ait un bug sur la noisette liste d’évenements.
    J’en ai créé une qui devrait lister les évènements liés à deux articles :

    Si article(s) spécifique(s), quels articles ?
    Cycle initiation Savoirs partagés

    et elle me ressort tous les événements du site.

    Je ne sais pas si ça joue mais j’ai dans la même page la même noisette qui liste tous les évènements du site. La noisette posant problème à le titre « prochains cycles » sur www.m270.net

    Répondre à ce message

  • 1

    Bonsoir,

    Peut-on mettre dans la page d’accueil un article sélectionné à partir d’un mot clé ? ou d’un numéro d’article ? pour réaliser un édito par exemple.
    Cordialement.

    • Il existe une noisette permettant d’afficher les articles sélections pour la page d’accueil avec le plugin Sélection d’articles (voir http://plugins.spip.net/selection-d...).

      Il faudrait rajouter une option dans la noisette liste d’articles pour sélectionner les articles liés à un mot clé spécifique et/ou sélectionner un article spécifique par son identifiant. Ce n’est pas compliqué à faire a priori.

      Je suis en voyage mais regarde ça à mon retour.

    Répondre à ce message

  • 1

    Ca marche nickel.

    Juste pour info, il y a un autre problème sur cette noisette :
    il n’y a pas de saut à la ligne à la fin de la dernière vignette. La noisette suivante commence donc sur la même ligne que la fin de la sélection.

    Photo du problème le voir toutes nos selections est un bloc de texte libre qui devrait apparaître en dessous.

    Petite précision : j’ai un nombre limité d’éléments avec la pagination ça marche. Donc pour l’instant, je garde la pagination.

    Vu le nombre de noisettes et donc la quantité de code, je suis surpris qu’il y ait aussi peu de bugs.

    • Il doit s’agir probalement d’un souci CSS. Il manque probablement un clear:both ;.

      Le problème des vignettes c’est qu’elles ne sont pas prévues par les thèmes Z actuellement.

      Il faudrait donc soit envisager de personnaliser ton thème Z (le mieux à faire aujourd’hui avec Aveline, car peu (sauf popdev) sont prévus pour toutes les fonctionnalités d’Aveline.

      Sinon, envisager une noisette bloc de texte qui inclureait en dessous de tes vignettes juste le code :

      <br style="clear:both;" />

    Répondre à ce message

  • 2

    Plus on l’utilise, plus Aveline est impressionant.

    J’ai cependant quelques difficultés avec la notation.
    Le formulaire ne s’affiche pas avec la noizette « contenu principal de l’article » .
    En revanche tout va très bien en incluant directement la noizette formulaire de notation.

    Répondre à ce message

  • 2

    Hello Joseph

    La noisette forum permet de ne pas afficher le titre de l’article... Mais ce titre est quand même proposé et modifiable dans le formulaire...J e n’ai pas vu de noisette permettant de paramétrer l’affichage de ce formulaire

    • Bonjour,

      Aveline ne surcharge pas encore les formulaires de SPIP.. Par contre, tu peux utiliser le plugin Comment avec Aveline qui surcharge le formulaire de réponse des forums en supprimant notamment le titre. De plus, si Comment est activé, tu disposeras aussi des boutons des gestion des forum (Supprimer un message / le signaler comme SPAM).

    • Super, je n’avais pas encore essayé ce plugin...
      merci

    Répondre à ce message

  • 1
    joachim109

    Bonjour et bravo pour ce plugin.

    Petite remontée de bug suite à mise à jour recente :

    noisettes > liste-site.html

    mettre id_syndic à la place de id_article

    sinon inclure > site-resume.html ne comprend plus

    Répondre à ce message

  • 1

    Bonsoir,
    Me semble qu il y a une embrouille sur
    aveline > inclure > evenement-resume.html
    ligne 4 un ID_BREVE un peu exotique dans le contexte, et un filtre SI pour obtenir la class ON qui a l air de creer des parasites...
    Je l ai remplace par :
    [(#ENVid_evenement_expose|==#ID_EVENEMENT| ?class=« on »,’’)] en tapant avec une savate sur mon clavier, seul moyen pour moi d obtenir un filtre de condition qui fonctionne....
    triton (vraiment très admiratif pour l intelligence, l élégance et l énormité du travail accompli )

    • Merci pour le retour. Il y a toujours quelques bugs qui peuvent trainer vu la quantité de code.

      Corrigé dans Aveline version 1.3.2

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom