我正在尝试为我的数据库中的所有帖子获取以下3列
user_name 和 post_title 存储在wp_posts
表中pods_field_blog_category 存储在wp_postmeta
表中。
在代码下方显示, user_id 和 post_title ,但我不知道如何获取meta_value并显示它:
<?php
$posts = get_posts(array(
'posts_per_page' => -1,
'post_type' => 'custom_post'
)
);
if ($posts):
?>
<ul>
<?php
foreach ($posts as $post):
setup_postdata($post);
?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
//what should be the code to display the meta value pods_field_blog_category
</li>
<?php endforeach; ?>
</ul>
<?php wp_reset_postdata(); ?>
<?php endif; ?>
答案 0 :(得分:1)
get_post_meta()
methord用于获取postmeta。
你可以像这样使用它:
$key_1_value = get_post_meta($post->ID, 'pods_field_blog_category', true);
<强>已更新强>
如果您想要检索多个postmeta,那么您可以使用以下任何一种方法:
方法1:
$key_1_value = get_post_meta($post->ID, 'key_1', true);
$key_2_value = get_post_meta($post->ID, 'key_2', true);
方法2 :( 推荐)
$key_value = array();
$meta = get_post_meta($post->ID);
foreach ($meta as $key => $value)
{
$key_value[$key] = $value[0];
}
print_r($key_value);
方法3:在评论
中说我的@daniel$keysArray = array('key_1', 'key_2', 'key_3');
foreach ($keysArray as $key)
{
$key_value = get_post_meta($post->ID, $key, true);
}
希望这有帮助!