自定义帖子元数据未出现在公共API中

时间:2013-09-13 作者:Craig

我在用wordpress。com的公共REST API,用于从Wordpress安装中检索自定义帖子。然而,返回的JSON缺少所有自定义字段。这些字段肯定在那里并且正在工作,因为我可以对它们进行过滤。例如,此URL:

https://public-api.wordpress.com/rest/v1/sites/swnfest.com/posts/?type=artist&meta_key=facebook&meta_value=outfitoutfitoutfit

已根据成功限制facebook 自定义字段,但响应中不存在该字段。根据在中包含自定义字段的标准判断this article:

如果执行请求的用户未经身份验证,他或她将无法添加、编辑或删除任何元数据;将能够读取键不以\\u1开头的任何元数据,但将无法读取以\\u1开头的任何元数据,除非它被列入白名单。

该字段应出现。是我遗漏了什么,还是这是一个bug?

1 个回复
SO网友:jeherve

尝试使用rest_api_allowed_public_metadata 筛选以将facebook 自定义字段。然后,它将出现在响应中:

add_filter( \'rest_api_allowed_public_metadata\', \'jeherve_allow_fb_metadata\' );
function jeherve_allow_fb_metadata() {
    // only run for REST API requests
    if ( ! defined( \'REST_API_REQUEST\' ) || ! REST_API_REQUEST )
        return $allowed_meta_keys;

    $allowed_meta_keys[] = \'facebook\';

    return $allowed_meta_keys;
}

结束

相关推荐

W3TC激活时临时API出现问题

我正在Wordpress 3.5.2上使用W3 Total Cache 0.9.2.11。我对瞬态API和w3tc的对象缓存设置有问题。当我使用memcached激活“对象缓存”(其他设置为默认设置)时,瞬态API停止工作。其行为是:当我在set\\u transient()之后的过期时间内调用get\\u transient()时,我得到null。当“对象缓存”被激活时,行为是一致的,当它被停用时,它会完美地工作。文档中没有提到set_transient 调用可能失败。我尝试了调试模式w3tc对象缓存。