WordPress博客,仅对当前页面使用存档?

5 html php wordpress loops

我正在建立一个WP网站,其中将有一个News和Blog。

它们将在不同的页面中,一个用于新闻,一个用于博客,将按类别分开。

因此,例如,我在“新闻”上有以下代码,该代码停止了循环获取帖子:

<?php 
    $uncat = get_cat_ID('uncategorised');
    $uncat2 = get_cat_ID('blog');

    $args = array(
      'posts_per_page' => 3,
      'category__not_in' => array($uncat, $uncat2)

      );
    $loop = new WP_Query( $args );
    while ($loop->have_posts() ) : $loop->the_post();
    ?>
    <div class="col-md-12 col-sm-12 col-xs-12" style="padding-left:0; padding-right:0;">
      <a style="color:#333; text-decoration:none;" href="<?php echo get_permalink(); ?>">
        <div class="postsize">
          <div class="leftfloat" style="float: left; padding-right:20px;">
            <?php echo get_the_post_thumbnail( $page->ID, 'categoryimage', array('class' => 'faqposts')); ?>

          </div>
          <div class="contentfaq">
            <h4><?php the_title(); ?></h3>
              <span class="entry-date-blue"><strong><?php echo get_the_date('d/m/y'); ?></strong></span>

              <?php $trimexcerpt = get_the_excerpt();

              $shortexcerpt = wp_trim_words( $trimexcerpt, $num_words = 10, $more = '… <br/> <a href="">Read More ...</a>' ); 

              echo '<a style="color:#333; text-decoration:none;" href="' . get_permalink() . '"><p>' . $shortexcerpt . '</p></a>'; 

              ?>
            </div>
          </div>
        </div>
      </a>


    <?php endwhile; ?>
    <?php wp_reset_query(); ?> 
  </div>
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,但我的右侧也有“ Archives”(档案),可以按发布的日期进行过滤。问题是,这将从News AND Blog中获得帖子,这打破了将它们拆分的想法。

有没有办法拆分这些内容,因此,如果用户单击存档中的“ 2015年3月”,它将仅从NEWS获得本月的帖子?

这是我当前的Archive.php代码

     <?php if (have_posts()) : ?>
  <!-- First, the loop checks whether any posts were discovered with the have_posts() function. -->



  <!-- If there were any posts, a PHP while loop is started. A while loop will continue to execute as long as the condition in the parenthesis is logically true. So, as long as the function have_posts() returns a true value, the while loop will keep looping (repeating). -->
  <?php while (have_posts()) : the_post(); ?>
  <div class="col-md-12 col-sm-12 col-xs-12">
    <a href="<?php echo get_permalink(); ?>">
    <div class="postsize">
      <div style="float: left; padding-right:20px;">
        <?php echo get_the_post_thumbnail( $page->ID, 'categoryimage', array('class' => 'faqposts')); ?>

      </div>
      <h5 class="captext"><?php the_title(); ?></h5>
      <span class="entry-date-orange"><?php echo get_the_date(); ?></span>
      <?php
      foreach((get_the_category()) as $category) { 
        echo ' | ' . $category->cat_name; 
      } 
      ?>

      <p style="margin-top:10px";><?php the_excerpt(); ?></p>
    </div>
  </a>
  </div>
  <?php endwhile; else: ?>
    <p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
  <?php endif; ?>
Run Code Online (Sandbox Code Playgroud)

Sam*_*dha 0

试试这个,它会回显列表

    <h2>Archives by Month:</h2>
    <ul>
        <?php wp_get_archives('type=monthly'); ?>
    </ul>

    <h2>Archives by Subject:</h2>
    <ul>
         <?php wp_list_categories(); ?>
    </ul> 
Run Code Online (Sandbox Code Playgroud)

完整示例代码

<?php
/*
  Template Name: Archives
 */
get_header(); ?>

<div id="container">
<div id="content" role="main">

 <?php the_post(); ?>
    <h1 class="entry-title"><?php the_title(); ?></h1>

    <?php get_search_form(); ?>

    <h2>Archives by Month:</h2>
    <ul>
        <?php wp_get_archives('type=monthly'); ?>
    </ul>

    <h2>Archives by Subject:</h2>
    <ul>
         <?php wp_list_categories(); ?>
    </ul>

   </div><!-- #content -->
 </div><!-- #container -->

 <?php get_sidebar(); ?>
 <?php get_footer(); ?>
Run Code Online (Sandbox Code Playgroud)