我一直在尝试使用以下代码将CUSTOM数据关联到我的每个WP POSTS:
if($condition === true){
if ( ! update_post_meta ($post_id, '_someData', $someVariable) ) {
add_post_meta($post_id, '_someData', $someVariable);
}
}
然而,似乎META VALUE是重置为默认值,即零或空白。我们的WordPress网站有大约40个插件,我认为其中一个WordPress插件,正在以我的方式做事。在WordPres演示网站上,我的所有逻辑都运行良好。有没有办法让我完全控制为给定的POST设置META值?此外,有没有一种方法可以通知我META密钥即将发生变化,然后我可以决定是否更改元值?
任何指针或参考URL都可以提供很大帮助。谢谢!
答案 0 :(得分:0)
您只需要在任一场景中调用update_post_meta
。调用add_post_meta()
不是必需的,可能会导致此问题。
来自codex:
函数update_post_meta()
更新指定帖子的现有元键(自定义字段)的值。
这可用于代替add_post_meta()
功能。此功能要做的第一件事是确保$meta_key
上已存在$post_id
。如果没有,则调用add_post_meta($post_id, $meta_key, $meta_value)
,并返回其结果。