为了添加新值并保留以前的值,需要使用add_post_meta()
而不是update_post_meta()
:
$post_id = get_the_ID();
$new_post_desc = \'the new value here\';
// add_post_meta() add a new field with the same name
// and keeps previous values on the database
add_post_meta( $post_id, \'post_desc\', $new_post_desc );
然后,您可以使用
get_post_custom_values()
获取的所有值
post_desc
字段,但请注意,您未正确使用此函数。
而不是:
$values = get_post_custom_values(get_the_ID(), $post_desc);
它应该是:
$values = get_post_custom_values( \'post_desc\', get_the_ID() );
在哪里
\'post_desc\'
(不是
$post_desc
) 是名称或字段。
如果要更新以前为该字段设置的一个特定值,可以使用update_post_meta()
passing the previous value you want to update as the fourth parameter:
update_post_meta( $post_id, \'post_desc\', \'new_value\', \'previous_value\' );