Définir une miniature d’article par défaut sous WordPress

Mis à jour le :

Le module Image à la une introduit sous WordPress 2.9 permet d’afficher une image d’accroche pour vos articles.

Les thèmes WordPress sont très friands de ce type de fonctionnalité… mais cela vous oblige à définir une image pour chacun de vos billets pour éviter de « casser » l’affichage de votre site. Prévenons ce problème en définissant une image par défaut.

Connectez-vous au back office de WordPress puis rendez-vous dans le menu Apparence puis Editeur.

Là, cliquez sur le lien correspondant à l’emplacement où vous souhaitez insérer la miniature par défaut. Essayez par exemple dans single.php pour l’afficher dans vos articles et placez les lignes à l’intérieur de la boucle.

Pour rappel, la boucle commence par :

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

Vous pouvez bien entendu passez par un client FTP et modifiez ledit fichier en le localisant dans /wp-content/themes/NOM_DU_THEME/

Ajoutez ensuite les lignes de code suivantes :

if (has_post_thumbnail()) {
the_post_thumbnail();
} else {
echo '<img src="' . get_bloginfo('template_directory') . '/images/image-defaut.jpg" />';
}

N’oubliez pas de sauvegarder le fichier.

Désormais, à chaque fois que vous publierez un article sans indiquer d’image à la une, la miniature par défaut s’affichera en lieu et place.

Avatar de Aurélien Denis

Protégez votre site WordPress

Vos données sont précieuses,
ne prenez pas le risque de tout perdre.
Confiez-moi votre maintenance !

Ces articles devraient t’intéresser…

20 réponses
  1. Avatar de Clicpartout
    Clicpartout

    Bonjour,
    merci pour cette astuce qui va bien me servir car je dois remettre au goût du jour plusieurs de mes sites et je me voyais mal éditer tous les articles pour y mettre une image à la une. Par contre est-ce qu’il y aurai un moyen de prendre une image aléatoire dans le dossier pour ne pas avoir trop de doublons.
    Merci d’avance.

  2. Avatar de noaneo
    noaneo

    Pour le site d’une association ,j’ai installé le thème Yoko,le code pour post_thumbnail n’est pas tout à fait comme sur l’exemple.
    Comme je ne sais plus comment mettre un code ici,j’ai mis le code sur un site test,désolé.
    http://er.v.free.fr/?page_id=548

    Merci par avance

  3. Avatar de barjel
    barjel

    Bonjour,

    bon c’est exactement ce que je cherche mais comme je n’y connais rien ça ne fonctionne pas ! Pour commencer je ne trouve même pas ça: dans le single.php de mon thème ???? (Mystique 3.3)

    ensuite je suppose qu’il faut ajouter le chemin de l’image par défaut, non? et donc où?

    if(has_post_thumbnail()){
    the_post_thumbnail();
    } else {
    echo  »;
    }

    voilà! désolé pour ces questions de débutant mais débutant je suis !

    Cordialement

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Le chemin de l’image par défaut est à indiqué dans la ligne 4 où il y a un echo. Dans l’exemple, il suffit d’envoyer dans un dossier images du thème, un fichier image-defaut.jpg.

      1. Avatar de barjel
        barjel

        Bon merci mais je n’y arrive pas… quelqu’un m’a dit que le thème mystique utiliser Atom et que’il fallait modifier autre chose mais rien à faire c’est au-dessus de mes compétences !

        Merci encore et bonne continuation !

        1. Avatar de noaneo
          noaneo

          la modification vous la faites dnas le fichier teaser.php ?? Sous la ligne 87 ????

  4. Avatar de el rahi
    el rahi

    Bonjour à tous,
    je suis en train de créer un thème pour WP et j’ignore quel codex utiliser pour mettre qu’une partie du texte dans la page d’accueil.
    Quelqu’un peut il me guider?
    Merci. Louis

    1. Avatar de nZAngel
      nZAngel

      Bonjour,
      je pense que la fonction que tu cherches est the_excerpt :
      https://developer.wordpress.org/reference/functions/the_excerpt/

      bonne journée

      1. Avatar de El Rahi
        El Rahi

        Merci pour ta réponse. Je vais la tester. Bonne journée.

  5. Avatar de nZAngel
    nZAngel

    Effectivement, j’ai recherché la fonction et il faut bien la mettre dans le loop et là plus de problème 🙂

    merci

  6. Avatar de Mimi
    Mimi

    Ça ne fonctionne pas et en plus ça m’ajoute une miniature inutile au-dessus des articles seuls.

    1. Avatar de Cybercraft
      Cybercraft

      Ça ne veut dire qu’une seul chose :
      Tu as mis ce bout de code dans single.php et que ce n’était apparemment pas l’endroit ou tu voulais voir apparaitre ton thumbnail.

      1. Avatar de Mimi
        Mimi

        Oui autant pour moi j’avais mal compris l’article. Mes excuses.

  7. Avatar de GeekPress
    GeekPress

    Ca ne fonctionne pas parce que ce n’est pas à mettre dans le fichier functions.php, mais à l’intérieur de la loop où vous afficher les détails de vos articles !

    J’en avais fait un article il y a quelques mois => http://www.geekpress.fr/wordpress/astuce/afficher-une-image-par-defaut-dans-vos-articles-wordpress-655/

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Heureusement que tu relis mes articles ! 😉

      Faut vraiment que j’arrête WordPress le dimanche soir moi…

      1. Avatar de GeekPress
        GeekPress

        lol
        Je connaissais aussi tkt, j’ai le même problème =D

  8. Avatar de Aurélien Denis
    Aurélien Denis

    Il y a peut-être une incompatibilité avec la 3.3. Je vais re-tester ces lignes de code demain. 😉

  9. Avatar de Mimi
    Mimi

    Ça ne fonctionne pas non plus pour moi (thème Mystique). L’ajout de ce code provoque un crash total du blog au point de devoir restaurer le fichier fonctions.php via Filezilla.

  10. Avatar de nZAngel
    nZAngel

    Bonjour,

    merci pour cette astuce mais perso ça ne fonctionne pas, il ne reconnait pas la fonction has_post_thumbnail()
    Je suis en 3.3.1

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Tu as rajouté les balises PHP dans le code ?

      Est-ce que ton thème supporte les miniatures ?

      Je ne pense pas qu’il y ait d’erreur dans le code…