php - 如何在页面和自定义帖子类型中向 Wordpress REST API 公开所有 ACF 字段

标签 php wordpress advanced-custom-fields wordpress-rest-api

我想将属于页面或自定义帖子类型的所有 ACF 字段公开给 WordPress REST API,以便通过 JavaScript 执行一些 API 调用。

最终的预期结果将是您可以轻松访问的 ACF 对象内的所有 ACF 字段。

最佳答案

另一个简单的解决方案现在非常适合我。 您可以在 functions.phpfields.php 上添加以下函数 使用 ACF getFields在发送休息请求之前。您可以将其添加到任何特殊页面 rest_prepare_pagerest_prepare_post

ACF 数据将位于带有键 acf 的 json 响应中

// add this to functions.php
//register acf fields to Wordpress API
//https://support.advancedcustomfields.com/forums/topic/json-rest-api-and-acf/

function acf_to_rest_api($response, $post, $request) {
    if (function_exists('get_fields') && isset($post->id)) {
        $response->data['acf'] = get_fields($post->id);
    }
    return $response;
}
add_filter('rest_prepare_post', 'acf_to_rest_api', 10, 3);

关于php - 如何在页面和自定义帖子类型中向 Wordpress REST API 公开所有 ACF 字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56473929/

相关文章:

php - WooCommerce:带优惠券的促销产品双倍折扣

javascript - 高级自定义字段 orderby 单选按钮值

php - Wordpress 插件 Advanced Custom Fields Pro 不保存前端和后端

WordPress ACF 保存帖子功能,仅当保存的页面是自定义帖子类型时才需要触发。或者,如果字段存在?

PHP Forms不在MySQL中插入数据

javascript - 提交表格并将其发布到主页

php - 如何在站点主页上显示元描述

css - 使用 WooCommerce 和 Avada 更改 Wordpress 中的数量选择器样式

javascript - 电话号码的谷歌事件跟踪

php - 如何在使用 "IN"子句的 php 中构建 mysql 查询