update_post_meta()
Définition : update_post_meta() crée ou modifie une métadonnée associée à une publication WordPress. Elle conserve une valeur sous une clé afin qu’un plugin ou un thème puisse la retrouver ultérieurement.
Terminologie
Terme officiel : update_post_meta()
Autres appellations : Mise à jour d’une métadonnée
À quoi cela sert
Elle permet de mémoriser un état documentaire, une référence ou tout autre champ spécifique à un contenu, sans créer immédiatement une table SQL dédiée.
Comment cela fonctionne
La fonction met à jour les lignes correspondantes dans la table des métadonnées ; si la clé manque, elle peut l’ajouter. Lorsqu’un identifiant de révision est transmis, WordPress redirige normalement l’opération vers le contenu parent.
Dans quel contexte l’utiliser
À appeler dans une routine de sauvegarde autorisée après contrôle du nonce, des permissions, de l’origine des données et de leur format.
Exemple concret
Un éditeur sauvegarde la référence interne d’une fiche, après validation du formulaire de modification.
Exemple de code commenté
Extrait pédagogique PHP pour extension WordPress : adapter au contexte et tester sur un environnement de développement avant tout usage.
<?php
// Extrait à exécuter après validation du nonce de formulaire.
$post_id = 123; // Exemple : ID issu d’un contexte déjà vérifié.
if ( current_user_can( 'edit_post', $post_id ) ) {
$reference = sanitize_text_field( 'DOSSIER-2026-17' );
update_post_meta( $post_id, '_atoolpha_reference', $reference );
}
Explication pas à pas de l’exemple
1. Le code se place après une vérification de formulaire, qui n’est pas reproduite ici. 2. Il contrôle le droit de modifier le post. 3. Il nettoie la référence. 4. Il écrit la métadonnée.
Résultat attendu
La valeur devient accessible aux appels ultérieurs de get_post_meta() pour le même contenu et la même clé.
Mise en pratique guidée
Préparer une action de formulaire dans une extension de test : soumettre un nonce valide, vérifier edit_post sur l’article ciblé, nettoyer la valeur et appeler update_post_meta(). Contrôler la valeur avec get_post_meta(). Refaire le test avec un nonce expiré ou un compte insuffisamment autorisé : aucune écriture ne devrait alors être exécutée.
Précautions et limites
Un contrôle de capacité seul ne protège pas contre le CSRF : la vérification du nonce doit être réellement effectuée dans le traitement complet. Tester les erreurs et préserver le comportement des révisions.
À ne pas confondre
update_post_meta() met à jour ou ajoute ; add_post_meta() cherche d’abord à ajouter ; update_option() traite une option de site.
Visualisation du mécanisme
Lecture séquentielle : Chaîne de sauvegarde : édition → nonce → permission → nettoyage → postmeta.
Schéma textuel du déroulement : son exécution dépend du contexte et des contrôles décrits ci-dessus.
Termes associés
- get_post_meta()
- save_post
- wp_verify_nonce()
