如何在 Wordpress JavaScript 函数中使用 Ajax POST 将数据插入到 ACF 字段中?

问题描述 投票:0回答:1

我正在从事的工作:带有 ACF 插件和 JavaScript 的 Wordpress。

我正在尝试做的事情:创建帖子并设置标题、内容、状态和一些 ACF 字段。

输出是什么:成功创建帖子,但只设置了标题和内容。 ACF 字段为空。

我尝试过哪些替代方案:尝试将 'acf_fields:' 更改为 'fields:' 但没有成功。

问题:我是否为 ACF 字段使用了错误的标签?或者还有其他方法可以做到这一点吗?

  createMarker(latitude, longitude) {
    var ourNewPost = {
      title: latitude + ", " + longitude,
      content: "Coordinates: " + latitude + ", " + longitude,
      status: "publish",
      acf_fields: {
        points_title: "test",
        points_latitude: latitude.toString(),
        points_longitude: longitude.toString(),
        status: 0
      },
    };

    $.ajax({
      beforeSend: (xhr) => {
        xhr.setRequestHeader("X-WP-Nonce", myData.nonce);
      },
      url: myData.root_url + "/wp-json/wp/v2/points/",
      type: "POST",
      data: ourNewPost,
      success: (response) => {
        console.log(response);
      },
      error: (response) => {
        console.log(response);
      },
    });
  }
javascript ajax wordpress advanced-custom-fields wordpress-rest-api
1个回答
0
投票

保存后必须调用hook,然后您可以在hook中编写代码来填充acf字段数据。

add_action('acf/save_post', 'set_acf_data');

function set_acf_data($post_id)
{
  
  $acf_data= "Your Data which you want to add in ACF field";

  if ('team' == get_post_type($post_id)) {

    update_field('acf_key', $acf_data, $post_id);

  }
}
© www.soinside.com 2019 - 2024. All rights reserved.