• Hi there! Needing some help getting pagination to work on a custom post type of mine.

    The public page is https://www.getcredo.com/team/ though obviously I am working on a staging server.

    This is my code:

    <?php
    /*
    Template Name: Team Members Page
    */
    ?>
    <?php get_header(); ?>
    
    <div id="content-area">
    	<div class="container clearfix fullwidth">
    		<div id="main-area">
    
    <h1 class="page-post"><?php the_title(); ?></h1>
    
    <div class="facetwp-template">
    <div class="collapse">
    <div class="collapse2">Filters (Click to Expand)</h4></div>
    <div class="broad">
    <div class="filter-area">
    <!-- <h3 class="filter">Filter By Your Needs</h3> -->
    <div class="skills-filter"><h4 class="filter">Skill Needed</h4><?php echo facetwp_display( 'facet', 'consultant_skills' ); ?></div>
    <div class="partner-type"><h4 class="filter">Desired Partner Type</h4><?php echo facetwp_display( 'facet', 'partner_type' ); ?></div>
    <div class="budget-size"><h4 class="filter">Your Budget Size</h4><?php echo facetwp_display( 'facet', 'budget_size' ); ?></div>
    </div>
    <!-- <div class="apply-button"><button onclick="FWP.refresh()">Apply Filters</button></div> -->
    <div  class="reset-button"><span class="apply-filter-button"><button onclick="FWP.refresh()">Apply Filters</button></span><span class="reset-filters-button"><button onclick="FWP.reset()">Clear Filters</button></span></div>
    </div></div><hr /><br />
    
    			<div id="team-members" class="clearfix">
    
    		<?php
    			$i = 0;
    
    			$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1;
    			$args = array(
    				'post_type' =>  'team-member',
    				'posts_per_page' => -1,
    				'paged'          => $paged,
    			);
    			$et_team_members_query = new WP_Query( apply_filters( 'et_home_team_members_query_args', $args ) );
    			$i = 1;
    
    			if ( $et_team_members_query->have_posts() ) :
    
    				while ( $et_team_members_query->have_posts() ) : $et_team_members_query->the_post();
    					$i++;
    					$thumb = '';
    					$width = (int) apply_filters( 'et_team_member_image_width', 121 );
    					$height = (int) apply_filters( 'et_team_member_image_height', 121 );
    					$classtext = 'avatar';
    					$titletext = get_the_title();
    					$thumbnail = get_thumbnail( $width, $height, $classtext, $titletext, $titletext, false );
    					$thumb = $thumbnail["thumb"];
    
    					$position = get_post_meta( get_the_ID(), '_et_position', true );
    					$skill_names  = get_post_meta( get_the_ID(), '_et_skill_name', true );
    					$skill_values = get_post_meta( get_the_ID(), '_et_skill_value', true );
    		?>
    				<div class="team-member<?php if ( 0 === $i % 3 ) echo ' last'; ?>">
    					<div class="team-member-inner clearfix">
    						<div class="member-skills">
    							<div class="member-image">
    								<?php print_thumbnail( $thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, $classtext ); ?>
    							</div>
    
    						<?php if ( ! empty( $skill_names ) ) : ?>
    							<ul class="skills">
    							<?php foreach( $skill_names as $skill_key => $skill_name ) : ?>
    								<li>
    									<span class="skill-amount" data-skill="<?php echo esc_attr( $skill_values[$skill_key] ); ?>"></span>
    									<span class="skill-title"><?php echo esc_html( $skill_name ); ?></span>
    									<!-- <span class="skill-number"><?php echo esc_html( $skill_values[$skill_key] ); ?>%</span> -->
    								</li>
    							<?php endforeach; ?>
    							</ul>
    						<?php endif; ?>
    						</div>
    
    						<div class="member-info">
    							<div class="title">
    								<h3><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h3>
    							<?php
    								if ( '' !== $position )
    									printf( '<span>%s</span>', esc_html( $position ) );
    							?>
    							</div>
    
    							<div class="entry">
    								<?php the_content(); ?>
    							</div>
    
    <h3>Partner Details</h3>
    <div class="partner-info">
    <div class="meta-info"><span class="partner-meta-info"><strong>Minimum Consulting Budget:</strong> <?php echo get_post_meta($post->ID, 'Monthly Minimum', true); ?></span></div>     <div class="meta-info"><span class="partner-meta-info"><strong>Location:</strong> <?php echo get_post_meta($post->ID, 'Location', true); ?></span></div>     <div class="meta-info"><span class="partner-meta-info"><strong>Partner Type:</strong> <?php echo get_post_meta($post->ID, 'Partner Type', true); ?></span></div></div>
    
    						</div>
    					</div> <!-- .team-member -->
    				</div> <!-- .team-member -->
    
    	<?php endwhile; ?>
    
    <?php
    
    // next_posts_link() usage with max_num_pages
    next_posts_link( 'Older Entries', $the_query->max_num_pages );
    previous_posts_link( 'Newer Entries' );
    ?>
    
    <?php
    			endif;
    			wp_reset_postdata();
    		?>
    
    			</div> <!-- #team-members -->
    
    		</div> <!-- #main-area -->
    
    	</div>
    	</div> <!-- .container -->
    <!-- added this one for filters --> </div>
    </div> <!-- #content-area -->
    
    <?php get_footer(); ?>

    Any help on why pagination won’t show up when I set posts_per_page to something like 15 and have 55 total?

    Thank you in advance!

  • The topic ‘Help on pagination on a custom post type’ is closed to new replies.