当没有找到结果时,wordpress侧边栏循环在​​search.php中不起作用

时间:2013-01-14 12:26:07

标签: php wordpress search

在search.php的wordpress中我有这个..

get_header(); ?>
...html/css
 <?php if ( have_posts() ) : ?>   
 <?php while (have_posts()) : the_post(); 
 ...loop stuff
 <?php endwhile; ?>
 <?php wp_pagenavi(); ?>
 <?php else : ?>
 <h3><?php _e( 'Sorry, but nothing matched your search criteria. Please try again with some different keywords.', 'hartyinternational' ); ?></h3>
                    <div class="nothing-found"><?php get_search_form(); ?></div>
    <?php endif; ?>
   <?php wp_reset_query(); ?>

然后我构建了自己的带有WP_Query循环的侧边栏, e.g。

    if ( have_posts() ) :
$counter = 0;

            $the_query =  new WP_Query( array( 'posts_per_page' => 5, 'cat' => 4 ) );
            while ($the_query->have_posts() ) : $the_query->the_post(); 
            $counter++;
            if ( $counter == 1 || $counter == 3 || $counter == 5   ){
            ?>
            <a href="<?php the_permalink(); ?>"><div class="recent-position-single"><?php the_title();  ?></div> </a>
        <?php }
            else {
            ?> <a href="<?php the_permalink(); ?>"><div class="recent-position-single darker-shade"><?php the_title();  ?></div> </a>
        <?php }



            endwhile;
 wp_reset_query();
 endif; 
 wp_reset_postdata(); ?>

和另一个类似的, 当找到搜索结果时,这些工作完全正常,但是当没有找到结果时,循环无法加载任何内容,任何建议?

看起来似乎没有循环中的循环或类似的东西,我似乎无法弄清楚什么可能是错的,任何帮助都会非常感谢。

1 个答案:

答案 0 :(得分:0)

我从查询中删除了if ( have_posts() ):,这解决了问题。