gpt4 book ai didi

wordpress - ACF 字段值在手动保存帖子之前不可用

转载 作者:行者123 更新时间:2023-12-01 10:35:32 29 4
gpt4 key购买 nike

我有一些自定义帖子类型“视频”,我向其中添加了一些自定义 ACF 字段(“video_path”、“author_name”和“audio_author”)。我正在以编程方式生成该类型的帖子,如下所示:

$video_post_params = array(
'post_title' => wp_strip_all_tags($video_title),
'post_status' => 'publish',
'post_author' => 1,
'post_type' => 'video'
);
$video_id = wp_insert_post( $video_post_params );
update_field('video_path', $video_path, $video_id);
update_field('author_name', $video_author, $video_id);
update_field('audio_author', $audio_author, $video_id);

所有值都插入得很好 - 当我在后端打开帖子时一切都很好。但是,当我尝试使用这些值时,我什么也没得到?!?

我正在从这样的模板文件中读取值:
get_field('video_path', $video_id)

如果我打开帖子并直接保存它而不做任何更改,一切都会开始正常工作,之后我会正常收到 ACF 字段。从后端手动创建的帖子一直运行良好。

我做错了什么?从代码生成帖子时是否需要一些额外的步骤?

此处报告了该问题:
http://support.advancedcustomfields.com/forums/topic/programmatic-post-insertion-acf-fields-and-the-save_post-hook/

但该解决方案显然对我不起作用 - 我的 update_field()函数已经紧跟在 wp_insert_post() 之后.

最佳答案

找到了!

插入 ACF 字段值时必须使用字段键。如果改用键名,就像我所做的那样,乍一看一切都很好地插入,但是在手动保存帖子之前,值不可用。所以它就像:

update_field('field_56e683ab6265f', $video_path, $video_id);
update_field('field_56e68415b5c4b', $video_author, $video_id);
update_field('field_56e6842d58740', $audio_author, $video_id);

真是一团糟....

关于wordpress - ACF 字段值在手动保存帖子之前不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36181023/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com