get_post_custom
将返回给定帖子的所有meta\\u键=>meta\\u值对。然而,它以一种奇怪的格式返回字段。
例如:。
<?php
$meta = get_post_custom(1);
/*
$meta would be...
arrary(
\'some_meta_key\' => array(
\'one_meta_value\'
)
);
*/
除非您的意思是获取给定帖子类型中所有帖子的所有meta,否则您将需要一个自定义查询。
<?php
function wpse65225_get_all_meta($type)
{
global $wpdb;
$res = $wpdb->get_results($wpdb->prepare(
"SELECT post_id, meta_key, meta_value FROM {$wpdb->postmeta} WHERE post_id IN
(SELECT ID FROM {$wpdb->posts} WHERE post_type = %s)", $type
), ARRAY_A);
return $res;
}