Ticket #11627: meta.no-function.diff
| File meta.no-function.diff, 1.6 KB (added by , 16 years ago) |
|---|
-
meta.php
53 53 global $wpdb; 54 54 55 55 $column = esc_sql($meta_type . '_id'); 56 $id_column = 'user' == $meta_type ? 'umeta_id' : 'meta_id'; 56 57 57 58 // expected_slashed ($meta_key) 58 59 $meta_key = stripslashes($meta_key); 59 60 60 if ( ! $meta_id = $wpdb->get_var( $wpdb->prepare( "SELECT meta_idFROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ) )61 if ( ! $meta_id = $wpdb->get_var( $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s AND $column = %d", $meta_key, $object_id ) ) ) 61 62 return add_metadata($meta_type, $object_id, $meta_key, $meta_value); 62 63 63 64 $meta_value = maybe_serialize( stripslashes_deep($meta_value) ); … … 90 91 global $wpdb; 91 92 92 93 $type_column = esc_sql($meta_type . '_id'); 94 $id_column = 'user' == $meta_type ? 'umeta_id' : 'meta_id'; 93 95 // expected_slashed ($meta_key) 94 96 $meta_key = stripslashes($meta_key); 95 97 $meta_value = maybe_serialize( stripslashes_deep($meta_value) ); 96 98 97 $query = $wpdb->prepare( "SELECT meta_idFROM $table WHERE meta_key = %s", $meta_key );99 $query = $wpdb->prepare( "SELECT $id_column FROM $table WHERE meta_key = %s", $meta_key ); 98 100 99 101 if ( !$delete_all ) 100 102 $query .= $wpdb->prepare(" AND $type_column = %d", $object_id ); … … 106 108 if ( !count( $meta_ids ) ) 107 109 return false; 108 110 109 $query = "DELETE FROM $table WHERE meta_idIN( " . implode( ',', $meta_ids ) . " )";111 $query = "DELETE FROM $table WHERE $id_column IN( " . implode( ',', $meta_ids ) . " )"; 110 112 111 113 $count = $wpdb->query($query); 112 114