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é?
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
)