我正在从事的工作:带有 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);
},
});
}
保存后必须调用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);
}
}