我正在尝试对嵌套插件使用嵌套循环。循环都可以,但是问题是在第二个嵌套循环($ issue)之后出现的。我想再次访问$ publication循环,但是数据仍然是$ issue数据。
wp_reset_query()
会立即重置为我不想使用的single.php中的主循环。
我可以使用get_posts()
而不是新的WP_Query,但是我希望能够使用get_template_part()
。
如何将我的数据重置回发布循环,以便第二个“出版物标题”返回出版物,而不是出版物标题?
这是我在single.php中的代码:
$publication = new WP_Query( array(
'connected_type' => 'publication_to_post',
'connected_items' => $post->ID,
'fields' => 'ids',
'posts_per_page' => 1,
) );
if ( $publication->have_posts() ) {
while ( $publication->have_posts() ) : $publication->the_post();
echo '<h2>Publication title = '.get_the_title().'</h2>';
$pub_id = get_the_ID();
$issue = new WP_Query( array(
'connected_type' => 'publication_to_issue',
'connected_items' => $pub_id,
'fields' => 'ids',
'posts_per_page' => 1,
) );
if ( $issue->have_posts() ) {
while ( $issue->have_posts() ) : $issue->the_post();
// need to be able to use template parts in here
echo '<h2>Issue title = '.get_the_title().'</h2>';
endwhile;
}
// This currently returns the issue title, not the publication title
echo '<h2>Publication title = '.get_the_title().'</h2>';
endwhile;
}