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

Tips

Un lien « voir dans Sentry » sur chaque notice d’erreur pour l’équipe technique

Faire gagner un clic à l'équipe de support en pointant directement vers l'incident correspondant plutôt que vers une recherche manuelle.

Par Clément Hadrot • 18 décembre 2025 • 4 min de lecture • Aucun commentaire
Un lien « voir dans Sentry » sur chaque notice d'erreur pour l'équipe technique

Comparez ces deux parcours pour une même notice d’erreur affichée dans l’administration : dans le premier, le support ouvre Sentry, cherche l’incident par mot-clé approximatif, hésite entre trois résultats similaires ; dans le second, il clique un lien et tombe directement sur l’événement concerné, avec sa stack trace complète et son contexte utilisateur. La différence tient à une seule information : l’identifiant d’événement Sentry, capturé au moment de l’erreur et transmis jusqu’à l’affichage de la notice WordPress.

La plupart des intégrations Sentry pour WordPress se contentent de capturer l’erreur et de l’envoyer, sans jamais renvoyer cet identifiant vers l’interface d’administration. C’est pourtant une donnée disponible immédiatement après l’appel de capture.

Récupérer l’identifiant d’événement au moment de la capture

Le SDK PHP de Sentry retourne l’identifiant généré dès l’appel à captureException. Il suffit de le stocker temporairement pour l’associer à la notice qui sera affichée juste après :

use function Sentry\captureException;

try {
    traiter_commande_complexe( $commande_id );
} catch ( Throwable $erreur ) {
    $event_id = captureException( $erreur );
    set_transient( 'derniere_erreur_sentry_' . get_current_user_id(), $event_id, 300 );
}

Construire le lien vers l’incident

L'essentiel à retenir : Un identifiant d'événement transmis jusqu'à l'admin notice ; Un lien direct vers l'incident Sentry correspondant ; Réservé aux rôles techniques du site

L’URL d’un événement Sentry suit un format prévisible, composé de l’organisation, du projet et de l’identifiant d’événement. Une fois ces trois éléments réunis, la notice d’administration peut afficher un lien cliquable :

add_action( 'admin_notices', 'afficher_notice_avec_lien_sentry' );
function afficher_notice_avec_lien_sentry() {
    $event_id = get_transient( 'derniere_erreur_sentry_' . get_current_user_id() );
    if ( ! $event_id ) {
        return;
    }

    $url_sentry = sprintf(
        'https://sentry.io/organizations/%s/issues/?query=id%%3A%s&project;=%s',
        SENTRY_ORG_SLUG,
        $event_id,
        SENTRY_PROJECT_ID
    );

    echo '<div class="notice notice-error">';
    echo '<p>Une erreur est survenue lors du traitement de la commande. ';
    echo '<a href="' . esc_url( $url_sentry ) . '" target="_blank">Voir l\'incident dans Sentry</a></p>';
    echo '</div>';

    delete_transient( 'derniere_erreur_sentry_' . get_current_user_id() );
}

Réserver ce lien aux rôles techniques

Un rédacteur ou un gestionnaire de boutique n’a aucune utilité à consulter Sentry, et l’exposition de ce lien à tous les rôles ajoute de la confusion sans bénéfice. Une vérification simple sur la capacité manage_options, ou sur un rôle personnalisé « technique » si le site en dispose, filtre l’affichage :

  • Rôle administrateur ou développeur : lien visible
  • Autres rôles : message générique sans détail technique ni lien externe

Attention à la fenêtre de validité du transient

Un délai de cinq minutes suffit largement dans la plupart des cas, l’utilisateur consultant la notice presque immédiatement après l’action qui a déclenché l’erreur. Un délai trop long risquerait d’afficher un lien vers une erreur ancienne si un autre incident survient entre-temps sans que le transient ait été rafraîchi.

Étendre le principe aux erreurs de tâche planifiée

Le même mécanisme s’applique aux erreurs survenant dans un wp_cron, en écrivant l’identifiant d’événement dans une option persistante consultée par un widget de tableau de bord dédié aux tâches de fond, plutôt que dans un transient lié à une session utilisateur qui n’existe pas dans ce contexte.

Un lien qui économise trois clics à chaque incident finit, sur une année entière d’exploitation, par représenter plusieurs heures rendues à l’équipe support.

Documentation officielle du SDK

Le SDK PHP de Sentry est documenté sur son dépôt GitHub officiel, avec le détail des fonctions de capture et des options de configuration disponibles pour un projet WordPress hébergé en interne ou sur une infrastructure mutualisée.

En résumé

Transmettre l’identifiant d’événement Sentry jusqu’à la notice d’administration transforme un message d’erreur générique en point d’entrée direct vers le diagnostic complet. La mise en place tient en une quinzaine de lignes de code, réparties entre la capture de l’identifiant et la construction du lien, pour un gain de confort quotidien immédiat côté équipe technique.

Partager :

À propos de l'auteur

Clément Hadrot

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

Voir tous ses articles

Dans la même veine

À lire aussi