How To Add Numbered Page Navigation In Thesis Without Plugin

Page navigation is an essential tool for the visitor to run around your website. If you dont have an page navigation, I strongly suggest you to add one today. There are many plugin to do it. but it may not work. You need to override it. Although Extra plugin will make your site heavy. We know that the less plugin, the less burden on your site. So today i am going to show you how to Add Numbered Page Navigation In Thesis Without Plugin. You need access to custom.css and custom_functions.php.

How To Add Numbered Page Navigation In Thesis Without Plugin

This piece of code i am using for many days. i have found it in another blog,but unfortunately i have forgot it. Lets begin the show !

First download the Custom.css and custom-functions.php in case anything goes wrong.

Add the below code to custom_functions.php:

function numbered_page_nav($prelabel = '', $nxtlabel = '', $pages_to_show = 8, $always_show = false) {
	global $request, $posts_per_page, $wpdb, $paged;

	$custom_range = round($pages_to_show/2);
	if (!is_single()) {
		if(!is_category()) {
			preg_match('#FROMs(.*)sORDER BY#siU', $request, $matches);
		}
		else {
			preg_match('#FROMs(.*)sGROUP BY#siU', $request, $matches);
		}
		$blog_post_count = $matches[1];
		$numposts = $wpdb->get_var("SELECT COUNT(DISTINCT ID) FROM $blog_post_count");
		$max_page = ceil($numposts /$posts_per_page);
		if(empty($paged)) {
			$paged = 1;
		}
		if($max_page > 1 || $always_show) {
			echo "<div class='page-nav'><div class='page-nav-intro'>Page $paged of $max_page</div>";
			if ($paged >= ($pages_to_show-2)) {
				echo '<div class="page-number"><a href="'.get_pagenum_link().'">1</a></div><div class="elipses">...</div>';
			}
			for($i = $paged - $custom_range; $i <= $paged + $custom_range; $i++) {
				if ($i >= 1 && $i <= $max_page) {
					if($i == $paged) {
						echo "<div class='current-page-number'>$i</div>";
					}
					else {
						echo '<div class="page-number"><a href="'.get_pagenum_link($i).'">'.$i.'</a></div>';
					}
				}
			}
			if (($paged+$custom_range) < ($max_page)) {
				echo '<div class="elipses">...</div><div class="page-number"><a href="'.get_pagenum_link($max_page).'">'.$max_page.'</a></div>';
			}
			echo "</div>";
		}
	}
}
remove_action('thesis_hook_after_content', 'thesis_post_navigation');
add_action('thesis_hook_after_content', 'numbered_page_nav');

 

Now Add the Below code to custom.css:

/* NUMBERED PAGE NAV */ .page-nav { font-size: 1.35em; font-weight: bold; margin: 1em 0; padding: 0; overflow: hidden; } .page-nav-intro { float: left; padding: .3em .5em; margin: 0 1em 1em 0; background: #efefef; border: .1em solid #ccc; } .page-number { float: left; padding: .3em .5em; margin: 0 .2em; background: #fff; border: .1em solid #ccc; } .current-page-number { float: left; padding: .3em .5em; margin: 0 .2em; background: #efefef; border: .1em solid #ccc; } .elipses { float: left; padding: .3em .2em; }

Ok ! Thats it. Now Save and upload these 2 files.

Code Backup

Check Also

How To Add Facebook “Like” Button To Each Post In Thesis Without Plugin

Facebook is currently the most popular social networking site available. it bears an great importance …

Leave a Reply

Your email address will not be published. Required fields are marked *

*