La page d'accueil de votre site WordPress affiche par défaut les derniers articles avec dans 99% des cas un extrait de quelques lignes. Or, il se trouve que bien souvent, seul le titre permet d'accéder au contenu complet... ce qui est loin d'être évident pour la majorité des internautes qui comprendront bien plus facilement si on ajoute un lien en fin d'extrait et ce, de façon automatique.

Vous recherchez un développeur WordPress capable de vous créer un thème sur-mesure ? C'est mon métier depuis plus de 8 ans, prenez contact et discutons de votre projet.

Connectez-vous sur votre serveur FTP à l’aide de votre client favori – FileZilla, Transmit, etc., puis éditez le fichier functions.php présent dans le dossier de votre thème sous /wp-content/themes/NOM_DU_THEME/

Collez ces lignes de code entre les balises PHP :

function extrait_la_suite($more) {
global $post;
return ' <a href="'. get_permalink() . '">' . __( 'Read more...', 'textdomain' ) . '</a>';
}
add_filter('excerpt_more', 'extrait_la_suite');

Dans un souci d’internationalisation, le texte ‘Lire la suite’ ou ‘En savoir plus’ est en anglais dans le code. Vous devez le laisser dans la langue de Shakespeare puis indiquez le textdomain correspondant à votre thème pour procéder ensuite à la traduction française via Poedit.

Si vous n’y parvenez pas pour des raisons techniques et que vous n’avez aucun intérêt à disposer d’une version traduisible, indiquez directement le texte en français… personne n’en saura rien.

Pour aller plus loin, vous pouvez indiquer une classe CSS pour personnaliser l’apparence du lien, soit un code PHP qui ressemblera à ça :

function extrait_la_suite($more) {
global $post;
return ' <a class="readmore" href="'. get_permalink() . '">' . __( 'Read more...', 'textdomain' ) . '</a>';
}
add_filter('excerpt_more', 'extrait_la_suite');

Il vous faudra ajouter la propriété .readmore dans votre feuille de styles CSS pour indiquer les propriétés souhaitées.

Pour en savoir plus sur la gestion des extraits sous WordPress, reportez au tutoriel sur la définition d’une taille d’extrait pour WordPress.

Crédits photo : smiteme

12 commentaires
  1. Question: pourquoi on a une balise dans « Read more… » ? Où est déclaré le premier ?

    1. Aurélien Denis auteur de l’article

      Pas compris la question…

  2. Dans tous les themes que j’ai utilisés il y avait toujours le read more par défaut, je croyais même que c’était de base dans wordpress

    1. Aurélien Denis auteur de l’article

      Pour ma part, pas toujours et tu peux aussi réutiliser cette fonction pour tes propres thèmes.

  3. Autant pour moi, mon commentaire contenait du HTML.

    il y a une balise fermente après le read more…, mais je ne vois pas la balise ouvrante. Est-ce normal ? Etait-elle déclarée avant dans le code ?

  4. Bon décidément, même en mettant des espaces à une balise HTML ça ne marche pas dans les commentaires. Il y a une balise SPAN fermante, mais pas ouvrante.

    1. Aurélien Denis auteur de l’article

      Oui compris pour la span. C’est une erreur !

  5. j’ai un thème payant qui est Sahifa et je veux l’explorer pour le rendre personnel.
    J’ai installé WP en Français V 3.5.1 et ensuite j’ai installé le thème (qui est en Anglais) mais bizarrement (ou peut être pas) tous ce qui est dans WP est en Français, c’est à dire que « Read more » est « Lire la suite ».

    Je recherche dans le code et dans la base et je ne retrouve pas de trace de « Lire la suite » et c’est ce que je ne comprend pas

    Pour le « Read More » j’ai trouvé qu’on peut mettre ce qu’on veut dans le fichier loop.php mais je veux bien comprendre comment ça marche

    Merci pour votre aide.

    1. Aurélien Denis auteur de l’article

      Pour tout savoir sur la traduction des thèmes WordPress, merci de lire ces <a href= »https://wpchannel.com/?s=poedit » target= »_blank » rel= »nofollow »>2 tutoriels consacrés à Poedit</a>.

  6. Super! Tu tombes à pic!

    C’est exactement ce que je cherchais!

    Merci beaucoup pour l’astuce!

    A bientôt

  7. | DK | Antony

    Merci, je recherchais cette fonction et ça fonctionne à merveille !
    Un grand merci pour ce tutoriel et pour ce site

  8. Voilà enfin une explication claire sur le sujet ! ce code fat disparaître le […] de la fin de l’extrait (thème twentythirteen).
    Je l’ai remis en remplacant ‘read more’ par ‘[…] lire la suite’ , il y a-t-il une solution plus naturelle ?

Les commentaires sont fermés.