Title: Help limiting posts on filter
Last modified: August 31, 2016

---

# Help limiting posts on filter

 *  [dpope0824](https://wordpress.org/support/users/dpope0824/)
 * (@dpope0824)
 * [10 years ago](https://wordpress.org/support/topic/help-limiting-posts-on-filter/)
 * I have a filter that loads all posts and then filters from there. Is there any
   way to have posts hidden but able to be seen with a Show More button and still
   filterable without being displayed. I know this may not be possible but if it
   is would save me a lot of time and headache. This would also be useful for other
   sites that have alot of content and need filtering without clogging up the page.
 *     ```
       <?php
   
       	if(isset($_POST['filter']))
       	{
       		$fbytype = $_POST['bytype'];
       		$fbytopic = $_POST['bytopic'];
       		$fbyregion = $_POST['byregion'];
   
       		$fsortby = $_POST['sortby'];
       		$fview = $_POST['view'];
       		$ispodcast = false;
   
       		require('../../../wp-blog-header.php'); 
   
       		if($fsortby=="recent"):
       			global $post;
   
       		$posts = query_posts("cat=-1&order=DESC&posts_per_page=-1");
   
       		if ( have_posts() )
       		{
       			if($fview=="grid")
       			{
       				grid_style();
       				while ( have_posts() )
       				{
       					$ispodcast = false;
       					the_post(); 
   
       					if(chechcategory($post->ID,$fbytype))
       					{
       						//echo chechcategory($post->ID,$fbytype).' : '.$post->ID .' : '.$fbytype.'<br>';
       						if(chechcategory($post->ID,$fbytopic))
       						{
       							//echo chechcategory($post->ID,$fbytopic).' : '.$post->ID .' : '.$fbytopic.'<br>';
       							if(chechcategory($post->ID,$fbyregion))
       							{
       								//echo chechcategory($post->ID,$fbyregion).' : '.$post->ID .' : '.$fbyregion.'<br>';
       								if(in_category(array(7),$post->ID))
       									$ispodcast = true;
   
       								$thumbsrc = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
       								?>
   
       								<div class="result-container">
       									<div class="result-title">
       										<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
       									</div>
   
       									<?php 
   
       									if($ispodcast)
       									{
       										?>
       										<div class="result-image">
       											<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/> </a><a class="podcast-overlay" href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>">
       											<div class="podcast-overlay"></div>
       											</a>
       										</div>
   
       										<?php
       									}
       									else
       									{
       										?>
       										<div class="result-image">
       											<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/> </a>
       										</div>
   
       										<?php
       									}
       									?>
   
       									<div class="result-text"><?php the_excerpt_max_charlength(108,$post->ID);//the_excerpt(); ?></div>
       								</div>
   
       								<?php
       							}
       						}
       					}
       				}
       			}
       			else
       			{
       				list_style();
       				while ( have_posts() )
       				{
       					$ispodcast = false;
       					the_post(); 
   
       					if(chechcategory($post->ID,$fbytype))
       					{
       						//echo chechcategory($post->ID,$fbytype).' : '.$post->ID .' : '.$fbytype.'<br>';
       						if(chechcategory($post->ID,$fbytopic))
       						{
       							//echo chechcategory($post->ID,$fbytopic).' : '.$post->ID .' : '.$fbytopic.'<br>';
       							if(chechcategory($post->ID,$fbyregion))
       							{
       								//echo chechcategory($post->ID,$fbyregion).' : '.$post->ID .' : '.$fbyregion.'<br>';
       								if(in_category(array(7),$post->ID))
       									$ispodcast = true;
   
       								$thumbsrc = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
       								?>
   
       								<div class="result-container">
       									<div class="result-left">
       			                        <?php
       									if($ispodcast)
       									{
       										?>
       										<div class="result-image">
       											<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a><a class="podcast-overlay" href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>">
       											<div class="podcast-overlay"></div>
       											</a>
       										</div>
   
       										<?php
       									}
       									else
       									{
       										?>
       										<div class="result-image">
       											<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a>
       										</div>
       										<?php
       									}
       									?>
       									</div>
   
       									<div class="result-right">
       										<div class="result-title">
       											<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
       										</div>
   
       										<div class="result-text">
       											<?php the_excerpt_max_charlength(108,$post->ID);//the_excerpt(); ?>
       										</div>
       									</div>
       								</div>
   
       								<?php
       								}
       							}
       						}
       					}
       				}
       			}
   
       			endif;
   
       			if($fsortby=="shared" || $fsortby=="popular"):
       				$querystr = "
       				SELECT $wpdb->posts.*, CONVERT($wpdb->postmeta.meta_value,UNSIGNED INTEGER) AS Count
       				FROM $wpdb->posts, $wpdb->postmeta
       				WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id ";
   
       			if($fsortby=="shared")
       				$querystr.="AND $wpdb->postmeta.meta_key = 'total-share'";
       			else
       				$querystr.="AND $wpdb->postmeta.meta_key = 'total-count'";
       			$querystr.="
       			AND $wpdb->posts.post_status = 'publish'
       			AND $wpdb->posts.post_type = 'post'
       			AND $wpdb->posts.post_date < NOW()
       			ORDER BY Count DESC ";
   
       			$pageposts = $wpdb->get_results($querystr, OBJECT);
       			if ( $pageposts )
       			{
       				if($fview=="grid")
       				{
       					grid_style();
       					global $post;
   
       					foreach ($pageposts as $post)
       					{
       						$ispodcast = false;
       						setup_postdata($post);
   
       						if(!chechcategory($post->ID,1))
       							if(chechcategory($post->ID,$fbytype))
       							{
       								//echo chechcategory($post->ID,$fbytype).' : '.$post->ID .' : '.$fbytype.'<br>';
       								if(chechcategory($post->ID,$fbytopic))
       								{
       									//echo chechcategory($post->ID,$fbytopic).' : '.$post->ID .' : '.$fbytopic.'<br>';
       									if(chechcategory($post->ID,$fbyregion))
       									{
       										//echo chechcategory($post->ID,$fbyregion).' : '.$post->ID .' : '.$fbyregion.'<br>';
       										if(in_category(array(7),$post->ID))
       											$ispodcast = true;
       										$thumbsrc = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
       										?>
   
       										<div class="result-container">
       											<div class="result-title">
       												<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
       											</div>
   
       											<?php
       											if($ispodcast)
       											{
       												?>
       												<div class="result-image">
       													<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a><a class="podcast-overlay" href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>">
   
       													<div class="podcast-overlay"></div>
       													</a>
       												</div>
       												<?php
       											}
       											else
       											{
       												?>
       												<div class="result-image">
       													<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a>
       												</div>
       												<?php
       											}
       											?>
       											<div class="result-text"><?php the_excerpt_max_charlength(108,$post->ID);//the_excerpt(); ?></div>
       										</div>
   
       										<?php
       									}
       								}
       							}
       						}
       					}
       					else
       					{
       						list_style();
       						global $post;
   
       						foreach ($pageposts as $post)
       						{
       							$ispodcast = false;
       							setup_postdata($post);
   
       							if(!chechcategory($post->ID,1))
       								if(chechcategory($post->ID,$fbytype))
       								{
       									//echo chechcategory($post->ID,$fbytype).' : '.$post->ID .' : '.$fbytype.'<br>';
       									if(chechcategory($post->ID,$fbytopic))
       									{
       										//echo chechcategory($post->ID,$fbytopic).' : '.$post->ID .' : '.$fbytopic.'<br>';
       										if(chechcategory($post->ID,$fbyregion))
       										{
       											//echo chechcategory($post->ID,$fbyregion).' : '.$post->ID .' : '.$fbyregion.'<br>';
       											if(in_category(array(7),$post->ID))
       												$ispodcast = true;
   
       											$thumbsrc = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
       											?>
   
       											<div class="result-container">
       												<div class="result-left">
       			 									<?php
       												if($ispodcast)
       												{
       													?>
       													<div class="result-image">
       														<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a><a class="podcast-overlay" href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><div class="podcast-overlay"></div></a>
       													</div>
   
       													<?php
       												}
       												else
       												{
       													?>
       													<div class="result-image">
       														<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><img src="<?php echo $thumbsrc; ?>" height="100px" width="210px" alt="Link to <?php the_title(); ?>"/></a>
       													</div>
   
       													<?php
       												}
       												?>
       												</div>
   
       												<div class="result-right">
       													<div class="result-title">
       														<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
       													</div>
   
       													<div class="result-text">
       														<?php the_excerpt_max_charlength(108,$post->ID);//the_excerpt(); ?>
       													</div>
       												</div>
       											</div>
   
       											<?php
       											}
       										}
       									}
       								}
       							}
       						}
       						endif;
       					}
   
       					function grid_style()
       					{
       						echo '	<style>	#search-filter-page-continer .result-container		{						float:left;			margin-left: 25px;			padding-bottom: 40px;			width: 220px; height:215px;		}		#search-filter-page-continer .result-container .result-title		{			text-transform: uppercase;			font-weight: bold;			font-size:12px;	height:32px; line-height:16px;	}		#search-filter-page-continer .result-container .result-image		{ position:relative;			margin:10px 0px;			border: 1px solid #E1DEDE;			width:210px;			height:100px;					}		#search-filter-page-continer .result-container .result-text		{			overflow:hidden;			height:57px;			width:100%;		}</style>';
   
       					}
   
       					function list_style()
       					{
   
       						echo '<style> #search-filter-page-continer .result-container{	padding-bottom: 40px;			width: 100%;			height:140px;	padding-left:30px; position:relative; display:block;	}		#search-filter-page-continer .result-container .result-left		{			float:left;			width:220px;		}		#search-filter-page-continer .result-container .result-right		{			float:left;			margin-left: 30px;	 margin-top: 10px;		width: 520px;		}		#search-filter-page-continer .result-container .result-title		{			text-transform: uppercase;			font-weight: bold;			font-size:14px;					}		#search-filter-page-continer .result-container .result-image		{ position:relative;			border: 1px solid #E1DEDE;			width:210px;			height:100px;					}		#search-filter-page-continer .result-container .result-text		{			overflow:hidden;						width:100%;			height:58px;			margin-top: 15px;		}</style>';
       					}
   
       					function chechcategory($id,$category)
       					{
       						if($category=="")
       							return true;
       						return in_category(explode(',',$category),$id);
       					}
   
       					function the_excerpt_max_charlength($charlength,$id)
       					{
   
       						$synopses = get_post_meta($id,'synopsis',true);
       						if($synopses=="")
       							$synopses = get_the_excerpt();//get_post_meta($id, 'thumbnail-copy', true);
   
       						$excerpt=$synopses;
       						$excerpt = str_replace('[quote]','',$excerpt);
       						$charlength++;
   
       						if ( mb_strlen( $excerpt ) > $charlength )
       						{
       							$subex = mb_substr( $excerpt, 0, $charlength - 5 );
       							$exwords = explode( ' ', $subex );
       							$excut = - ( mb_strlen( $exwords[ count( $exwords ) - 1 ] ) );
       							if ( $excut < 0 )
       							{
       								echo mb_substr( $subex, 0, $excut );
       							}
       							else
       							{
       								echo $subex;
       							}
       							echo '...';
       						}
       						else
       						{
       							echo $excerpt;
       						}
       					}
       				?>
       ```
   

The topic ‘Help limiting posts on filter’ is closed to new replies.

## Tags

 * [filter](https://wordpress.org/support/topic-tag/filter/)
 * [hidden](https://wordpress.org/support/topic-tag/hidden/)
 * [show more](https://wordpress.org/support/topic-tag/show-more/)

 * 0 replies
 * 1 participant
 * Last reply from: [dpope0824](https://wordpress.org/support/users/dpope0824/)
 * Last activity: [10 years ago](https://wordpress.org/support/topic/help-limiting-posts-on-filter/)
 * Status: not resolved

## Topics

### Topics with no replies

### Non-support topics

### Resolved topics

### Unresolved topics

### All topics
