web-dev-qa-db-fra.com

Sur WordPress 4.4, comment obtenir l'ID de publication à l'aide du crochet comment_post

Depuis WordPress 4.4, il semble qu'il n'est plus possible d'utiliser get_the_ID() ou the_ID() lors de l'accrochage à l'action comment_post.

Comment puis-je obtenir le post_id lorsqu'un nouveau commentaire est enregistré?

2
Dudo1985

Le troisième paramètre, $commentdata, peut être utilisé pour obtenir l'identifiant de l'article sur lequel le commentaire a été fait:

function wpse211367_comment( $comment_ID, $comment_approved, $commentdata ) {
    // The id for the post that the comment is related to is available
    // in the $commentdata array:
    $comment_post_id = $commentdata['comment_post_ID'];
}
add_action( 'comment_post', 'wpse211367_comment', 10, 3 );

Le tableau $commentdata:

Array
(
    [comment_post_ID] => 149
    [comment_author] => dave
    [comment_author_email] => [email protected]
    [comment_author_url] => 
    [comment_content] => All work and no play makes Dave a dull boy.
    [comment_type] => 
    [comment_parent] => 0
    [user_ID] => 1
    [user_id] => 1
    [comment_author_IP] => ::1
    [comment_agent] => Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36
    [comment_date] => 2016-09-23 03:13:40
    [comment_date_gmt] => 2016-09-23 03:13:40
    [filtered] => 1
    [comment_approved] => 1
)
3
Dave Romsey