我创建了一个自定义字段类型,可以将我的值存储在数组中。
一切正常,但是我创建了另一个输入并将值传递为$ field ['additional_text'],但是这会更新['value']而不是['additional_text']。
数组 ( [值] => X [additional_text] => Y )
如何定位正确的键以将值传递给?
答案 0 :(得分:0)
您可以使用ACF's get_field()和update_field()函数来获取和设置值。 您还可以使用get_post_meta()和update_post_meta()函数来操纵该字段。
实际上,ACF为每个元字段存储两个值。 例如,如果我在ACF中添加了“ price”自定义字段,则在数据库中创建了“ price”和“ _price” 2个发布元字段。 如您所知,具有下划线前缀的meta_key未在编辑文章页面上列出 此处,实际价值保存在“价格”字段中。
答案 1 :(得分:0)
解决方案是在创建字段表单输入时,字段名称必须如下:-
name="<?php echo esc_attr($field['name']) ?>[value_x]"
value="<?php echo esc_attr($field['value']['value_x']) ?>"
name="<?php echo esc_attr($field['name']) ?>[value_y]"
value="<?php echo esc_attr($field['value']['value_y']) ?>"
这将允许您在自定义字段类型中存储多个值。