2015-12-25 2 views
0

Я попытался отделить результаты поиска по категориям на 2 вкладках. Все работает отлично, за исключением сообщения «Нет результатов». Это сообщение отображается только тогда, когда в обеих категориях ничего не найдено. Но когда одна вкладка имеет результаты, а другая - нет, ничего не отображается.Wordpress: нет результатов поиска

Я ищу способ показать «Нет результатов» для каждой вкладки. Я имею в виду, если в cat 1 ничего не найдено, а некоторые результаты, найденные в cat 2 -> Показать «Нет результатов» в Таб. 1, и показать результаты на вкладке 2.

Любые предложения?

код здесь:

<div id="tab-content1" class="tab-content"> 
        <ul class="posts--group v-category-games"> 

        <?php 
         global $post; 
         rewind_posts(); 
         $query = new WP_Query(array(
         'posts_per_page' => -1, 
         'cat' => 3, 
         's' => get_search_query(), 
         )); 

         if (have_posts()) :   
          while ($query->have_posts()) : $query->the_post(); 
        ?> 

        <?php $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID)); ?>  

         <li> 
          <div class="post-item v-category-games v-with-image"> 
           <div class="post-item--text"> 
            <a class="post-item--text--name" href="<?php the_permalink(); ?>"><?php the_title(); ?></a> 
            <span class="post-item--text--tagline"> 
             <span><a href="<?php the_permalink(); ?>"><?php the_excerpt(); ?> </a></span> 
             <span> </span> 
            </span> 
           </div> 

           <div class="post-item--thumbnail"> 

            <div class="post-thumbnail"> 
             <div class="backgroundImage_1hK9M post-thumbnail--image" style="background-image: url('<?php echo $url; ?>');"></div> 
             <span></span> 
             <span></span> 
            </div> 
           </div> 
          </div>   
         </li> 

        <?php 
         endwhile; 
        ?> 

        <?php 
         else : 
          echo "<div class='art_descr'><h2>No results in this category!</h2></div></center>"; 
         endif; 
         wp_reset_postdata(); 
        ?> 
       </ul> 
    </div> <!-- #tab-content1 --> 





    <div id="tab-content2" class="tab-content"> 
     <ul class="posts--group v-category-games"> 

        <?php 
         global $post; 
         rewind_posts(); 
         $query = new WP_Query(array(
         'posts_per_page' => -1, 
         'cat' => 4, 
         's' => get_search_query(), 
         )); 

         if (have_posts()) : 
          while ($query->have_posts()) : $query->the_post(); 

        ?> 

        <?php $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID)); ?>  


         <li> 
          <div class="post-item v-category-games v-with-image"> 
           <div class="post-item--circle"> 
            <?php the_field('digest_number'); ?> 
           </div> 

           <div class="post-item--text no-margin"> 
            <a class="post-item--text--name" href="<?php the_permalink(); ?>"><?php the_title(); ?></a> 
            <span class="post-item--text--tagline"> 
             <span><a href="<?php the_permalink(); ?>"><p><?php the_field('short_description'); ?></p> </a></span> 
             <span> </span> 
            </span> 
           </div> 
          </div>   
         </li> 

        <?php 
         endwhile; 
        ?> 

        <?php 
         else : 
          echo "<div class='art_descr'><h2>No results in this category!</h2></div></center>"; 
         endif; 
         wp_reset_postdata(); 
        ?> 

     </ul> 
    </div> <!-- #tab-content2 --> 

</div> 

ответ

0

Вы можете использовать свой if (have_posts()) : на каждом цикле, чтобы определить, отображать или нет ...

if (have_posts()) : 
    //while loop 

else: 
    echo '<h1>no posts found</h1>'; 

endif;