Plugin Article Accueil

Reprise dans un plugin autonome de la fonctionnalité « Article d’accueil de la rubrique » du plugin Compositions (version 1). Ce petit plugin permet de sélectionner un article à mettre en avant par rubrique.

Objectif

Le plugin permet de sélectionner, pour chaque rubrique, un article d’accueil qui pourra être utilisé par le webmestre pour présenter la rubrique.

Sélectionner l’article d’accueil d’une rubrique

Une fois le plugin installé, un formulaire sera visible sur la page de gestion d’une rubrique permettant de sélectionner l’article à mettre en avant.

Ce plugin permet d’associer un article d’accueil à une rubrique, mais ne présume rien de ce qui sera fait de cet article d’accueil. Deux solutions s’offrent à vous

-  utiliser le plugin Court-Circuit, qui permet de rediriger automatiquement la rubrique vers l’article d’accueil
-  modifier vos squelettes, voir ci-dessous.

Utilisation dans les squelettes

Pour connaître l’identifiant de l’article d’accueil d’une rubrique, il suffit d’utiliser la balise #ID_ARTICLE_ACCUEIL au sein d’une boucle RUBRIQUES.

Par exemple :

<BOUCLE_marubrique(RUBRIQUES){id_rubrique}>
<BOUCLE_accueil(ARTICLES){id_article=#ID_ARTICLE_ACCUEIL}>
</BOUCLE_accueil>
</BOUCLE_marubrique>

Critère {article_accueil}

Introduit en version 2.1.0.

Il permet de sélectionner les articles étant ou non des articles d’accueil.
Il pourra être pratique sur des boucles un peu spécifique.

// Dans ce secteur, il y a comme article d’accueil
<BOUCLE_liste(ARTICLES){article_accueil}{id_secteur}>...</BOUCLE_liste>
// Dans cette rubrique, ce ne sont pas des article d’accueil
<BOUCLE_liste(ARTICLES){!article_accueil}{id_rubrique}>...</BOUCLE_liste>

Par exemple pour sélectionner les articles d’accueil ayant un document PDF attaché

<BOUCLE_avec_pdf(ARTICLES)
    {article_accueil}
    {rubriques.id_parent = 3}
    {documents.extension = pdf}
    {!par date}
> 
...
</BOUCLE_avec_pdf>

Besoin de plus d’options ?

Le plugin Article d’accueil a vocation à offrir une solution simple pour sélectionner un article à mettre en avant.

Si vous avez besoin d’un système plus complexe permettant de sélectionner plusieurs articles pour une même rubrique et de gérer leur rang, voyez plutôt le plugin Sélection d’articles.

Discussion

13 discussions

  • 6

    Bonjour,

    L’un de mes sites utilise ce plugin pour quasiment toutes ses rubriques.

    J’aimerais donc savoir si une version pour spip 4.0 est prévue prochainement ou si je doit trouver une autre solution.

    Merci d’avance,

    Cordialement,

    Hervé

    Répondre à ce message

  • 5
    Jean-Christophe Sekinger

    Bonjour
    Spip 3.2.11
    plugin activé, article choisi, cache vidé
    ça ne marche pas
    (exemple → https://ulrichjsekinger.eu/spip.php?rubrique6&var_mode=calcul)
    des pistes pour investiguer ?
    merci !

    jc

    • ah ma connaissance le plugin ne fait pas tout seul la redirection, mais se contente de fournir des outils pour le squelette.

      On peut parfois avoir besoin d’un article d’accueil + quand même la page de rubrique

    • le plugin court circuit répondrait mieux à votre besoin je pense

    • Jean-Christophe Sekinger

      Que manque-t-il alors au squelette rubrique pour que le plugin fonctionne ? Merci !

    • Mais le plugin fonctionne. Il fait ce pour quoi il est prévu : permettre d’associer un article d’accueil à une rubrique. Ensuite ce qu’on fait de cet article d’accueil dépend de ton besoin. Relis la doc :)

      Mais surtout je t’invite à utiliser le plugin court-circuit, qui à mon avis répond exactement à ton besoin (même si tu ne l’a pas préciser explicitement).

      Je vais corriger la doc pour la rendre plus clair.

    • Jean-Christophe Sekinger

      Ah dac ! Merci beaucoup de tes réponses qui m’ont enfin éclairées !

    Répondre à ce message

  • 4

    Bonjour

    J’ai un conflit entre les plugins composition et article accueil.
    Lorsqu’une rubrique a un article d’accueil, mais n’a pas la composition par défaut, l’identifiant #ID_ARTICLE_ACCUEIL est bien présent, mais le lien n’est pas modifié.
    J’ai donc utilisé une rustine :

    [(#ID_ARTICLE_ACCUEIL|?{#URL_ARTICLE{#ID_ARTICLE_ACCUEIL},#URL_RUBRIQUE})]

    J’aimerai savoir si c’est déjà arrivé.
    Version : SPIP 3.0.21
    Plugins tous à jour.

    Merci

    • Je ne comprends pas très bien le souci que vous remontez.

      Vous faites référence à quel lien ? Dans quel fichier ?

    • Il s’agit d’un lien, en l’occurence dans le menu principal. Ça marche très bien, sauf si la rubrique a une composition.

    • Vous parlez d’un lien dans l’espace privé ? si oui, sur quelle page exactement ?

      Ou bien s’agit-il d’un lien sur une page publique ? Auquel cas, cela dépend du squelette que vous utilisez et c’est le squelette qui doit être corrigé et non le plugin Article d’accueil.

      Bien cordialement

    • Il s’agit d’un lien sur l’espace publique.
      Je ferai un test en désactivant mon squelettes et tous les autres plugins.

    Répondre à ce message

  • 2

    Bonjour à tous.

    D’abord merci pour ce plugin très pratique et fonctionnel.

    Ma question est : Que dois-je rajouter dans la boucle pour afficher l’article dans la langue choisie ?
    J’utilise bien sûr la traduction d’article et la balise pour les rubriques.

    Merci.

    • Bonjour,

      Pour afficher l’article d’accueil et sa traduction dans une autre langue, il faut :
      -  traduire l’article d’accueil (nouvel article)
      -  vérifier la langue de ce nouvel article (différente de celle de l’article d’accueil)
      -  vérifier que l’article d’accueil et sa traduction sont bien liés (l’un est la traduction de l’autre)

      A partir de là, dans le squelette, une 1re boucle sélectionne l’article d’accueil :

      <BOUCLE_intro(ARTICLES){id_rubrique}{id_article = #ID_ARTICLE_ACCUEIL}>
      ...
      </BOUCLE_intro>

      Puis une seconde boucle placée à l’intérieur de la 1re va récupérer la traduction de cet article, dans la bonne langue :

      <BOUCLE_trad(ARTICLES){traduction}{lang}>
      ...
      </BOUCLE_trad>

      Et enfin, dans le cas où il n’existe aucune traduction dans la langue demandée, une boucle alternative :

      ...
      <//B_trad>

      Cela donne au final quelque chose qui devrait ressembler à ceci :

      <BOUCLE_intro(ARTICLES){id_rubrique}{id_article = #ID_ARTICLE_ACCUEIL}>
      <BOUCLE_trad(ARTICLES){traduction}{lang}>
          [<div class="#EDIT{texte}">(#TEXTE)</div>]
      </BOUCLE_trad>
          [<div class="#EDIT{texte}">(#TEXTE)</div>]
      <//B_trad>
      </BOUCLE_intro>
    • Ça marche pile poil avec SPIP 3.1 même.
      Super merci !

    Répondre à ce message

  • Bonjour,
    j’ai un soucis avec un site multilingue :

    Un lien interne genre

    allez voir [ici->rubrique2]

    pointe vers une rubrique avec article d’accueil qui lui a des traductions.

    L’article d’accueil est en français, la langue principale du site. Quand je navigue en une autre langue vers la rubrique 2 via ce lien, j’arrive sur l’article en français, et pas sur sa traduction. Comment éviter cela ?

    D’avance merci pour vos lumières
    joz

    Répondre à ce message

  • Hello ;-)

    Je viens de me rendre compte d’un petit dysfonctionnement sur Articles Accueil (SPIP 2.1.23 et Article Accueil 1.0.6) : Lorsqu’un article attribué à une rubrique en tant qu’article d’accueil a été supprimé, le champ id_article_accueil de la rubrique n’est pas automatiquement mis à 0 ;

    Je m’en suis rendu compte en exécutant la requête suivante, qui liste les rubriques avec un article d’accueil inexistant :

    SELECT * FROM spip_rubriques
    WHERE id_article_accueil
    NOT IN (SELECT id_article FROM spip_articles WHERE statut IN ('publie','propose','redac'))
    AND id_article_accueil != 0;

    Je ne sais pas comment, mais il faudrait sans doute si c’est possible, lier la suppression d’un article avec la mise à jour de la rubrique qui l’affiche en tant qu’article d’accueil.

    Répondre à ce message

  • Petit plugin très sympa.
    Mais j’ai une question ; y a t’il un moyen d’exclure tous les article ainsi mis en avant d’une boucle général.
    Pour dans mon cas exclure ces artcile du sitemap.xml et du backend.html

    je me sert de ces article comme texte de présentation d’une rubrique, par conséquent cela vas faire du duplicate content si laisse l’accès à l’article de présentation via le squelette ARTICLE et non pas uniquement via le squelette RUBRIQUE.

    Une idée ?

    Répondre à ce message

  • 8

    Bonjour,

    Je viens de mettre à jour le plugin composition 2 et installé Article Accueil ; aucun souci pour les installer et les activer.

    Mais dans une nouvelle rubrique, lorsque je veux sélectionner l’article d’accueil, le choix n’est pas mémorisé. C’est toujours « Aucun article » qui est affiché. A noter que les anciennes rubriques possédant déjà un article d’accueil ont conservé leur réglage.

    Spip et tous les plugins sont à jour.

    • Je n’arrive pas à reproduire ce problème.

      À tout hasard, est-ce que la version 1.0.2 du plugin corrige le souci rencontré ?

    • Malheureusement non, toujours le même symptôme.
      Essayé avec une autre rubrique, même problème.
      Peut être une interaction avec un autre plugin !?

    • Bonjour,

      Je tente l’installation sur un autre site (chez un autre hébergeur).
      D’abord tout a été mis à jour : spip, et tous les plugins.
      Installation de article d’accueil ok, mais échec lors de l’activation.

      Tentative de supprimer physiquement le plugin compositions : problème, le sous dossier « saisie » a les droits « 775 », ce qui est très curieux vu que le plugin avait été installé automatiquement (les autres ont tous 777).

      Une fois cela nettoyé, tentative d’installer d’abord article accueil : échec au moment d’activer le plugin ! Curieusement, le temps de passer sur la page « Liste des plugins », puis « Plugins actifs », et je vois article accueil actif !

      Teste du choix de l’article d’accueil : OK, ça fonctionne correctement.

      Installé composition 2 : OK, article accueil fonctionne toujours.

      Demain je fais la même démarche sur le premier site.

    • Bonjour,
      j’ai eu le même problème sur un spip2.1.11 :
      upgrade de composition avec article accueil intégré
      vers -> composition 2.1.3 & article accueil 1.0.5.

      Après le upgrade mes anciens articles d’accueil sont bien encore là, mais je ne peux pas en ajouter de nouveau.

      Je me demande si la colonne de la table dans la bdd n’est pas correcte.
      Je veux essayer de reconstituer cette colonne à nouveau, mais quand j’essaye de désinstaller « Articles d’accueil » je reçois l’erreur « La désinstallation du plugin a echoué. Vous pouvez néanmoins le désactiver. »
      Je le désactive donc au lieu de le desinstaler, et j’efface la colonne « id_article_accueil » de la table « rubriques » manuellement (sauvegardé évidemment).
      Puis je réactive le plugin. Mais la colonne n’est pas re-crée dans la bdd.

      Par contre la désinstallation du plugin veut bien fonctionner maintenant. Je le désinstalle et reinstalle : « Installation du plugin Articles d’accueil OK »
      Dans la bdd la colonne est crée.
      Mais malheureusement dans la rubrique je ne peux toujours pas définir une article d’accueil.

      — -

      A l’essaye d’installer le plugin sur un site spip2.1.11 fraiche, je recoie :
      « Installation du plugin Articles d’accueil Echec »

      Le plugin est marqué comme installé, mais quand je me rend dans une rubrique je reçois :
      « SQL error 1054
      Unknown column ’id_article_accueil’ in ’field list’
      SELECT id_article_accueil FROM spip_rubriques WHERE id_rubrique=1 »

      J’essaye de choisir un article d’accueil, mais cela ne fonctionne évidemment pas.

      Je retourne dans la gestion des plugins et je voie : « Installation du plugin Articles d’accueil OK ». Je regarde dans la bdd, la table est là. Le message d’erreur SQL n’apparait plus et l’enregistrement d’un article d’accueil fonctionne.

      — -

      Un peux tordue. Et cela ne m’aide pas pour mon site existant..
      Que faire ?
      merci pour votre coupe de pouce

      Joz

    • Que donne la version 1.0.5 ?

    • Bonjour Joseph,
      je ne comprends pas ta question. La version 1.0.5 est celui que j’utilise.. Est-ce que j’ai loupé qqchose ?
      ..
      joz

    • Pardon, je voulais dire 1.0.6.

    • tout a l’ai de bien fonctionner avec la 1.0.6 :)
      grand merci Joseph

    Répondre à ce message

  • 13

    Bonjour,

    Le plugin s’installe parfaitement et il est possible de sélectionner l’article à prendre en compte, mais l’article n’est pas affiché par la suite dans la rubrique.

    • quel squelette utilisé vous ? le plugin est en fait là pour aider les personnes qui font eux même leur squelette.

    • ah alors c’est certainement ça car j’utilise magusine.
      Je ne suis pas encore très doué avec spip et c’est une fonctionnalité que je trouvais pratique ! Tant pis on ne peut pas tout avoir.

    • il est possible après de modifier magusine pour intégrer cela.

      tu a des connaissances en html ou pas du tout ?

    • Je commence à en avoir.
      J’imagine que je dois rajouter les 4 lignes de codes telles quelles dans les squelettes de magusine ?
      Je vais essayer ça en tout cas je finirais bien par trouver le bon emplacement.

      Merci Maïeul

    • C’est un peu près cela. pour trouver le bon squelette, ajoute ?var_mode=inclure à la fin de l’url (ou &var_mode=inclure).

      Ne modifie pas directement le squelette, mais recopie le dans le dossier squelettes.

      Si ton squelette se trouve par ex dans plugins/magusine/toto
      il faut que tu le mette dans squelettes/toto

    • ah c’est pour ça que ça ne marchait pas alors :) Merci pour cette info, je fais un retour ici dès que j’ai réussi.

      Et le coup du ?var_mode=inclure c’est effectivement plus que pratique ; ça aurait déjà pu me servir tellement de fois... Merci du partage

    • Bon j’avoue avoir un petit problème. J’ai repéré avec certitude dans mon rubrique.html de magusine l’endroit où je dois placer ma boucle. Mais rien ne se passe quand je l’inclue (telle quelle en tout cas).

      Dois-je spécifier un chemin particulier, le dossier squelette n’étant pas celui utilisé par défaut ?
      Ou modifier la boucle ?

    • tu peux montrer ton code ?

    • Tout à fait : c’est donc rubrique.html dans le dossier squelettes de magusine :

      #CACHE{24*3600}<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml">
      <head>
      <meta http-equiv="Content-Type" content="text/html;charset=#CHARSET"/>
      <title>#NOM_SITE_SPIP : <BOUCLE_titre(RUBRIQUES){id_rubrique}>[(#TITRE|supprimer_numero)]</BOUCLE_titre></title>
      [(#INSERT_HEAD)]
      [(#INCLURE{fond=metas}{id_rubrique})]
      <script type="text/javascript">
      
        var _gaq = _gaq || [];
        _gaq.push(['_setAccount', 'UA-25789344-1']);
        _gaq.push(['_trackPageview']);
      
        (function() {
          var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
          ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
          var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
        })();
      
      </script>
      </head>
      <body id="page-rubrique" class="rubrique#ID_RUBRIQUE">#SET{parametres,#REM|sinon{"rien"}|parametres}
      
      <div id="general">
      
      [(#INCLURE{fond=bandeau2}{id_rubrique=0})]
      
      [(#GET{parametres}|element{'navigation'}|=={'general'}|?{' ',''})<INCLURE{fond=navigation}{id_article}{id_rubrique}>]
      
      [(#GET{parametres}|element{'chemin'}|=={general}|?{' ',''})[(#INCLURE{fond=chemin}{id_rubrique})]]
      
      [(#GET{parametres}|element{'contenus'}|=={oui}|?{'<div id="contenus">',''})<!-- balise optionnelle contenus -->]
      
      <div id="contextes">
      
      [(#GET{parametres}|element{'navigation'}|=={'contexte'}|?{' ',''})<INCLURE{fond=navigation}{id_article}{id_rubrique}>]
      
      <div id="contexte1">
      [(#GET{parametres}|element{'navigation'}|=={'contexte1'}|?{' ',''})<INCLURE{fond=navigation}{id_article}{id_rubrique}>]
      <BOUCLE_archetype_rubrique(spip_arty_gabaritassoc){type=rubrique}{id=#ENV{id_rubrique}}>
      
      <BOUCLE_blocs_contexte0(spip_arty_gabarit_ordre){gabarit=#GABARIT}{conteneur=1}{par ordre}>
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=1}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_contexte0>
      
      </BOUCLE_archetype_rubrique>
      <!-- blocs contexte 1 par defaut -->
      <BOUCLE_blocs_contexte0_defaut(spip_arty_gabarit_ordre){gabarit=rubrique}{conteneur=1}{par ordre}>
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=1}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_contexte0_defaut>
      
      <//B_archetype_rubrique>
      <div id="fin-contexte1"></div>
      </div>
      
      <div id="contexte2">
      <BOUCLE_archetype_rubrique2(spip_arty_gabaritassoc){type=rubrique}{id=#ENV{id_rubrique}}>
      
      <BOUCLE_blocs_contexte1(spip_arty_gabarit_ordre){gabarit=#GABARIT}{conteneur=2}{par ordre}>
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=2}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_contexte1>
      
      </BOUCLE_archetype_rubrique2>
      <!-- blocs contexte 2 par defaut -->
      <BOUCLE_blocs_contexte1_defaut(spip_arty_gabarit_ordre){gabarit=rubrique}{conteneur=2}{par ordre}>
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=2}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_contexte1_defaut>
      
      <//B_archetype_rubrique2>
      <div id="fin-contexte2"></div>
      </div> 
      
      </div><!-- fin des contextes -->
      
      <div id="corps">
      
      [(#GET{parametres}|element{'chemin'}|=={corps}|?{' ',''})[(#INCLURE{fond=chemin}{id_rubrique})]]
      
      <BOUCLE_archetype_rubrique3(spip_arty_gabaritassoc){type=rubrique}{id=#ENV{id_rubrique}}>
      
      <BOUCLE_blocs_corps(spip_arty_gabarit_ordre){gabarit=#GABARIT}{conteneur=3}{par ordre}>
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=3}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_corps>
      
      </BOUCLE_archetype_rubrique3>
      
      <BOUCLE_blocs_contexte2_defaut(spip_arty_gabarit_ordre){gabarit=rubrique}{conteneur=3}{par ordre}>
      <!-- blocs corps par defaut -->
      <INCLURE{fond=#NOM}{id_rubrique=#ENV{id_rubrique}}{id_rubrique=#_generale:ID_RUBRIQUE}{id_mot}{conteneur=3}{parametre=#PARAM}{lang}>
      </BOUCLE_blocs_contexte2_defaut>
      
      <//B_archetype_rubrique3>
      
      
      <div id="fin-corps"></div>
      </div><!-- fin du corps -->
      
      [(#GET{parametres}|element{'contenus'}|=={oui}|?{'</div>',''})<!-- fin de balise optionnelle contenus -->]
      [(#GET{parametres}|element{'footer'}|=={general}|?{' ',''})[(#INCLURE{fond=footer}{id_rubrique})]]
      <div id="fin-page"></div>
      </div><!-- fin du general -->
      [(#GET{parametres}|element{'footer'}|=={hors_general}|?{' ',''})[(#INCLURE{fond=footer}{id_rubrique})]]
      
      </body>
      </html>
    • heu, je vois pas où tu a inséré une boucle pour l’article d’acceuil.

      Une boucle à insérer serait, par ex :

      <BOUCLE_articleacc(ARTICLES){id_article=#ID_ARTICLE_ACCUEIL}>
      #TEXTE
      </BOUCLE_articleacc>
    • En fait j’ai testé la boucle après les lignes 55 56 70 mais ça ne marche dans aucun des cas. J’ai du merdé autre part !

    • tu a bien fait un var_mode=recalcul après ? (en fait si tu bosse en local, je te conseille de désactiver le cache via åune ligne dans mes_options.php->http://programmer.spip.org/Configurer-le-cache]).

      Par ailleurs, en relisant le code, je viens de voir qu’il n’y a pas de boucle rubrique englobante, donc il faut écrire

      <BOUCLE_rubacc(RUBRIQUES){id_rubrique}>
      <BOUCLE_articleacc(ARTICLES){id_article=#ID_ARTICLE_ACCUEIL}>
      #TEXTE
      </BOUCLE_articleacc>
      </BOUCLE_rubacc>
    • Génial ! ça marche grâce à la boucle rubrique englobante. Merci beaucoup ça me permet de faire marcher ce petit plugin et de progresser grâce à tes infos.

      Je voulais supprimer les lignes de codes rentrées pour ne pas surcharger les comm mais je ne peux plus éditer...

      Merci Maïeul !!!!!

    Répondre à ce message

  • 1

    Le terme « article d’accueil » était approprié quand le plugin était dans Compositions, mais maintenant que la fonctionnalité est sortie, ça vaudrait peut-être le coup de lui trouver un terme plus générique, car en réalité il s’agit d’une sélection, quel que soit l’usage qui en est fait.

    Idées :
    -  Article principal
    -  Article sélectionné
    -  Article phare (!)

    J’aime bien « article principal ».

    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