AnythingSlider pour Aveline

Des noisettes présentant des listes (articles, évènements...) sous forme d’un slider avec AnythingSlider.

Ce plugin vient compléter la collection de noisettes Aveline en proposant des noisettes affichant des listes dans un slider utilisant le script AnythingSlider.

Pour pouvoir utiliser ces noisettes supplémentaires, vous devez avoir installé et activé sur votre site le plugin AnythingSlider version 0.1.x.

Après vidage du cache, vous disposez alors de nouvelles noisettes pour agrémenter vos pages.

Remarques

Ces noisettes ont dans un premier temps été livrées dans un plugin autonome dénommé AnythingSlider pour Aveline. Elles sont dorénavant distribuées directement dans Aveline (version 1.3.0 minimum).

Si vous utilisiez ce petit plugin autonome, vous devez mettre à jour Aveline puis supprimer AnythingSlider pour Aveline.

Discussion

Une discussion

  • 3

    Il y a un truc que je ne comprends vraiment pas et qui donne l’impression que tu multiplies les plugins et sous-plugins comme des petits pains. Tu veux gonfler tes stats, hein, avoues ! :)

    Maintenant que le noisetier existe, les noisettes sont censées être génériques. Le but de ce système c’est bien le partage de composants, non ? Donc pourquoi est-ce qu’il y a :

    1. le noisetier
    2. puis Aveline
    3. puis AnythingSlider qui fournit juste la lib
    4. puis ce plugin qui ajoute uniquement une noisette ?

    Pourquoi est-ce que AnythingSlider ne fournit pas juste une noisette correspondant à sa fonctionnalité ? Alors utilisable par tous dans le noisetier, qu’on ait Aveline ou pas, peu importe.

    D’après moi, chaque plugin ayant une fonctionnalité précise (Formidable, Menus, un slider, une galerie, etc) devrait pouvoir fournir une « noisettes/ » en rapport avec sa fonctionnalité, ainsi qu’une « saisies/ » quand c’est pertinent aussi. Au final, seuls les plugins Noisetier et AnythingSlider devraient être nécessaires.

    • Ton commentaire appelle plusieurs questions pour lesquelles je n’ai pas forcément de réponse.

      En tout premier lieu, qu’appelles-t-on une noisette générique ? C’est déjà une partie du débat. Si on considère qu’une noisette générique doit fonctionner seulement avec les fonctionnalités du plugin qui l’embarque et natives de SPIP, alors les noisettes d’Aveline ne sont pas génériques.

      Au tout début, le noiZetier incorporait le mécanisme de gestion des noisettes, un vidage des contenus de Zpip et des noisettes. Au début du projet, y a eu tout un débat sur le fait que le noiZetier ne devait pas forcément vider le contenu de base de Zpip, mais que les noisettes devaient pouvoir venir compléter un contenu de base non débrayable. Cela a entraîné un premier découpage en deux avec le noiZetier d’un côté et Aveline de l’autre qui vidait les contenus de Zpip et fournissait des noisettes.

      Mais cela entraînait le fait qu’on ne pouvait utiliser les noisettes d’Aveline en complément d’un contenu non débrayable. D’où un nouveau découpage : Zpip-vide d’un côté qui fournit une structure Z vide de contenus et Aveline de l’autre qui est un ensemble de noisettes.

      Concernant Aveline, certains lui ont reproché de prendre en compte certains plugins comme Notation ou Agenda. C’est vrai, et cela est dû au fait qu’Aveline doit se voir comme une collections de noisettes évoluées à la manière d’un gros squelette généraliste (comme Sarka ou SoyezCréateurs) et non comme une collection de noisettes de base (à la manière d’une dist).

      Pour pouvoir gérer un certain nombre de mécanismes avancés dans Aveline sans avoir à dupliquer le code dans chaque noisette, Aveline définit ses propres balises et ses propres critères qui ne de sens qu’associés à certaines variables d’environnement. Les YAML de description des noisettes sont eux même découpés en plusieurs inclusions de sous-fichiers en YAML. Ainsi, si je rajoute une option sur les résumés d’articles, je ne modifie qu’un seul fichier YAML et un seul squelette, mais touche ainsi plus d’une douzaine de noisettes. L’ensemble de ces mécanismes font qu’il est difficile de considérer les noisettes d’Aveline comme génériques.

      Pour AnythingSlider, il était évident qu’il fallait faire un plugin séparé pour fournir la lib, puisqu’elle peut servir dans d’autres contextes. Par contre, il est vrai que je n’ai pas préparé de noisettes directement dans ce plugin. Pourquoi ? D’une part par manque de temps, mais surtout parce que les noisettes dont j’avais besoin nécessitait le code commun d’Aveline (pour la sélection des articles par branche, pour les options de paramétrage des résumés d’articles, etc.). Les noisettes du plugin AnythingSlider pour Aveline utilisent beaucoup de code et d’inclusions propres à Aveline. Faire des noisettes génériques directement dans le plugin incorporant la lib aurait voulu dire faire des noisettes ne reposant pas sur ce code commun.

      C’est toujours possible. Mais c’est quoi une noisette générique de liste d’articles. Elle doit avoir quoi comme option ? Elle doit avoir quoi comme fonctionnalités ? Personnellement, je n’en sais rien. C’est facile de voir ce qu’est une noisette générique pour un plugin comme Menus ou Formidable. Mais y a pas de réponse évidente pour un slider générique (qui peut théoriquement embarquer n’importe quoi, textes, images, etc.), un plugin comme Sélections d’Articles ou encore un plugin comme Agenda. Et notamment par ce ces noisettes ne reposent pas que sur cette fonctionnalité. AnythingSlider permets de produire un slider sur une liste. Mais ce ne dit rien sur les autres fonctionnalités de la noisettes : quels objets à sélectionner ? dans tout le site, une rubrique, une branche ? quels critères de tri ? quelles options d’affichage et de mise en forme des objets (un résumé, une liste simple, avec ou sans logo, affiche-t-on la date ? les auteurs ? les mots-clés ? etc.) ?

      Reste une autre question : est-ce que les noisettes reposant sur le code d’AnythingSlider et le code d’Aveline devraient être embarqués dans un plugin séparé (comme c’est le cas ici) ou bien directement dans Aveline ? Les deux se tiennent. On peut supprimer le présent plugin et déporter dans Aveline. Ce n’est pas vraiment un problème et ça évite un plugin de plus.

    • Peut-être que ta dernière proposition est pas mal. Je n’ai pas d’avis tranché pour l’instant.

      Tout ce que je me suis dit, c’est que si pour chaque noisette possible qui correspond à UNE fonctionnalité, et bien on fait un nouveau sous-plugin pour chaque squelette (ici Aveline, mais il pourrait alors y avoir un plugin Slider pour un, deux, trois autres squelettes), et bien ça va vite faire beaucoup, non ?

      Après c’est à chaque mainteneur de squelettes de faire comme il l’entend, bien entendu. Mais peut être qu’on peut trouver une solution pour simplifier un peu et que ce soit ensuite la même manière de faire pour les autres squelettes qui utilisent des noisettes.

    • On peut sans problème, après réflexion, déplacer ces noisettes dans Aveline pour éviter ce mini-plugin. Je l’ajoute à ma TO DO liste.

      Amicalement

    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