Source View: delete_post

To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).

Understanding Source Code

The best way to understand what a hook does is to look at where it occurs in the source code.

  • Action hooks look like this: do_action( "hook_name" )
  • Filter hooks look like this: apply_filters( "hook_name", "what_to_filter" ).

Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.

Source View

This hook occurs 2 times in this file.

Line Code
2024
2025      $post_meta_ids = $wpdb->get_col( $wpdb->prepare( "SELECT meta_id FROM $wpdb->postmeta WHERE post_id = %d ", $postid ));
2026      if ( !empty($post_meta_ids) ) {
2027           do_action( 'delete_postmeta', $post_meta_ids );
2028           $in_post_meta_ids = "'" . implode("', '", $post_meta_ids) . "'";
2029           $wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_id IN($in_post_meta_ids)" );
2030           do_action( 'deleted_postmeta', $post_meta_ids );
2031      }
2032
2033      do_action( 'delete_post', $postid );
2034      $wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->posts WHERE ID = %d", $postid ));
2035      do_action( 'deleted_post', $postid );
2036
2037      if ( 'page' == $post->post_type ) {
2038           clean_page_cache($postid);
2039
2040           foreach ( (array) $children as $child )
2041                clean_page_cache($child->ID);
2042
 
Line Code
3796
3797      $post_meta_ids = $wpdb->get_col( $wpdb->prepare( "SELECT meta_id FROM $wpdb->postmeta WHERE post_id = %d ", $post_id ));
3798      if ( !empty($post_meta_ids) ) {
3799           do_action( 'delete_postmeta', $post_meta_ids );
3800           $in_post_meta_ids = "'" . implode("', '", $post_meta_ids) . "'";
3801           $wpdb->query( "DELETE FROM $wpdb->postmeta WHERE meta_id IN($in_post_meta_ids)" );
3802           do_action( 'deleted_postmeta', $post_meta_ids );
3803      }
3804
3805      do_action( 'delete_post', $post_id );
3806      $wpdb->query( $wpdb->prepare( "DELETE FROM $wpdb->posts WHERE ID = %d", $post_id ));
3807      do_action( 'deleted_post', $post_id );
3808
3809      $uploadpath = wp_upload_dir();
3810
3811      if ( ! empty($meta['thumb']) ) {
3812           // Don't delete the thumb if another attachment uses it
3813           if (! $wpdb->get_row( $wpdb->prepare( "SELECT meta_id FROM $wpdb->postmeta WHERE meta_key = '_wp_attachment_metadata' AND meta_value LIKE %s AND post_id <> %d", '%' . $meta['thumb'] . '%', $post_id)) ) {
3814                $thumbfile = str_replace(basename($file), $meta['thumb'], $file);