听起来好像您正试图将修改后的信息直接保存到数据库中的序列化值中。你不能那样做。
您必须提取该键的当前元数据,以便拥有和数组或对象,更新该数组或对象,然后将整个内容保存回数据库。
类似于。。。
$old_meta = get_post_meta( $pId, \'my_meta\', true);
$old_meta[\'somekey\'] = $new_value;
update_post_meta( $pId, \'my_meta\', $old_meta );
注:
get_post_meta
将
unserialize
为了你。
还要注意update_post_meta
获取第四个参数。。。
update_post_meta($post_id, $meta_key, $meta_value, $prev_value);
该参数是可选的,但如果用于。。。
。。。区分具有相同键的多个字段。如果省略,并且此post和meta键有多行,则将更新所有meta值。
http://codex.wordpress.org/Function_Reference/update_post_meta
您可以使用它来确保只覆盖要覆盖的键/值。