任何人都可以解释为什么这只返回第一个结果。我想返回与当前网址具有相同自定义字段值的所有结果。它将返回1.它是否需要每个或什么?谢谢!!
<?php add_shortcode( 'feed', 'display_custom_post_type' );
function display_custom_post_type(){
$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
$args = array(
'post_type' => 'custom_post_type',
'posts_per_page' => -1
);
$new_query = new WP_Query($args);
while($new_query->have_posts()) : $new_query->the_post();
return get_title();
endwhile;
};?>
答案 0 :(得分:1)
你&#34;返回&#34;来自while循环中第一个元素之后的函数。
返回所有帖子的示例:
$args = array(
'post_type' => 'custom_post_type',
'posts_per_page' => -1
);
$results = get_posts($args);
return $results;
答案 1 :(得分:1)
因为你已经在循环中添加了返回,所以它只会显示最后一个。您必须将返回放在循环外部才能显示所有内容。
只是一个小例子,看看它有效,改变这一点:
while($new_query->have_posts()) : $new_query->the_post();
return get_title();
endwhile;
到此:
while($new_query->have_posts()) : $new_query->the_post();
$all_titles .= get_title();
endwhile;
return $all_titles;
它很可能会在一行中显示所有标题,所以只需格式化即可!