Le « post format » de WordPress, késako ?

Posté par Guillaume le 27 janvier 2012

41 commentaires :)

Les « post format » sont trop souvent écartés lors de la mise en forme des articles. Pourtant ils offrent des possibilités quasiment infinies de personnalisation !

Et en voici la preuve.

Niveau : intermédiaire
Code : PHP

Prérequis

Avant de s’engager dans ce vaste sujet, il est nécessaire d’identifier les différents fichiers sur lesquels nous allons travailler.

  • Dans le répertoire de votre thème, vous devriez avoir un fichier functions.php. Gardez le sous la main car nous serons amenés à le modifier.
  • Ensuite, il faudra modifier le fichier post.php situé dans le dossier wp-includes/ de WordPress.
  • Repérez également le fichier qui affiche le contenu de vos articles, dans TwentyEleven il s’agit du fichier single.php

Je fais toujours des sauvegardes des fichiers sensibles avant de leur apporter des modifications et je vous conseille d’en faire autant !

À l’attaque

Post format dans WordPress

Vous avez surement remarqué la présence de ce cadre lorsque vous écrivez vos articles. Ils permettent d’attribuer un format à vos articles. Jusque là vous ne me direz rien d’exceptionnel, mais nous allons découvrir comment utiliser ces posts formats pour personnaliser nos articles.

Pour les besoins de l’article, nous allons créer deux posts formats radicalement différents.
Le premier affichera le titre et le contenu de l’article tandis que le second n’affichera que l’image à la une.

Un peu de code…

Ouvrez votre fichier functions.php de votre thème et recherchez la ligne suivante :

// La ligne qui nous intéresse !
add_theme_support( 'post-formats', array( 'aside', 'link', 'gallery', 'status', 'quote', 'image' ) );

Note : Sur la version 3.3.1 de WordPress, il s’agit de la ligne 104 !
Note 2 : Avec la 3.8, c’est à la ligne 99.
Si vous ne la trouvez pas, n’hésitez pas à la copier coller dans ce même fichier pour pouvoir continuer le tutorial.

Cette fonction ajoute les « posts formats » spécifiés dans le tableau, soit 6 dans notre cas.

Comment personnaliser l’affichage ?

Dans le fichier single.php, on va pouvoir récupérer le post format associé à l’article et du même coup personnaliser l’affichage pour chacun de ces formats.
Voilà à quoi cela ressemble :

// En passant est la traduction de Aside.
// Si l'article est lié au post format aside
if ( has_post_format( 'aside' )){
// Le titre de mon article
the_title();
// Et son contenu
the_content();
}

// Fin du format Aside. On va débuter le format Image
elseif ( has_post_format( 'image' )){
//l'image à la une de mon article
if ( has_post_thumbnail() ) { the_post_thumbnail( '' ); }
}
// De même pour les autres...

Libre à vous d’afficher les informations de votre choix pour vos articles, je vous renvoie vers l’excellent Codex de WordPress !
N’oubliez pas d’ajouter les div de votre thème comme primary ou content !

Si vous voulez voir un exemple concret, regardez les 3 post format de ce site :
1/ Le premier pour afficher nos articles du blog comme celui que vous lisez actuellement
.
2/ Le second pour afficher les photos avec une mise en forme horizontale (exemple).
3/ Et le dernier pour afficher les photos avec une mise en forme verticale (exemple).

Je vous avais prévenu, ces post format sont au top et permettent de faire à peu près tout ce qu’on veut avec la mise en page, mais pas seulement.
Vous avez sûrement remarqué qu’on ne peut manipuler les post format qu’avec leur nom anglais et on va aller plus loin en créant de nouveaux post format bien de chez nous.

Créer ses propres post format

Attention ! À partir de maintenant, nous allons toucher aux fichiers core de WordPress.
Il va sans dire que c’est fortement déconseillé. Je vous montre cette manipulation uniquement pour votre culture générale :)
La première manipulation consiste à retrouver la fonction get_post_format_strings(). Vous avez 30 secondes sinon ce tutorial s’autodétruira !
Allez un coup de pouce, elle se trouve dans le fichier post.php (dans le répertoire wp-includes).
Important : sur la version 3.8 de WordPress, la fonction se trouve dans le fichier post-formats.php !
Voici la fonction telle qu’elle est définie par défaut :

function get_post_format_strings() {
$strings = array(
'standard' => _x( 'Standard', 'Post format' ), // Special case. any value that evals to false will be considered standard
'aside' => _x( 'Aside', 'Post format' ),
'chat' => _x( 'Chat', 'Post format' ),
'gallery' => _x( 'Gallery', 'Post format' ),
'link' => _x( 'Link', 'Post format' ),
'image' => _x( 'Image', 'Post format' ),
'quote' => _x( 'Quote', 'Post format' ),
'status' => _x( 'Status', 'Post format' ),
'video' => _x( 'Video', 'Post format' ),
'audio' => _x( 'Audio', 'Post format' ),
);
return $strings;
}

Nous allons simplement ajouter à la suite notre nouveau post format.

'video'    => _x( 'Video',    'Post format' ),
'audio' => _x( 'Audio', 'Post format' ),
'nouveau' => _x( 'Nouveau', 'Post format' ),
);

Le cas échéant, si vous souhaitez seulement en supprimer certain, vous pouvez très bien supprimer les lignes dans cette fonction.
Attention ! Si vous faites une mise à jour WordPress, ce fichier sera remplacé par un nouveau, sans vos modifications.
Il est impératif de répéter cette manipulation après chaque maj.

Ensuite, nous retournons éditer le fichier functions.php en ajoutant à la suite du tableau :

// On ajoute un nouveau post format => nouveau
add_theme_support( 'post-formats', array( 'aside', 'link', 'gallery', 'status', 'quote', 'image', 'nouveau' ) );

Veillez bien à ne pas avoir de doublons de cette fonction, sinon il y aura conflit entre les deux et la deuxième ne sera pas prise en compte.
Bizarre : il semblerait que le thème de base ne prenne pas en compte les post format chat, video et audio alors qu’ils sont définis dans le fichier post.php vu précédemment ; n’hésitez donc pas à les rajouter au passage :)

Quelques vérifications

Côté base de données, allons voir ce que ça donne.
La table wp_terms contient les post format. 
Vous devez au préalable enregistrer en brouillon ou publier votre article pour que le post format soit créé dans la base de données.
Nous allons donc vérifier qu’il existe bel et bien dans la base de données en exécutant cette requête (n’oubliez pas de remplacer « nouveau » par le nom de votre post format s’il est différent) :

SELECT *
FROM `wp_terms`
WHERE `name` = "post-format-nouveau"

Si vous obtenez un résultat c’est parfait ! Vous venez de créer un post format et vous pouvez l’utiliser :)
Dans le cas contraire, vous avez peut-être oublié l’une des étapes du dessus.

Mettre en page les post format dans la loop WordPress

Il est aussi possible de personnaliser l’affichage des post format dans les pages appelant les articles (recherche, archive, actualité, …).
Vous avez remarqué la présence dans le thème TwentyEleven des fichiers content-aside.php, content-gallery… Ce sont eux qu’il va falloir modifier.
Copiez / collez l’un d’eux et renommez-le en content-votrepostformat.php.
Pour reprendre notre exemple, il faudra créer un fichier content-nouveau.php.
Voilà, il ne vous reste plus qu’à modifier l’affichage ;)

Concluons

Maintenant que vous vous êtes familiarisés avec cet outil fantastique, récapitulons ensemble ses avantages :

  • Pouvoir personnaliser différemment ses articles selon le contenu,
  • Associer à des articles d’une même catégorie plusieurs styles différents,
  • Customiser le modèle d’un article selon son post-format dans la page actualité, recherche ou archive.

Et vous, utilisez-vous les post format ? Si oui ou non expliquez pourquoi !

See you space internaute

Summary
Article Name
Le "post format" de Wordpress, késako ?
Description
Les « post format » sont trop souvent écartés lors de la mise en forme des articles. Pourtant ils offrent des possibilités quasiment infinies de personnalisation ! 
Et en voici la preuve.
Nicolas AUNE
Nicolas AUNE
PUShAUNE

Tu kiffes ? Alors partage avec tes potes !

41 commentaires

  1. Le , RedLion a dit :

    Normalement, je suis plutôt ouvert. Cependant, là…J’ai arrêté de lire dès que j’ai vu que vous proposiez de modifier un fichier « core » de wordpress: « post.php » dans le dossier « wp-includes ». C’est une pratique qu’on considère taboue pour TOUS les CMS, quels qu’ils soient.

    Ce tutoriel est à recommencer de base pour moi.

  2. Ping : Le « post format » de WordPress, késako ? | Wiki

  3. Le , Phoenix a dit :

    Merci pour cet excellent tuto !
    Par contre, comment modifier l’icône du format ? (qui apparaît dans la liste des formats et dans la liste des articles dans l’admin)

    Merci d’avance :)

    • Le , Guillaume a dit :

      Merci Phoenix !

      WordPress 3.8, si tu l’utilises, prend en compte les « Dashicons ». Un lien utile pour voir à quoi correspondent les icones : http://melchoyce.github.io/dashicons/

      Le fichier .css qui est loadé pour afficher les icones est wp-admin.min.css qui se trouve dans wp-admin/css.

      Quelque part dans ce fichier se trouve par exemple :
      .post-state-format.post-format-tonpostformat:before,.post-format-icon.post-format-tonpostformat:before,a.post-state-format.format-tonpostformat:before{content:’\f122′}

      Il faut que tu trouve une icône qui te plaise dans la liste (voir lien) et que tu copies la ligne du dessus dans le css minimifié en remplaçant le code par celui que tu veux.

      Les versions précédentes jouaient avec un .png et un background-position !

      A bientôt !

      • Le , Phoenix a dit :

        Super, merci infiniment !

        • Le , Phoenix a dit :

          J’ai ajouté le css dans les deux fichiers css des dashicons mais l’icone ne s’affiche pas. Quand je regarde avec firebug je remarque que « :before » ne s’ajoute pas. Une autre idée ? sinon je m’en passerait, ce n’est pas le plus grave ! :)

          • Le , Guillaume a dit :

            Aie, là je vois pas d’où ça peut venir ! J’ai testé et cela fonctionne. Sans doute un problème de cache ? Du coup tu l’a changé dans wp-admin.css et wp-admin.min.css ?

  4. Le , digital a dit :

    Salut très bon article moi je les utilise depuis l’origine mais actuellement sur un projet j’ai du mal à créer un filtre pour choisir les types de post-formats à afficher.

    je veux pour une catégorie afficher dans un template de page des articles de type standard et dessous les articles de type video toujours de cette même catégorie.

    j’ai essayé ceci sans succès non =

    ID, 'video', true) ) { ?>
    <a href="ID, 'video', true) ?>">ID, 'video', true) ?>

    j’ai pensé à meta_key = 'STANDARD' & meta_key = 'video' pour créer ce filtre sans succès aurais-tu une piste ?

    • Le , Guillaume a dit :

      Salut,

      Je vois ce que tu souhaites faire par contre le copié-collé de ton code a dû foirer :s

      Tu peux réessayer ?

      A+

      • Le , digital a dit :

        Désolé voici le code que j’ai essayé sans succès :


        ID, 'video', true) ) { ?>
        ID, 'video', true) ?>

        actuellement j’utilise ce code pour afficher uniquement les articles standard et je dois le modifier pour afficher les standards et videos dans la même page à des endroits différents.


        add_filter('posts_where','website_inter_posts_where',10,2);
        function website_inter_posts_where($where,$query) {
        global $wpdb;
        $new_where = " ({$wpdb->posts}.ID NOT IN (SELECT post_id FROM {$wpdb->postmeta} WHERE meta_key = 'video' AND LENGTH(meta_value) > 0 ))";
        if (empty($where))
        $where = $new_where;
        else
        $where = "{$where} AND {$new_where}";
        return $where;
        }

        • Le , digital a dit :


          if ( get_post_meta($post->ID, 'video', true) ) {

          echo get_post_meta($post->ID, 'video', true)

          }

  5. Le , mlle123 a dit :

    Bonjour,

    Merci pour ce tuto qui a très bien fonctionné pour moi. Je n’ai qu’un problème (majeur) :
    Le titre de mon article est publié mais pas son contenu. J’ai relu et relu mon code mais impossible de trouver d’où ça vient! ça sent l’erreur bête de débutant mais je m’arrache les cheveux!

    Voici votre code inséré dans ma page :

    • Le , Guillaume a dit :

      Merci pour tes retours !
      Par contre ton message s’arrête brusquement lorsque tu commences à parler code :s

      • Le , mlle123 a dit :

        Oups! Je n’avais pas vu. Mais c’est bon en fait, j’ai trouvé une autre solution qui est d’insérer ce petit bout de code à l’endroit où je veux mettre mon post, en mettant bien son id :

        post_title;
        $contenu = $billet->post_content;
        $contenu = apply_filters(‘the_content’, $contenu);
        $contenu = str_replace(‘]]>’, ‘]]>’, $contenu);
        ?>

        <?php echo "$title$contenu$date« ; ?>

        • Le , mlle123 a dit :


          post_title;
          $contenu = $billet->post_content;
          $contenu = apply_filters('the_content', $contenu);
          $contenu = str_replace(']]>', ']]>', $contenu);
          ?>

          <?php echo "$title$contenu$date"; ?>


          CE code donc, pardon

  6. Le , Belenis a dit :

    Je me répond à moi même. Il semblerais que cette donnée soit stocké dans wp_term_taxonomy.
    De la plus simple des façon. Object_id correspond à l’id du post, et term_taxonomy_id à l’id du post_format.

    Exemple: Si l’id du post est 309, et que votre post_format personnalisé à été inséré sous l’id 85 dans wp_term, alors l’entrée dans wp_term_taxonomy est la suivante:
    object_id = 309
    term_taxonomy_id = 85
    (term_order n’est pas utilisé).
    Pour changer un format de post massivement sur vos messages, il suffit d’executer la requette suivante:

    UPDATE wp_term_relashionship SET column_name = term_taxonomy_id REPLACE(term_taxonomy_id ,ID_ancien_format, ID_nouveau_format)

    Evidemment, si aucune entrée dans la table term_taxonomy_id ne correspond à vos posts, c’est que ces derniers ont la valeur d’attribue par défaut. Vous pouvez créer une requette d’insertion dans term_taxonomy_id pour changer leur format.
    Mais je pense qu’il serait intéréssant de savoir comment changer la valeur du format de post par défaut. Si quelqu’un à une piste…

    • Le , Guillaume a dit :

      Salut Belenis,

      Merci pour tes retours, c’est effectivement bien plus rapide à modifier avec une bonne requête SQL :)
      Si je comprends bien, tu souhaites checker par défaut un autre post format, c’est bien ça ?
      En fouinant dans le code, j’ai trouvé le fichier qui définit le bloc qui affiche les posts formats dans wp-admin/includes/meta-boxes.php.

      La fonction post_format_meta_box se charge donc de les afficher. En la regardant de plus prêt, on peut se rendre compte qu’il n’y a pas de filtre pour changer la valeur par défaut. On peut envisager de la changer dans le core WordPress (ce que je ne te conseille pas de faire) ou bien de passer par un peu de jQuery dans un plugin mais c’est beaucoup de boulot pour finalement pas grand chose !

      A+ !

  7. Le , Belenis a dit :

    Bonjour et merci pour ce très bon post !
    Je cherche à éditer massivement le format de plusieurs milliers de post, mais mystérieusement, je ne vois pas ou cette donnée est stockée dans la base SQL.
    wp_term contient bien le nom des format ajoutés, mais ou se trouve l’attribut qui determine le format d’un post ? Rien dans wp_post ou wp_postmeta, je m’arrache les cheveux depuis plusieurs heures…
    Savez-vous ou sont ces donnés ?

  8. Le , Eric a dit :

    Ouhhhh ! j’ai l’impression que pour utiliser WordPress, il faut avoir fait Math Sup car chaque explications est plutôt compliqué je trouve, il faut toujours modifier des lignes de commandes et encore et toujours des tutos, des tutos mais la principale occupation n’est plus la ! c’est à dire écrire son blog !!!

    N’y à t’il pas plus simple pour travailler rapidement avec WordPress ?

    • Le , Guillaume a dit :

      Bonjour Éric,
      Wordpress se veut être dans ses thèmes de base le plus généraliste possible. Il ne convient pas forcément aux besoins de tous le monde. Certains qui ont des connaissances en développement se lancent dans la découverte de cette solution et choisissent de mettre les mains dans le code (la plupart du temps en suivant des tutos comme tu l’as justement souligné). Si tu ne fais pas partie de ceux la, tu as la chance de pouvoir bénéficier d’une communauté assez incroyable d’integrateurs et de développeurs qui créent des thèmes et plugins pour WordPress. Et la ça devient plus intéressant. Il y en a absolument pour tous les goûts. Themeforest est plutôt complet et je te conseille d’aller y faire un tour :)

      Ce que tu dis est vrai, ce qui compte c’est le contenu mais la plupart des internautes recherchent aussi du visuel et de l’ergonomie !
      Ton article relatif au pied d’atelier pour vélo est top. La même chose pour une moto et je saute dessus !

      Bonne continuation à toi

  9. Le , wp44 a dit :

    Bonjour,
    Tout d’abord bravo pour ce tuto très bien expliqué et très intéressant.
    Je suis confronté à un petit problème pour la création de mon site internet.
    J’aimerais pouvoir afficher sur ma page d’accueil un extrait d’article avec sa miniature. Est ce que vous auriez une méthode? J’ai testé la méthode the_excerpt() mais elle enlève les images associées à l’article :'(

    • Le , Guillaume a dit :

      Salut wp44 et d’abord merci pour tes retours !
      Concernant ton soucis, la méthode the_excerpt() te ramène seulement l’extrait de l’article. Pour afficher l’image qui lui est associée, je te conseille d’utiliser la méthode the_post_thumbnail() qui est présentée de manière très détaillée dans le codex wordpress.

      Bon courage pour tes modifs !

      • Le , wp44 a dit :

        Salut et merci pour ta réponse rapide.

        Oui mais la méthode the_post_tumbnails() sert juste à afficher une image associée à l’article. Le problème est que si je veux afficher un extrait d’un article qui a une galerie, j’ai le code de la galerie qui s’affiche :(

        • Le , Guillaume a dit :

          Ha dac ! Pour éviter une inception de messages tu pourrais m’envoyer par mail le contenu de ton extrait et plus précisément ce que tu souhaites faire ?
          On trouvera peut-être une solution :p

          • Le , wp44 a dit :

            oui bien sur. quelle est ton adresse mail?

          • Le , Ninawoo a dit :

            Bonjour, j’ai exactement le même problème..
            Avez -vous trouvé une solution?

  10. Le , Guillaume a dit :

    Salut Henry,

    content-atelier.php te permet de gérer différemment l’affichage des posts formats dans la loop WordPress (page recherche, archive…) !
    Ton problème semble concerner l’affichage de l’article en lui-même, du coup es-tu certain d’avoir suivi la rubrique « Comment personnaliser l’affichage ? » ?

    Si c’est le cas, là comme ça je ne peux pas voir d’où le problème peut venir.
    Je pense que tu devrais en tout cas copier le content-aside de ton thème de base et retester.

    Tu peux envoyer ton code / ta version de WordPress, je pourrai peut-être t’aider :p

    A bientôt !

    • Le , Henry Nicolas a dit :

      Auriez-vous une e-mail à laquelle je pourrais vous contacter ? :)
      Car j’essaie vraiment de m’en sortir seul, mnt le contenu s’affiche, mais l’affichage par défaut disparait, et encore, mon post-format génère des bugs. :/ J’aimerais demander quelques conseils sans polluer l’espace commentaires. Merci.

      • Le , Guillaume a dit :

        Tu peux me contacter à l’adresse guillaume[at]agence-dozo.fr pour qu’on regarde ton problème de plus près :p

  11. Le , Henry a dit :

    Tout fonctionne jusque la création de mon post-format dans la base de données, mais une fois que j’essaie de mettre en page mon article via un « content-ateliers.php » pour mon cas, alors ça ne fonctionne pas… Peut-être que c’est dû au fait que j’ai copier/coller le contenu du « content-aside » de Twentyeleven, et que le thème de base que j’utilise est twentyten ?

    Help please, merci.

  12. Le , Edouard a dit :

    Modifier le core WordPress pour ajouter des posts format ?
    Je pense que c’est une très mauvaise idée et contraire à la philosophie de WP, (toute modification ou personnalisation devrait se faire au sein du thème ou d’un plugin, suivant sa finalité).
    Si on regarde le core, on remarque qu’il n’y a aucun filtre pour modifier/ajouter des posts formats, donc que cela n’a pas été créé pour qu’on puisse ajouter les nôtres.

    Cependant les posts formats ne sont qu’une taxonomie pré-intégrée. Si on veut créer nos propres posts formats parce que cette liste intégrée ne nous convient pas, autant ajouter une taxo perso (avec un nom différent que « format », afin d’éviter les conflits), ce sera bien plus propre et cela ne posera aucun problème lors de toute mise à jour de wp.
    De plus modifier une fonctionnalité intégrée et standardisée de wp c’est perdre l’éventuelle compatibilité de la gestion des posts formats d’un thème à un autre (pour les thèmes assurant leur utilisation et leur compatibilité).
    Dans ce cas de figure, de mon point de vue, quitte à devoir mettre la main dans le code, il est plus logique et plus propre d’effectuer un développement spécifique pour intégrer et gérer une taxonomie perso dans le thème qu’en modifier une existante et standardisée.

    Les commentaires sur cet article et l’article en lui même sont intéressants, expliquant certainement de manière plus claire que moi cette logique et donnant une approche pour éventuellement « personnaliser » ces posts formats en les « traduisant » : http://www.geekpress.fr/wordpress/guide/post-formats-wordpress-923/

    • Le , Guillaume a dit :

      Salut Edouard et merci pour tes retours,

      En fait, comme tu le dis je trouve ça très dommage que cette fonctionnalité ne soit pas d’avantage exploitée en standard par WordPress.
      Le simple fait par exemple de retrouver lors de la création / modification d’un article le bloc « Format » m’avait intéressé à l’époque et j’ai souhaité creuser ça !
      Le plus dommage c’est que ces Posts formats ne soient pas encore exploités dynamiquement et ce dès l’installation du blog.
      Côté expérience utilisateur, il sera certainement plus aisé d’habituer l’utilisateur à cocher la case adéquate lors de la rédaction d’un article pour changer son affichage :p
      Effectivement, le gros problème concerne les mises à jour, mais bon tout n’est pas figé avec une communauté immense comme celle de WordPress ! Les évolutions sont souvent mises en place justement quand on tombe sur certaines limitations…

      Ton lien est excellent et vient compléter à merveille cet article.
      Je rajouterai même un lien vers ce plugin (qui n’est pas de moi) qui permet d’éditer la mise en forme de ses Posts Formats : http://wordpress.org/extend/plugins/wp-post-formats/
      On pourrait très bien aller plus loin en ajoutant des fonctionnalités d’ajout / modification / suppression ? A voir !
      Bonne continuation !!

  13. Le , Frink a dit :

    Merci pour ce très bon tutoriel !

    • Le , Guillaume a dit :

      Content d’avoir pu t’aider :)

  14. Le , Baptiste a dit :

    Merci pour le tuto ! J’étais complètement passé à côté.
    Mais du coup, je suis un peu perplexe : d’après toi, dans quelle mesure les Posts Formats se substituent (ou pas) aux CPT qu’on aurait pu créer pour faire à peu prêt la même chose. Exemple : moi je m’étais fait un CPT « Citations ».

    T’en penses quoi ? Quelle différence tu ferais entre CPT et Posts Formats ?

    • Le , Guillaume a dit :

      Salut Baptiste,

      J’ai préféré utiliser les Posts Formats car on les applique seulement sur les Posts.
      Les CPT peuvent quant à eux être ajoutés à des pages, posts ou révisions ou même des menus de navigation.
      Ce caractère plus spécialisé du Posts Formats a été retenu dans notre cas et ça ne m’étonnerait pas qu’on ait de meilleurs résultats en terme de performance ! A voir :p L’autre gros avantage du Posts Formats, c’est que de plus en plus de thèmes l’utilisent et il en devient de plus en plus un standard WordPress.
      Tout dépendra finalement de ce que l’on souhaite faire.

      Bon j’espère avoir a peu près répondu à tes questions, si ça reste flou n’hésite pas à poster. A bientôt :)

  15. Le , DIAKHABY a dit :

    Merci pour ce super tutoriel, qui est très très intéressant. Vous m’avez donné un grand pas ici, j’ai passé pas mal de temps à chercher comment le faire.
    Merci à vous

    • Le , Guillaume a dit :

      Mais de rien :)
      Si tu as d’autres questions n’hésite pas !

Répondre à Baptiste Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.