wp_delete_comment()
wp_delete_comment( int|WP_Comment $comment_id, bool $fo…
wp_delete_comment( int|WP_Comment $comment_id,  bool $force_delete = false )
清除或删除注释。
		Trashes or deletes a comment.
	
清除或删除注释。
		Trashes or deletes a comment.
	
目录锚点:#说明#参数#源码
说明(Description)
除非已禁用垃圾箱、项目已在垃圾箱中或$force_delete为true,否则注释将移动到垃圾箱而不是永久删除。如果评论被批准并且有一个可用的帖子ID,帖子评论计数将被更新。
参数(Parameters)
| 参数 | 类型 | 说明 | 
|---|---|---|
| $comment_id | (int | WP_Comment) | 注释ID或WP_注释对象。 | 
| $force_delete | (bool) | 是否绕过垃圾箱并强制删除。默认值为false。 | 
源码(Source)
/**
 * Trashes or deletes a comment.
 *
 * The comment is moved to trash instead of permanently deleted unless trash is
 * disabled, item is already in the trash, or $force_delete is true.
 *
 * The post comment count will be updated if the comment was approved and has a
 * post ID available.
 *
 * @since 2.0.0
 *
 * @global wpdb $wpdb WordPress database abstraction object.
 *
 * @param int $comment_id Comment ID
 * @param bool $force_delete Whether to bypass trash and force deletion. Default is false.
 * @return bool True on success, false on failure.
 */
function wp_delete_comment($comment_id, $force_delete = false) {
	global $wpdb;
	if (!$comment = get_comment($comment_id))
		return false;
	if ( !$force_delete && EMPTY_TRASH_DAYS && !in_array( wp_get_comment_status($comment_id), array( 'trash', 'spam' ) ) )
		return wp_trash_comment($comment_id);
	/**
	 * Fires immediately before a comment is deleted from the database.
	 *
	 * @since 1.2.0
	 *
	 * @param int $comment_id The comment ID.
	 */
	do_action( 'delete_comment', $comment_id );
	// Move children up a level.
	$children = $wpdb->get_col( $wpdb->prepare("SELECT comment_ID FROM $wpdb->comments WHERE comment_parent = %d", $comment_id) );
	if ( !empty($children) ) {
		$wpdb->update($wpdb->comments, array('comment_parent' => $comment->comment_parent), array('comment_parent' => $comment_id));
		clean_comment_cache($children);
	}
	// Delete metadata
	$meta_ids = $wpdb->get_col( $wpdb->prepare( "SELECT meta_id FROM $wpdb->commentmeta WHERE comment_id = %d", $comment_id ) );
	foreach ( $meta_ids as $mid )
		delete_metadata_by_mid( 'comment', $mid );
	if ( ! $wpdb->delete( $wpdb->comments, array( 'comment_ID' => $comment_id ) ) )
		return false;
	/**
	 * Fires immediately after a comment is deleted from the database.
	 *
	 * @since 2.9.0
	 *
	 * @param int $comment_id The comment ID.
	 */
	do_action( 'deleted_comment', $comment_id );
	$post_id = $comment->comment_post_ID;
	if ( $post_id && $comment->comment_approved == 1 )
		wp_update_comment_count($post_id);
	clean_comment_cache($comment_id);
	/** This action is documented in wp-includes/comment.php */
	do_action( 'wp_set_comment_status', $comment_id, 'delete' );
	wp_transition_comment_status('delete', $comment->comment_approved, $comment);
	return true;
}| 更新版本 | 源码位置 | 使用 | 被使用 | 
|---|---|---|---|
| 2.0.0 | wp-includes/comment.php | 20 | 8 | 
类别:WordPress 函数手册、 
		本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。



还没有任何评论,赶紧来占个楼吧!