【发布时间】:2011-11-10 20:42:01
【问题描述】:
由于某种原因,我无法让 WP_Query 返回帖子的自定义字段值。我可以使用get_the_post_thumbnail($post->ID, array(50,50)) 获取帖子缩略图,但我无法使用get_post_meta($post->ID, $key, true) 获取自定义字段数据。
我正在尝试做的精简版:
<?php
$keys = array('Show Date','Birth Year','Origin');
echo '<table>';
echo '<tr><th>Title</th>';
foreach( $keys as $key ) {
echo '<th>' . $key . '<th>';
}
echo '</tr>';
$myquery = new WP_Query( 'post_type=post' );
if( $myquery->have_posts() ) : while( $myquery->have_posts() ) : $myquery->the_post();
$title = get_the_title();
echo '<tr><td>' . $title . '</td>';
$values = array();
foreach( $keys as $key ) {
$values[] = get_post_meta($post->ID, $key, true);
}
foreach( $values as $value ) {
echo '<td>';
echo $value;
echo '</td>';
}
echo '</tr>';
endwhile; endif;
echo '</table>';
?>
也可以在这里找到:
http://pastebin.com/at8S2THs
即使删除了所有非必要代码,我也无法完成这项工作。我知道您可以在查询中使用 meta_key 和 meta_value 之类的参数来缩小结果范围,但我只想为每个帖子显示我指定的键的所有值(如果存在)。
任何帮助将不胜感激...
** 找到解决方案 **
只需要在循环开始后添加global $post;。感谢 WP 支持论坛上的@Kimikaze 提供解决方案!
【问题讨论】:
标签: wordpress meta custom-fields