1

当访问者提交评论时,我正在尝试设置自定义 cookie,但我似乎无法使其正常工作。这是我在functions.php中的内容:

add_action('comment_post', 'ipro_set_comment_cookie');

function ipro_set_comment_cookie($comment) {
    setcookie("visitor_name", $comment->comment_author, time()+86400);
    setcookie("visitor_email", $comment->comment_author_email, time()+86400);
}

我也尝试过更改comment_post-wp_insert_comment似乎都没有工作。我正在处理 WP 的操作参考: http ://codex.wordpress.org/Plugin_API/Action_Reference#Comment.2C_Ping.2C_and_Trackback_Actions

...有任何想法吗?

4

1 回答 1

2

查看过滤器参考中的数据库写入

尝试类似的东西comment_save_pre

在更新/编辑评论数据之前应用于评论数据。函数参数:评论数据数组,索引为“comment_post_ID”、“comment_author”、“comment_author_email”、“comment_author_url”、“comment_content”、“comment_type”和“user_ID”。

这样它就设置为提交(所以它在你的错误处理开始后调用)

如果我正确理解您的问题,这应该有效:

add_action('comment_save_pre', 'ipro_set_comment_cookie');

function ipro_set_comment_cookie($comment) {
    setcookie("visitor_name", $comment->comment_author, time()+86400);
    setcookie("visitor_email", $comment->comment_author_email, time()+86400);
}
于 2012-09-11T01:00:19.670 回答