我在functions.php中有以下方法。我试图获得评论留下的帖子的标题,以及评论本身的名称,电子邮件和内容。
add_action('comment_post', 'comment_posted');
function comment_posted($comment_id) {
//what can I do here to get the original title of the post
//what can I do here to get the details of the comment (name, email, content)?
}
我尝试过the_title()和get_the_title()的各种变体,但没有运气。
答案 0 :(得分:1)
尝试一下:
add_action('comment_post', 'comment_posted');
function comment_posted($comment_id)
{
$comment = get_comment($comment_id);
$post = get_post($comment->comment_post_ID);
$title = $post->post_title;
}
通过使用get_comment,您可以访问有关评论的所有信息:http://codex.wordpress.org/Function_Reference/get_comment#Return。此外,当您使用get_post时,您将可以访问所有这些信息:http://codex.wordpress.org/Function_Reference/get_post#Return。
或者,你可以简单地使用:
$comment = get_comment($comment_id);
$title = get_the_title($comment->comment_post_ID);
但我更喜欢使用get_post函数,因为每当我需要帖子中的一条信息时,我似乎最终需要另一条。
希望这有帮助!