WordPress中的钩子(Hooks)是一种机制,允许开发者在特定的时机插入自己的自定义代码,以实现对WordPress核心功能的修改或扩展。其中,`comment_{$new_status}_{$comment->comment_type}`是一种特定的钩子,用于在评论状态变更时触发。
该钩子由两个参数组成:`$new_status`和`$comment->comment_type`。
* `$new_status`是评论的新状态,可以是以下几种之一:
- `hold`:评论需要审核
- `approve`:评论已被批准
- `spam`:评论被标记为垃圾评论
- `trash`:评论被移到回收站
- `unspam`:评论从垃圾评论恢复
- `untrash`:评论从回收站恢复
- `delete`:评论被永久删除
* `$comment->comment_type`是评论的类型,通常为`comment`。但是,你可以通过在评论提交时设置`comment_type`字段来创建自定义评论类型。
利用该钩子,你可以在评论状态变更时执行一些自定义操作。下面是一个例子:
function my_custom_function( $new_status, $comment ) {
if ( $new_status == 'approve' ) {
// 如果评论被批准,执行一些操作
// 比如发送电子邮件通知评论作者
wp_mail( $comment->comment_author_email, '评论已被批准', '你的评论已被批准。' );
}
}
add_action( 'comment_{$new_status}_{$comment->comment_type}', 'my_custom_function', 10, 2 );
在上述示例中,当评论被批准时,会发送一封电子邮件通知评论作者。你可以根据自己的需求,在`my_custom_function`函数中添加任意的自定义代码。
需要注意的是,该钩子只有在评论状态变更时才会触发。如果你希望在评论被提交时执行一些操作,可以使用`comment_post`钩子。
0 个评论