Tout savoir sur WordPress
Tutoriel WordPress

Ajouter un extrait aux pages en 1 ligne de code

Pour le moment, les extraits sont réservés aux articles, mais il est possible d’ajouter cette fonctionnalité à toutes vos pages.

WordPress propose d’ajouter des extraits aux différents articles de notre site. Mais qu’en est-il pour les pages ? Et bien il faut savoir que, par défaut, WordPress ne permet pas d’avoir un champ “Extrait” dans l’administration des pages.

Pourtant, il suffit d’une petite ligne de code pour obtenir la fonctionnalité des extraits disponibles sur les pages.

Cette astuce se place dans le fichier functions.php qui se trouve à la racine de votre thème.
[pastacode lang=”php” message=”” highlight=”” provider=”manual”]


add_action( 'admin_init', create_function('', "return add_post_type_support( 'page', 'excerpt' );") );

[/pastacode]
En complément de cet article, vous pouvez également consulter l’astuce qui permet d’ajouter un éditeur visuel aux extraits : Ajouter tinyMCE au champ “Extrait” de WordPress.

Cet article a été mis à jour il y a 4611 jours - Il n'est peut être plus à jour !

Article écrit par Jonathan B.

Jonathan est le co-fondateur de WP Media, startup connue pour être l’auteur de WP Rocket et Imagify. Il est aussi co-organisateur du WordCamp Lyon et Paris.

5 Commentaires

  1. salut, je suis novice en informatique mais je cree mon blog avec wordpress, pourrais tu me dire ou on place precisement cette ligne de code ? je veux dire quel ligne ?

    merci d’avance

  2. @SHERAZAD : C’est indiqué dans l’article ;)

    Le code se place dans le fichier functions.php présent à la racine de ton thème.

  3. merci de ta reponse ! j’ai bien compris jusque l’a mais ou precisement dans function.php juste apres la balise <?php

    – je l’ecris comme ça ?

    <?php
    add_action('admin_init', create_function('', "return add_post_type_support( 'page', 'excerpt' )") );
  4. Pour le néophyte, expliquons quand même le code qui n’est pas habituel.

    Le second paramètre de “add_action()” est habituellement une chaine contenant un nom de fonction.
    Ici il vaut “create_function(…)” qui est une fonction qui crée une autre fonction dire ‘anonyme’ (on ne connait pas son nom). Elle revoie une chaine, ce qui permet de l’utiliser dans un add_action.
    Ce ‘create_function()’ permet donc de créer en ligne une fonction rapide. Le but est ici de gagner de la place (quitte à perdre en lisibilité/maintenance ?)

    Voici le code comme il serait habituellement :

    function add_exerpt_support_for_page() {
      add_post_type_support( 'page', 'excerpt' );
    }
    add_action('admin_init', 'add_exerpt_support_for_page' );
    

    ps : inutile de return cette fonction ;)