取消发布GET_POST_META函数

时间:2017-03-17 作者:Capiedge

如果在get\\u post\\u meta中没有指定$键(“”)并将$single设置为true,那么它返回的所有键仍然是一个值数组,而不是只返回一个值,有没有办法避免这种情况。

$meta = get_post_meta(get_the_ID(), \'\', true);
print_r($meta);
//This is giving me:
//Array ( [key_1] => Array ( [0] => value_1 ), [key_2] => Array ( [0] => value_2 ) )
//And I will expect:
//Array ( [key_1] => value_1, [key_2] => value_2 )
我知道我可以访问数据写入数组[key\\u 1][0],但考虑到我声明$single为TRUE,我不明白为什么。

我可能错过了什么。。。

1 个回复
最合适的回答,由SO网友:Paul \'Sparrow Hawk\' Biron 整理而成

get_post_meta() 呼叫get_metadata(), 其参数说明如下:

$single(bool)(可选)如果为true,则仅返回指定meta\\u键的第一个值。如果未指定meta\\u键,则此参数无效。

默认值:false

既然你要通过\'\' 作为meta\\u键$single 参数被忽略。

这解释了吗?

Edit:

如果只需要每个元键的第一个值,则只需执行以下操作:

array_map (\'array_shift\', get_post_meta (get_the_ID (), \'\')) ;

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在