1
我正在使用Wordpress和Calderawp表單來構建調查網站,並且我遇到了複選框選擇結果的問題。Wordpress get_post_metadata()返回序列化陣列
我已經使用Caldera處理器將我的調查表單中的每個收集字段推送到自定義帖子類型中的自定義字段。我的問題是,get_post_metadata返回一個看起來像一個類對象的大規模序列化數組。
而且,這裏是我當前的嘗試來改變輸出:
/**
* Alter output of custom fields
*/
add_filter('get_post_metadata', 'custom_get_post_metadata_filter', 10, 4);
function custom_get_post_metadata_filter($value, $post_id, $meta_key, $single){
//This prevents infinite loop
remove_filter('get_post_metadata', 'custom_get_post_metadata_filter', 10 );
$value = get_post_meta($post_id, $value, true);
add_filter('get_post_metadata', 'custom_get_post_metadata_filter', 10, 4);
foreach ($value as $key => $val) {
$unserialized = unserialize($val);
echo 'key: ' . $key . '| val: ' . $unserialized . '<br/>';
}
}
結果的代碼是這樣的:
key:some_key | val:
key:another_key | val:
key:yet_another_key | VAL:
...
我也只是想打印$val
,結果是另一Array
此外,我試着使用多用的foreach設置一個新的變量,如循環:
$my_key = $val['some_key'];
foreach($my_key as $k => $v) {
echo $v;
}
...而且我發現嵌套數組去層和層深。
有沒有人遇到過這個問題,並找到了解決方案?