=== 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 | } |