【发布时间】:2015-02-12 18:41:38
【问题描述】:
如何将这个 Json 值存储在 add_post_meta 中
$offer_name= $item['data'][$i]['Offer']['name'];
add_post_meta($post_id, 'offer_name', $offer_name);
$offer_name 的 json 值不会被存储,但普通字符串会被存储。
更新 1:这是我测试的方式。
case 1 // 使用 json 值不会被存储..
$offer_name= $item['data'][$i]['Offer']['name'];
echo $offer_name; // the value gets echoed .
add_post_meta($post_id, 'offer_name', $offer_name); // the value of $offer_name doesn't get stored
case 2 // 没有 json 的值被存储..
$offer_name="My Name";
add_post_meta($post_id, 'offer_name', $offer_name); // the value of $offer_name does get stored
更新 2:如果我将 json 数据存储在“{}”中,那么该值将存储在 WordPress 中
$offer_name ="{$item['data'][$i]['Offer']['name']}";
add_post_meta($post_id, 'offer_name', $offer_name);
提前致谢
【问题讨论】:
-
那么,是 JSON 值还是字符串?你期望发生什么?
-
如果我回显 $offer_name 它显示回显值。但它没有存储在自定义字段中。但是如果存储一个字符串 eg= $offer_name 'my name'; ;值存储在自定义字段中。
-
这似乎很奇怪:我认为问题不在于 JSON 本身,因为
add_post_meta()将接受混合变量没有问题。您可能需要发布更多代码。你如何检查它是否被存储?你只是在呼应我们还是在使用print_r()或var_dump()? -
我使用了 echo 、print_r() 和 var_dump() 。它显示了值..但它无法存储在自定义字段中..
-
我的意思是你如何检查它是否被存储?您需要验证它是否真的没有被存储,或者它是否没有正确获取它,或者它是否没有正确显示它。这是三个不同的问题,它们都会表现出相同的症状。
标签: php json wordpress variables