首页 > 解决方案 > 通过 get_post_meta() 获取产品插件信息

问题描述

我正在尝试检索自定义视图的插件标签(WooCommerce 产品插件),我使用 get_post_meta() 从数据库获取序列化数组,但 unserialize() 输出 bool(false)。

    $ProductMeta = get_post_meta($ParentProductID);
    $addons = $ProductMeta['_product_addons'];
    echo var_dump($addons);

上面代码的结果是

数组(1){
  [0]=>
  字符串(530) "a:1:{i:0;a:16:{s:4:"name";s:6:"Extras";s:12:"title_format";s:5:"label" ;s:18:"description_enable";i:0;s:11:"description";s:0:"";s:4:"type";s:8:"复选框";s:7:"显示";s:11:"单选按钮";s:8:"位置";i:0;s:8:"必需";i:0;s:12:"限制";i:0;s:17: "restrictions_type";s:8:"any_text";s:12:"adjust_price";i:0;s:10:"price_type";s:8:"flat_fee";s:5:"price";s: 0:"";s:3:"min";d:0;s:3:"max";d:0;s:7:"选项";a:1:{i:0;a:4: {s:5:"label";s:14:"添加 Prosciutto";s:5:"price";s:1:"3";s:5:"image";s:0:"";s :10:"price_type";s:8:"固定费用”;}}}}”
}

然后我尝试了 unserialize() 函数如下:

    $ProductMeta = get_post_meta($ParentProductID);
    $addons = $ProductMeta['_product_addons'];
    $addons = unserialize($addons);
    echo var_dump($addons);

结果是:

布尔(假)

标签: phpwordpresswoocommerce

解决方案


返回的值是一个包含一个元素的数组,但您尝试反序列化整个数组,您需要像这样定位元素 unserialize($addons[0])


推荐阅读