web-dev-qa-db-fra.com

Récupère les anciennes valeurs pour post avant d'en enregistrer de nouvelles

J'utilise le hook save_post pour ajouter de la logique après la publication d'un article.

Cependant, je dois trouver un moyen d’obtenir les anciennes valeurs de la publication, en particulier dans mon cas, le slug/handle aka post_name.

J'ai essayé d’utiliser le filtre wp_insert_post_data pour récupérer le message et ajouter l’ancien slug en tant que champ supplémentaire avant la sauvegarde, mais cela ne semble pas fonctionner.

TL; DR veut réaliser quelque chose comme ceci:

public function post_sync( $post_id, $post, $update ) {

$post_new_handle = $post->post_name;
$post_old_handle = $post->post_old_name;

if($post_new_handle !== $post_old_handle) {
    //additional logic
}

    //additional logic

}

Un moyen d'y parvenir? Merci.

3
Zoran Ilievski

L'action post_updated vous donne à la fois l'ancienne et la nouvelle valeur en tant qu'argument avant que les nouvelles valeurs ne soient enregistrées:

do_action( 'post_updated', $post_ID, $post_after, $post_before );
1
Milo