无法从WP_Query循环中恢复

时间:2019-04-28 11:10:26

标签: wordpress

使用WordPress 4.9.8,我试图使用自定义WP_Query循环为Page创建模板,以获取相关文章的标题和作者。

下面的代码可以显示相关帖子中的标题和作者,但无法恢复到邮件循环。

当我应用此模板时,不会显示WP_Query之后的the_content()wp_link_pages()。如果我将它们移到WP_Query之前,则会显示它们。

<div id="post-<?php the_ID(); ?>" class="entry-content">

    <!-- ▼WP_Query part-->
    <?php
    $args = array(
        'post_type' => 'works',
        'posts_per_page' => 99,
        'meta_key' => 'nombre',
        'orderby' => 'meta_value_num',
        'order' => 'ASC',
        'Meta_query' => array(
                array(
                        'key' => 'mag',
                    'value' => the_post(),
                    'compare' => 'IN',
                ),
        ),
    ); ?>

    <?php $my_query = new WP_Query( $args ); ?>
    <?php if($my_query->have_posts()):?>
    <section>
        <h2>related posts</h2>
        <ul>
            <?php while ( $my_query->have_posts() ) : $my_query->the_post(); ?>

                <li>
                    <span><?php the_title().' '.the_author(); ?></span>
                </li>
            <?php endwhile; ?>
        </ul>
    </section>
    <?php endif; wp_reset_postdata(); ?>
    <!-- ▲WP_Query part-->
    <?php the_content(); ?>
    <?php wp_link_pages( array( 'before' => '<div class="page-link">' . 'Pages:', 'after' => '</div>' ) ); ?>
</div><!-- .entry-content -->

我想知道如何在the_content之后显示WP_Query

谢谢。

1 个答案:

答案 0 :(得分:0)

如果要在遍历帖子后显示页面的内容,则必须添加另一个完整的循环来获取页面的内容。在您的代码中,您将在post循环结束时重置postdata,因此不再有活动的循环,但是the_content()始终必须位于 循环中-只需添加默认值即可再次循环浏览页面。