我有一个foreach循环,该循环仅返回最新帖子的title
。例如,我将帖子test
作为products
中的最新帖子,并且在下面定义的循环中,当执行var_dump
时,它仅转储名为“ test”的最新帖子的标题。
这是为什么?
方法:
<?php
$args = array(
'post_type' => 'products',
'post_parent' => 0,
'posts_per_page' => 15,
);
$products = get_posts( $args );
if ($products){
foreach ($products as $product) : setup_postdata( $product );
var_dump(get_the_title());
endforeach;
wp_reset_postdata();
}
?>
foreach ($products as &$product) : setup_postdata( $product );
请在您的foreach循环中尝试此操作。
使用此一个
if ($products){
foreach ($products as $product) : setup_postdata( $product );
echo get_the_title($product->ID));
// or echo $product->post_title;
endforeach;
wp_reset_postdata();
}