Definition:
function wp_untrash_post($post_id = 0) {}
Parameters
- int $post_id: Post ID.
Return values
returns:False on failure
Defined actions
- untrash_post
do_action('untrash_post', $post_id); - untrashed_post
do_action('untrashed_post', $post_id);
Source code
function wp_untrash_post($post_id = 0) {
if ( !$post = wp_get_single_post($post_id, ARRAY_A) )
return $post;
if ( $post['post_status'] != 'trash' )
return false;
do_action('untrash_post', $post_id);
$post_status = get_post_meta($post_id, '_wp_trash_meta_status', true);
$post['post_status'] = $post_status;
delete_post_meta($post_id, '_wp_trash_meta_status');
delete_post_meta($post_id, '_wp_trash_meta_time');
wp_insert_post($post);
wp_untrash_post_comments($post_id);
do_action('untrashed_post', $post_id);
return $post;
}
4207

February 12, 2011 


wp_untrash_post_comments
Definition:
function wp_untrash_post_comments($post = null) {}
Parameters
Return values
returns:False on failure
Defined actions
do_action('untrash_post_comments', $post_id);do_action('untrashed_post_comments', $post_id);Source code
function wp_untrash_post_comments($post = null) { global $wpdb; $post = get_post($post); if ( empty($post) ) return; $post_id = $post->ID; $statuses = get_post_meta($post_id, '_wp_trash_meta_comments_status', true); if ( empty($statuses) ) return true; do_action('untrash_post_comments', $post_id); // Restore each comment to its original status $group_by_status = array(); foreach ( $statuses as $comment_id => $comment_status ) $group_by_status[$comment_status][] = $comment_id; foreach ( $group_by_status as $status => $comments ) { // Sanity check. This shouldn't happen. if ( 'post-trashed' == $status ) $status = '0'; $comments_in = implode( "', '", $comments ); $wpdb->query( "UPDATE $wpdb->comments SET comment_approved = '$status' WHERE comment_ID IN ('" . $comments_in . "')" ); } clean_comment_cache( array_keys($statuses) ); delete_post_meta($post_id, '_wp_trash_meta_comments_status'); do_action('untrashed_post_comments', $post_id); }4209