[编辑]
TLDR:答案:不要使用echo
,而是print_r
我已尝试以下方法将元值作为字符串而不是数组。第三个值设置为true,因此这应该是一个字符串。
<?php
// The data
$projects = $wpdb->get_results( "SELECT * FROM $wpdb->posts" );
// Loop them
foreach ( $projects as $project )
{
// Get the meta
$metas = get_post_meta( $project->ID,'bc_invited', true );
// This is rendering
echo '<h2>' . $project->post_title . '</h2>';
foreach($metas as $meta){
// This is not rendering
echo $meta . '<br/>';
}
}
?>
为什么我没有看到我的期望?
答案 0 :(得分:1)
如果为false或未设置,则该函数返回自定义字段的数组。在序列化数组的上下文中,这可能不直观。如果使用此方法获取序列化数组,则希望$ single为true以实际获取未序列化的数组。如果传入false,或者将其保留,则将包含一个数组,索引0处的值将是序列化字符串。 默认值:false
<?php $meta_values = get_post_meta($post_id, $key, $single); ?>
现在你的问题是你将meta作为数组返回并使用 echo 导致问题,你必须使用 print_r 来查看结果