我正在创建一个用于返回来自自定义post类型的帖子以及特定ACF字段的短代码。一切都很好,除了第一个帖子没有返回它的帖子元信息。
我的代码:
$args = array(
'post_type' => 'show',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'meta_value',
'meta_key' => 'show_date',
'order' => ASC
);
$output = '';
$query = new WP_Query( $args );
if( $query->have_posts() ){
$output .= 'The Showlist';
while( $query->have_posts() ){
$show_date = get_field('show_date');
$show_venue = get_field('show_venue');
// print '';
// print_r($show_date);
// print '';
$query->the_post();
$output .= '' . get_the_title() . ' @ ' . $show_venue->post_title . '';
$output .= '' . $show_date . '';
}
}
wp_reset_postdata();
// do shortcode actions here
return $output;我得到的一个例子是:
我不知道为什么第一项不返回元信息。我要再次检查它是否包含后端的信息。
有什么想法吗?蒂娅。
发布于 2018-01-29 15:18:48
$show_date = get_field('show_date');
$show_venue = get_field('show_venue');
// print '';
// print_r($show_date);
// print '';
$query->the_post();在获得值之后,您正在设置活动的post。
将$query->the_post()始终放在other循环的顶部,以便其他函数可以依赖正确设置的全局$post变量。
https://wordpress.stackexchange.com/questions/292503
复制相似问题