我正在使用add_post_meta和get_post_meta在wordpress中尝试一个简单的测试,但是不起作用。我在尝试这个密码:
function test_post_meta($postID) {
$count_key = 'test';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
add_post_meta($postID, $count_key, '1');
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
var_dump($count);
$count = get_post_meta($postID, $count_key, true);
var_dump($count);
update_post_meta($postID, $count_key, $count);
}结果是:
bool(false) bool(false)
我期待1- 1,2-2,等等从我的职能电话。我做错了什么?
发布于 2019-06-08 20:55:46
数据库里什么都没有保存吗?您试过使用test以外的其他值吗?还要确保$postID值实际上是给定的,并且是一个现有的post。
您还可以检查update_post_meta的结果,检查WordPress文档以获得预期的结果。
我对您的代码进行了一些优化:
function test_post_meta($postID) {
$count_key = 'test';
$count = (int)get_post_meta($postID, $count_key, true) ?: 1;
$count++;
update_post_meta($postID, $count_key, $count);
var_dump($count);
var_dump(get_post_meta($postID, $count_key, true));
}https://stackoverflow.com/questions/56508846
复制相似问题