插件中的方法使用preprocess_comment
但commentdata数组没有comment_approved
因为评论还没有被记录下来。我正在尝试使用pre_comment_on_post
但注意到返回的信息是comment_post_ID
.
如何才能comment_post_ID
是否仅用于获取要写入WP的注释的注释数据数组?
我试过了get_comments
但除了要写的评论外,它吸引了一切。下面是一段代码,它显示了var_dump
是comment_post_ID
.
public function hooks() {
add_action( \'pre_comment_on_post\', array( $this, \'write\' ), 10, 1 );
}
public function write( $comment_post_ID ) {
var_dump($comment_post_ID);
}
也许有更好的方法来获取评论并将其发布到外部,然后将其写入WordPress。
SO网友:Z. Zlatev
您可以使用preprocess_comment
在…内wp_new_comment()
筛选以访问/修改将要写入的注释的数据。
```
/**
* Filters a comment\'s data before it is sanitized and inserted into the database.
*
* @since 1.5.0
*
* @param array $commentdata Comment data.
*/
$commentdata = apply_filters( \'preprocess_comment\', $commentdata );
只要确保你在有问题的插件之后挂钩(使用更高的优先级),以便你的过滤器在插件对
$commentdata
或者在它之前(使用较低的过滤器优先级),如果需要处理
$commentdata
在传递给插件之前。看见
add_filter\'s docs 如果
$priority
争论对你来说是新鲜事。