【发布时间】:2016-01-11 22:15:22
【问题描述】:
抱歉,我什至不太清楚如何表达我的问题。
我正在尝试使用奇怪的设置从公共 JSON API 中删除个人注册信息。示例:
"posts" : [
{
"id": 9658,
"type": "event",
"custom_fields" : {
"registered_person_0_name" : [ "John" ],
"registered_person_1_name" : [ "Doe" ]
}
如果有帮助,这是var_dump:
["custom_fields"]=>
object(stdClass)#6601 (45) {
["registered_person_0_name"]=>
array(1) {
[0]=> string(8) "Beverley"
}
根据事件的不同,注册人的数量未知,并且每个字段都会增加,如图所示。我想我会 unset() 所有“registered_person”实例,但我很难过。
如果给定$posts,我觉得我可以这样做:
foreach ( $posts as $post ) {
unset( $post->custom_fields->all_the_registered_persons_fields_that_match)
}
但我想不通。我尝试将custom_fields 对象类型转换为数组并使用in_array,然后使用unset,但这似乎不起作用。
感谢任何指点。如果我能提供更多信息,请告诉我。
【问题讨论】:
-
这肯定是一个组织不良的数据结构
-
您要删除只是
registered_person_0_name, registered_person_1_name.....还是整个custom_fields -
肯定是:/ @RiggsFolly。我想删除
registered_person_#_name...但保留自定义字段。 FWIW 这是一个旧的 WordPress JSON API。