=== modified file 'wp-admin/includes/post.php'
|
|
|
|
| 554 | 554 | * @param unknown_type $post_ID |
| 555 | 555 | * @return unknown |
| 556 | 556 | */ |
| 557 | | function add_meta( $post_ID ) { |
| | 557 | function add_meta( $post_ID, $serialize=true ) { |
| 558 | 558 | global $wpdb; |
| 559 | 559 | $post_ID = (int) $post_ID; |
| 560 | 560 | |
| … |
… |
|
| 562 | 562 | |
| 563 | 563 | $metakeyselect = isset($_POST['metakeyselect']) ? stripslashes( trim( $_POST['metakeyselect'] ) ) : ''; |
| 564 | 564 | $metakeyinput = isset($_POST['metakeyinput']) ? stripslashes( trim( $_POST['metakeyinput'] ) ) : ''; |
| 565 | | $metavalue = isset($_POST['metavalue']) ? maybe_serialize( stripslashes( trim( $_POST['metavalue'] ) ) ) : ''; |
| | 565 | if (isset($_POST['metavalue'])) { |
| | 566 | $v=stripslashes( trim( $_POST['metavalue'] ) ); |
| | 567 | if ($serialize) { $v = maybe_serialize( $v ); } |
| | 568 | $metavalue = $v; |
| | 569 | } else { |
| | 570 | $metavalue = ''; |
| | 571 | } |
| 566 | 572 | |
| 567 | 573 | if ( ('0' === $metavalue || !empty ( $metavalue ) ) && ((('#NONE#' != $metakeyselect) && !empty ( $metakeyselect) ) || !empty ( $metakeyinput) ) ) { |
| 568 | 574 | // We have a key/value pair. If both the select and the |
| … |
… |
|
| 669 | 675 | * @param unknown_type $meta_value |
| 670 | 676 | * @return unknown |
| 671 | 677 | */ |
| 672 | | function update_meta( $meta_id, $meta_key, $meta_value ) { |
| | 678 | function update_meta( $meta_id, $meta_key, $meta_value, $serialize=true ) { |
| 673 | 679 | global $wpdb; |
| 674 | 680 | |
| 675 | 681 | $protected = array( '_wp_attached_file', '_wp_attachment_metadata', '_wp_old_slug', '_wp_page_template' ); |
| … |
… |
|
| 682 | 688 | |
| 683 | 689 | $post_id = $wpdb->get_var( $wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_id = %d", $meta_id) ); |
| 684 | 690 | wp_cache_delete($post_id, 'post_meta'); |
| 685 | | |
| 686 | | $meta_value = maybe_serialize( stripslashes( $meta_value ) ); |
| | 691 | |
| | 692 | $meta_value = stripslashes( $meta_value ); |
| | 693 | if ($serialize) { |
| | 694 | $meta_value = maybe_serialize( $meta_value ); |
| | 695 | } |
| 687 | 696 | $meta_id = (int) $meta_id; |
| 688 | 697 | |
| 689 | 698 | $data = compact( 'meta_key', 'meta_value' ); |
=== modified file 'xmlrpc.php'
|
|
|
|
| 352 | 352 | $meta['id'] = (int) $meta['id']; |
| 353 | 353 | |
| 354 | 354 | if ( isset($meta['key']) ) { |
| 355 | | update_meta($meta['id'], $meta['key'], $meta['value']); |
| | 355 | update_meta($meta['id'], $meta['key'], $meta['value'], false); |
| 356 | 356 | } |
| 357 | 357 | else { |
| 358 | 358 | delete_meta($meta['id']); |
| … |
… |
|
| 361 | 361 | else { |
| 362 | 362 | $_POST['metakeyinput'] = $meta['key']; |
| 363 | 363 | $_POST['metavalue'] = $meta['value']; |
| 364 | | add_meta($post_id); |
| | 364 | add_meta($post_id, false); |
| 365 | 365 | } |
| 366 | 366 | } |
| 367 | 367 | } |