web-dev-qa-db-fra.com

Récupère les métadonnées mises à jour après le hook save_post

J'essaie d'obtenir la valeur mise à jour d'un élément de méta lorsqu'une publication est enregistrée (type de publication personnalisée), mais lorsque j'essaie de récupérer les données mises à jour sur le hook save_post, je récupère les données précédentes. J'ai essayé une fonction séparée avec une priorité plus élevée, mais pas de chance de cette façon non plus (ci-dessous)

Comment puis-je obtenir la méta valeur mise à jour juste après avoir enregistré le message?

Code:

add_action('save_post_space', 'tps_save_space_slots', 20, 3);

function tps_save_space_slots($post_id, $post, $updated) {
    //Don't fire on auto-drafts
    if (isset($post->post_status) && 'auto-draft' == $post->post_status) {
        return;
    }
    //The new slots being saved
    $allSlots = tps_generate_space_slots($post_id);

    //Update the meta
    $updateSlots = update_post_meta($post_id, 'allSlots', $allSlots);
}

add_action( 'save_post_space', 'tps_initiate_resend', 30, 3 );

function tps_initiate_resend($post_id, $post, $updated) {
    tps_resend_code_after_change($post_id);//<----this sends the new meta value in an email, but it's the OLD value
}
1
Eckstein

Apparemment, pour obtenir la méta-valeur juste après avoir enregistré le post, vous devez soit obtenir directement $ _REQUEST ['my_meta_value'], soit utiliser update_post_meta () si vous avez besoin de mettre à jour immédiatement la base de données. action save_post.

0
Eckstein