Le WordPress d'aujourd'hui, décodé pour les développeurs

Thèmes

Une bio d’auteur affichée grâce à wp_usermeta, sans champ personnalisé

Comment enrichir une page auteur avec une biographie et des liens vers les réseaux, en s'appuyant uniquement sur les métadonnées natives des profils utilisateurs.

Par WordPress Développement • 5 février 2022 • 4 min de lecture • Aucun commentaire
Une bio d'auteur affichée grâce à wp_usermeta, sans champ personnalisé

Faut-il vraiment installer une extension de gestion de profil pour afficher une biographie d’auteur enrichie sur une page dédiée ? Dans la majorité des cas, la réponse est non : WordPress stocke nativement bien plus d’informations sur chaque utilisateur que ce qu’un thème classique affiche par défaut.

Le profil utilisateur, accessible depuis l’écran « Utilisateurs » de l’administration, comprend déjà une biographie, une adresse de site web, et plusieurs champs liés aux réseaux sociaux selon la version de WordPress installée. Ces informations sont accessibles depuis n’importe quel template via get_the_author_meta().

Les champs natifs disponibles

Sans configuration supplémentaire, chaque compte utilisateur dispose des métadonnées suivantes, directement exploitables dans un template de page auteur.

CléContenu
descriptionLa biographie saisie dans le profil
user_urlLe site web personnel ou professionnel
display_nameLe nom affiché publiquement
user_emailL’adresse courriel (à afficher avec prudence)
L'essentiel à retenir : WordPress stocke déjà une biographie et plusieurs liens sociaux nativement ; get_the_author_meta() suffit à tout récupérer ; Aucune extension de profil n'est nécessaire pour ce besoin courant

Construire le template author.php

<?php
$auteur_id = get_queried_object_id();
$bio = get_the_author_meta( 'description', $auteur_id );
$site = get_the_author_meta( 'user_url', $auteur_id );
?>
<div class="fiche-auteur">
    <h2><?php echo esc_html( get_the_author_meta( 'display_name', $auteur_id ) ); ?></h2>
    <?php if ( $bio ) : ?>
        <p><?php echo esc_html( $bio ); ?></p>
    <?php endif; ?>
    <?php if ( $site ) : ?>
        <p><a href="<?php echo esc_url( $site ); ?>">Site personnel</a></p>
    <?php endif; ?>
</div>

get_queried_object_id() retourne ici l’identifiant de l’auteur consulté, ce qui évite de dépendre d’une variable globale moins explicite. L’échappement systématique avec esc_html() et esc_url() reste indispensable, une biographie étant un champ librement modifiable par chaque utilisateur.

Ajouter des liens sociaux sans extension

Depuis WordPress 5.4, le profil utilisateur intègre nativement des champs pour plusieurs réseaux, accessibles eux aussi via get_the_author_meta() avec les clés correspondantes.

  • get_the_author_meta( 'twitter', $auteur_id ) pour le pseudonyme associé au réseau social concerné.
  • get_the_author_meta( 'facebook', $auteur_id ) pour le lien de profil correspondant.
  • get_the_author_meta( 'aim' ) et get_the_author_meta( 'yim' ), des champs plus anciens, rarement utiles aujourd’hui.

Étendre proprement si un besoin dépasse le natif

Si un besoin précis dépasse ce que les champs natifs couvrent, par exemple un numéro de téléphone professionnel ou une fonction dans l’entreprise, la bonne pratique reste d’ajouter un champ personnalisé sur le profil utilisateur via add_action( 'show_user_profile', ... ) et update_user_meta(), plutôt que d’installer une extension complète de gestion de profil pour un seul champ supplémentaire.

function monthème_champ_fonction( $user ) {
    ?>
    <h3>Informations complémentaires</h3>
    <table class="form-table">
        <tr>
            <th><label for="fonction">Fonction</label></th>
            <td>
                <input type="text" name="fonction" id="fonction"
                       value="<?php echo esc_attr( get_the_author_meta( 'fonction', $user->ID ) ); ?>"
                       class="regular-text" />
            </td>
        </tr>
    </table>
    <?php
}
add_action( 'show_user_profile', 'monthème_champ_fonction' );
add_action( 'edit_user_profile', 'monthème_champ_fonction' );

Avant d’ajouter un champ, un réflexe utile : vérifier la liste complète des métadonnées déjà stockées pour un utilisateur avec un simple affichage de get_user_meta( $id ) sans clé précise, pour éviter de dupliquer une information déjà disponible.

En résumé

Une page auteur enrichie n’exige presque jamais d’extension dédiée : la structure de profil native de WordPress couvre déjà l’essentiel des besoins courants. Réserver l’ajout de champs personnalisés aux besoins réellement absents du profil de base garde le thème plus léger et plus simple à maintenir.

Laisser un commentaire

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

Partager :

À propos de l'auteur

WordPress Développement

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi