Wordpress循环不起作用

时间:2016-10-25 18:19:03

标签: php html wordpress

我在WordPress中创建了自己的模板,但循环条目不起作用。我想参与其中一个子页面。我还添加了条目。

这是我的子页面的代码。请帮我。我不知道出了什么问题。我在代码下添加了一张图片。

<?php include 'header.php'; ?>
    <main class="subpage-blog">
    <div class="subpage-banner">
        <div class="container">
            <h3>BLOG SIDEBAR</h3>
            <div class="breadcrumbs">

            </div>
        </div>
    </div>

    <aside class="side-menu col-md-4">
        <div class="search">
            <h4>Search blog</h4>
            <input type="text" value="Search">
        </div>
        <!-- .search -->
        <div class="categories">
            <h4>Blog Categories</h4>
            <ul class="categories-blog-ul">
                <li>Inspirtation</li>
                <li>Work</li>
                <li>Tech</li>
                <li>Creative</li>
            </ul>
        </div>
        <!--.categories-->
        <div class="recent-posts">
            <h4>Recents posts</h4>
            <ul>

            </ul>
        </div>
        <!-- .recent-posts-->
        <div class="tags-spot">
            <h4>Tags</h4>
            <div class="tag"></div>
        </div>
        <!-- .tags-spot-->
    </aside>
    <!-- .side-menu-->

    <article class="content">
        <div class="container">
            <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
                    <div class="news-box">
                        <div class="news-list-content">
                            <a href="">
                                <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>                      
                                <?php the_content('czytaj dalej'); ?>
                            </a>
                        </div>
                        <!-- .news-list-content-->
                        <div class="image-box-news">
                            <img src="<?=get_template_directory_uri(); ?>/images/ikona-wpisu.png" alt="" />
                        </div>
                    </div>
                    <!-- .news-box-->
                <?php endwhile;  else: ?>

                <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
        </div>
        <!-- .container-->
    </article>
    <!-- .content-->
</main>
<?php include 'footer.php'; ?>

image

1 个答案:

答案 0 :(得分:0)

问题在于:

if (have_posts()) : while (have_posts()) : the_post();

正在使用当前页面的have_posts查询..这意味着它可能只显示当前页面模板的内容。

相反,您需要创建一个全新的查询对象并在其上调用这些函数,如下所示:

<?php
  $the_query = new WP_Query( array('posts_per_page' => 10 ) ); //Create our new custom query

  if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?>
   <div class="news-box">
      <div class="news-list-content">
         <h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>                      
         <?php the_content('czytaj dalej'); ?>
      </div>

      <!-- all your other markup goes here.... -->

   </div>
<?php endwhile;  else: ?>
      <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>
<?php wp_reset_postdata(); //Restore the original postdata for this page, if needed later ?>