ACF(Advanced Custom Fields) 是一种WordPress插件,允许用户在帖子、页面和其他自定义内容类型中添加自定义字段。这些字段可以存储额外的信息,而不仅仅是默认的标题和内容。
REST-API 是一种用于Web服务的架构风格,它使用HTTP协议进行通信,并通过URL路径和查询参数来访问资源。
问题:如何将带有ACF的帖子标题返回到REST-API?
原因:默认情况下,WordPress REST-API可能不会返回ACF字段的数据。
解决方法:
以下是一个示例代码,展示如何通过自定义代码将带有ACF的帖子标题返回到REST-API:
// 添加自定义端点
function register_custom_rest_route() {
register_rest_route('my_namespace/v1', '/posts/', array(
'methods' => 'GET',
'callback' => 'get_custom_posts',
));
}
add_action('rest_api_init', 'register_custom_rest_route');
// 自定义回调函数
function get_custom_posts(WP_REST_Request $request) {
$posts = get_posts(array(
'numberposts' => -1,
));
$data = array();
foreach ($posts as $post) {
$acf_data = get_field('custom_field_name', $post->ID); // 替换为你的ACF字段名称
$data[] = array(
'id' => $post->ID,
'title' => $post->post_title,
'acf_data' => $acf_data,
);
}
return new WP_REST_Response($data, 200);
}
通过上述步骤和代码示例,你可以成功地将带有ACF的帖子标题返回到REST-API。
领取专属 10元无门槛券
手把手带您无忧上云