WordPress.org

Make WordPress Core

Ticket #20447: 20447.patch

File 20447.patch, 1.9 KB (added by kurtpayne, 7 years ago)

Use wp_update_post and wp_update_link

  • wp-admin/includes/bookmark.php

     
    188188        }
    189189
    190190        if ( $update ) {
    191                 if ( false === $wpdb->update( $wpdb->links, compact('link_url', 'link_name', 'link_image', 'link_target', 'link_description', 'link_visible', 'link_rating', 'link_rel', 'link_notes', 'link_rss'), compact('link_id') ) ) {
     191                if ( false === $wpdb->update( $wpdb->links, compact('link_url', 'link_name', 'link_image', 'link_target', 'link_description', 'link_visible', 'link_owner', 'link_rating', 'link_rel', 'link_notes', 'link_rss'), compact('link_id') ) ) {
    192192                        if ( $wp_error )
    193193                                return new WP_Error( 'db_update_error', __( 'Could not update link in the database' ), $wpdb->last_error );
    194194                        else
  • wp-admin/includes/user.php

     
    269269                }
    270270        } else {
    271271                $reassign = (int) $reassign;
    272                 $wpdb->update( $wpdb->posts, array('post_author' => $reassign), array('post_author' => $id) );
    273                 $wpdb->update( $wpdb->links, array('link_owner' => $reassign), array('link_owner' => $id) );
     272                $post_ids = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_author = %d", $id ) );
     273                if ( !empty( $post_ids ) ) {
     274                        foreach ( $post_ids as $post_id )
     275                                wp_update_post( array(
     276                                        'ID'          => $post_id,
     277                                        'post_author' => $reassign,
     278                                ) );
     279                }
     280                $link_ids = $wpdb->get_col( $wpdb->prepare("SELECT link_id FROM $wpdb->links WHERE link_owner = %d", $id) );
     281                if ( !empty( $link_ids ) ) {
     282                        foreach ( $link_ids as $link_id )
     283                                wp_update_link( array(
     284                                    'link_id'    => $link_id,
     285                                    'link_owner' => $reassign
     286                                ) );
     287                }
    274288        }
    275289
    276290        // FINALLY, delete user