我为帖子添加了一个自定义字段,并将其公开给REST API,该API适用于标准帖子,并出现在API响应中。但不适用于自定义帖子类型(项目),它基本上是一种标准的帖子类型,只是具有不同的名称。该字段存在于项目帖子类型中,我可以编辑和保存它。
如何将其注册到post和自定义“project”post类型?我想我只需要以如下所示的相同方式注册它。我可以同时将其注册到这两种类型吗?这是我注册帖子的方式。The reference 显示$object_type
是一个数组,所以如果我没有完全错的话,它应该是可能的,但它是如何工作的呢?
/**********************************************
* Add featured video to REST API
***********************************************/
function add_featured_video_id() {
register_rest_field(
\'post\',
\'featured_video_id\',
array(
\'get_callback\' => \'get_featured_video_id\',
\'update_callback\' => null,
\'schema\' => null,
)
);
}
add_action( \'rest_api_init\', \'add_featured_video_id\' );
function get_featured_video_id( $object, $field_name, $request ) {
$fv_id= get_post_meta(get_the_ID(), \'_chrest_featured_video\', true);
return $fv_id;
}
最合适的回答,由SO网友:BlueSuiter 整理而成
按以下方式修改您的代码:
/**********************************************
* Add featured video to REST API
***********************************************/
function add_featured_video_id() {
register_rest_field(
array(\'post\', \'project\'), \'featured_video_id\',
array(
\'get_callback\' => \'get_featured_video_id\',
\'update_callback\' => null,
\'schema\' => null,
)
);
}
Visit here, 有关方法的详细信息
register_rest_field
,