Facebook

How to Add Numbered Page Navigation Widget for Blogger

In Blogger, we have the option to set the number of posts we want to display per page by going to the Settings menu > Posts and comments > Show at most ? posts. Once the number of total posts in our blog exceeds this number, we will see “Older Posts” and “Newer Posts” navigation links in our home page and archive pages footer as Blogger doesn’t have any built-in function on page numbering. But page numbers instead of older and newer posts links could help our blog visitors to navigate quicker (jump from one page to another page or click on a specific page) and know the total number of posts published.

So this tutorial will show you how to add numbered page navigation using Javascript to a Blogger/ blogspot blog. You can select one of the 7 available styles below.


numbered page navigation widget

Adding Numbered Page Navigation to Blogger


You can add this widget in just two steps.


  1. Adding The CSS.

  2. Adding The Script.

Now let’s see how to add the CSS style for page navigation.


1. Adding The CSS


Step 1. Go to Blogger Dashboard > “Template” > click on the “Edit HTML” button:


blogger template html

Step 2. Click anywhere inside the code area and press the CTRL + F keys to open the Blogger search box.



… type or paste the following tag inside the search box and hit Enter to find it:


]]></b:skin>


Step 3. Now choose one of the following numbered page navigation styles and copy the code just below it. Just above ]]></b:skin> paste the code of the style that you want to use:


Numbered Page Navigation on Gray


numbered page navigation style 1


 #blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentpadding: 3px 7px;margin-right:5px;background:#E9E9E9;color: #888;border:1px solid #E9E9E9;
.displaypageNum a:hover,.showpage a:hover,.pagecurrentbackground:#CECECE;text-decoration:none;color: #000;
 .showpageOfdisplay:none!important
#blog-pager .showpage, #blog-pager .pagecurrentfont-weight:bold;color: #888;
 #blog-pager .pagesborder:none;



Black Numbered Page Navigation With Orange Current Page


numbered page navigation style 2


 #blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentpadding: 5px 10px;margin-right:5px; color: #F4F4F4; background-color:#404042;-webkit-box-shadow: 0px 5px 3px -1px rgba(50, 50, 50, 0.53);-moz-box-shadow:0px 5px 3px -1px rgba(50, 50, 50, 0.53);box-shadow: 0px 5px 3px -1px rgba(50, 50, 50, 0.53);
.displaypageNum a:hover,.showpage a:hover, .pagecurrentbackground:#EC8D04;text-decoration:none;color: #fff;
#blog-pager .showpage, #blog-pager, .pagecurrentfont-weight:bold;color: #000;
 .showpageOfdisplay:none!important
#blog-pager .pagesborder:none;-webkit-box-shadow: 0px 5px 3px -1px rgba(50, 50, 50, 0.53);-moz-box-shadow:0px 5px 3px -1px rgba(50, 50, 50, 0.53);box-shadow: 0px 5px 3px -1px rgba(50, 50, 50, 0.53);



Dark Numbered Page Navigation With Blue Current Page


numbered page navigation style 3


 #blog-pagerclear:both;margin:30px auto; padding: 7px; text-align:center;font-size: 11px;background-image: -webkit-gradient(linear,left bottom,left top,color-stop(0, #000000),color-stop(1, #292929));background-image: -o-linear-gradient(top, #000000 0%, #292929 100%);background-image: -moz-linear-gradient(top, #000000 0%, #292929 100%);background-image: -webkit-linear-gradient(top, #000000 0%, #292929 100%);background-image: -ms-linear-gradient(top, #000000 0%, #292929 100%);background-image: linear-gradient(to top, #000000 0%, #292929 100%); padding: 6px;-webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentpadding: 3px 10px;margin-right:5px; color: #fff;
.displaypageNum a:hover,.showpage a:hover,.pagecurrentbackground-image: -webkit-gradient(linear,left bottom,left top,color-stop(0, #59A2CF),color-stop(1, #D9EAFF));background-image: -o-linear-gradient(top, #59A2CF 0%, #D9EAFF 100%);background-image: -moz-linear-gradient(top, #59A2CF 0%, #D9EAFF 100%);background-image: -webkit-linear-gradient(top, #59A2CF 0%, #D9EAFF 100%);background-image: -ms-linear-gradient(top, #59A2CF 0%, #D9EAFF 100%);background-image: linear-gradient(to top, #59A2CF 0%, #D9EAFF 100%);text-decoration: none;color: #000;-webkit-border-radius: 3px;-moz-border-radius: 3px;border-radius: 3px;
.showpageOfdisplay:none!important.blog-pager-older-link, .home-link, .blog-pager-newer-link background: transparent;
a.blog-pager-older-link, a.home-link, a.blog-pager-newer-link color: #fff;
#blog-pager .pagesborder:none;background: none;



Gray Page Navigation With Blue Page Number


numbered page navigation style 4


#blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentfont-size: 14px;padding: 5px 12px;margin-right:5px; color: #666; background-color:#eee;
.displaypageNum a:hover,.showpage a:hover, .pagecurrentbackground:#359BED;text-decoration:none;color: #fff;
#blog-pager .pagecurrentfont-weight:bold;color: #fff;background:#359BED;
 .showpageOfdisplay:none!important
#blog-pager .pagesborder:none;



Blogger Pagination on Green with Orange and Pink on Hover


numbered page navigation style 5


#blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentfont-size: 13px;padding: 5px 12px;margin-right:5px; color: #3E5801; background-color:#E0EDC1;
.displaypageNum a:hover,.showpage a:hover, .pagecurrentbackground:#FEF6DF;text-decoration:none;color: #E16800;
#blog-pager .pagecurrentfont-weight:bold;color: #D25E71;background:#FFDEDF;
 .showpageOfdisplay:none!important
#blog-pager .pagesborder:none;



Orange Numbered Page Navigation Widget for Blogger


numbered page navigation style 6


#blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentfont-size: 13px;padding: 5px 12px;margin-right:5px; color: #AD0B00; background-color:#FAB001;
.displaypageNum a:hover,.showpage a:hover, .pagecurrentbackground:#DB4920;text-decoration:none;color: #fff;
#blog-pager .pagecurrentfont-weight:bold;color: #fff;background:#DB4920;
 .showpageOfdisplay:none!important
#blog-pager .pagesborder:none;



Grey Paged Navigation for Blogger with Red Current Page


numbered page navigation style 7


#blog-pagerclear:both;margin:30px auto;text-align:center; padding: 7px;
.blog-pager background: none;
.displaypageNum a,.showpage a,.pagecurrentfont-size: 12px;padding: 5px 12px;margin-right:5px; color: #222; background-color:#eee; border: 1px solid #EEEEEE;
.displaypageNum a:hover,.showpage a:hover, .pagecurrentbackground:#E5E5E5;text-decoration:none;color: #222;
#blog-pager .pagecurrentfont-weight:bold;color: #fff;background:#DB4920;
 .showpageOfdisplay:none!important
#blog-pager .pagesborder:none;


Note: if you want to hide the “First” and “Last” buttons add this line below the CSS code:


.firstpage, .lastpage display: none;



2. Adding The Script


Step 4. Now find (CTRL + F) this tag:


</body>


UPDATED: Working version for more than 500 posts.


Step 5. Add the following script just above it:



<b:if cond=’data:blog.pageType != &quot;item&quot;’>
<b:if cond=’data:blog.pageType != &quot;static_page&quot;’>
<script type=’text/javascript’>
  /*<![CDATA[*/
    var perPage=3;
    var numPages=3;
    var firstText =’First’;
    var lastText =’Last’;
    var prevText =’« Previous’;
    var nextText =’Next »’;
    var urlactivepage=location.href;
    var home_page=”/”;


if(typeof firstText==”undefined”)firstText=”First”;if(typeof lastText==”undefined”)lastText=”Last”;var noPage;var currentPage;var currentPageNo;var postLabel;pagecurrentg();function looppagecurrentg(pageInfo)var html=”;pageNumber=parseInt(numPages / 2);if(pageNumber==numPages-pageNumber)numPages=pageNumber*2+1
pageStart=currentPageNo-pageNumber;if(pageStart<1)pageStart=1;lastPageNo=parseInt(pageInfo / perPage)+1;if(lastPageNo-1==pageInfo / perPage)lastPageNo=lastPageNo-1;pageEnd=pageStart+numPages-1;if(pageEnd>lastPageNo)pageEnd=lastPageNo;html+=”<span class=’showpageOf’>Page “+currentPageNo+’ of ‘+lastPageNo+”</span>”;var prevNumber=parseInt(currentPageNo)-1;if(currentPageNo>1)if(currentPage==”page”)html+='<span class=”showpage firstpage”><a href=”‘+home_page+'”>’+firstText+'</a></span>’elsehtml+='<span class=”displaypageNum firstpage”><a href=”/search/label/’+postLabel+’?&max-results=’+perPage+'”>’+firstText+'</a></span>’
if(currentPageNo>2)if(currentPageNo==3)if(currentPage==”page”)html+='<span class=”showpage”><a href=”‘+home_page+'”>’+prevText+'</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”/search/label/’+postLabel+’?&max-results=’+perPage+'”>’+prevText+'</a></span>’elseif(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”#” onclick=”redirectpage(‘+prevNumber+’);return false”>’+prevText+'</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”#” onclick=”redirectlabel(‘+prevNumber+’);return false”>’+prevText+'</a></span>’
if(pageStart>1)if(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”‘+home_page+'”>1</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”/search/label/’+postLabel+’?&max-results=’+perPage+'”>1</a></span>’
if(pageStart>2)html+=’ … ‘
for(var jj=pageStart;jj<=pageEnd;jj++)if(currentPageNo==jj)html+='<span class=”pagecurrent”>’+jj+'</span>’else if(jj==1)if(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”‘+home_page+'”>1</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”/search/label/’+postLabel+’?&max-results=’+perPage+'”>1</a></span>’elseif(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”#” onclick=”redirectpage(‘+jj+’);return false”>’+jj+'</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”#” onclick=”redirectlabel(‘+jj+’);return false”>’+jj+'</a></span>’
if(pageEnd<lastPageNo-1)html+=’…’
if(pageEnd<lastPageNo)if(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”#” onclick=”redirectpage(‘+lastPageNo+’);return false”>’+lastPageNo+'</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”#” onclick=”redirectlabel(‘+lastPageNo+’);return false”>’+lastPageNo+'</a></span>’
var nextnumber=parseInt(currentPageNo)+1;if(currentPageNo<(lastPageNo-1))if(currentPage==”page”)html+='<span class=”displaypageNum”><a href=”#” onclick=”redirectpage(‘+nextnumber+’);return false”>’+nextText+'</a></span>’elsehtml+='<span class=”displaypageNum”><a href=”#” onclick=”redirectlabel(‘+nextnumber+’);return false”>’+nextText+'</a></span>’
if(currentPageNo<lastPageNo)if(currentPage==”page”)html+='<span class=”displaypageNum lastpage”><a href=”#” onclick=”redirectpage(‘+lastPageNo+’);return false”>’+lastText+'</a></span>’elsehtml+='<span class=”displaypageNum lastpage”><a href=”#” onclick=”redirectlabel(‘+lastPageNo+’);return false”>’+lastText+'</a></span>’
var pageArea=document.getElementsByName(“pageArea”);var blogPager=document.getElementById(“blog-pager”);for(var p=0;p<pageArea.length;p++)pageArea[p].innerHTML=html
if(pageArea&&pageArea.length>0)html=”
if(blogPager)blogPager.innerHTML=html
function totalcountdata(root)var feed=root.feed;var totaldata=parseInt(feed.openSearch$totalResults.$t,10);looppagecurrentg(totaldata)
function pagecurrentg()var thisUrl=urlactivepage;if(thisUrl.indexOf(“/search/label/”)!=-1)if(thisUrl.indexOf(“?updated-max”)!=-1)postLabel=thisUrl.substring(thisUrl.indexOf(“/search/label/”)+14,thisUrl.indexOf(“?updated-max”))elsepostLabel=thisUrl.substring(thisUrl.indexOf(“/search/label/”)+14,thisUrl.indexOf(“?&max”))
if(thisUrl.indexOf(“?q=”)==-1&&thisUrl.indexOf(“.html”)==-1)if(thisUrl.indexOf(“/search/label/”)==-1)currentPage=”page”;if(urlactivepage.indexOf(“#PageNo=”)!=-1)currentPageNo=urlactivepage.substring(urlactivepage.indexOf(“#PageNo=”)+8,urlactivepage.length)elsecurrentPageNo=1
document.write(“<script src=\””+home_page+”feeds/posts/summary?max-results=1&alt=json-in-script&callback=totalcountdata\”><\/script>”)elsecurrentPage=”label”;if(thisUrl.indexOf(“&max-results=”)==-1)perPage=20
if(urlactivepage.indexOf(“#PageNo=”)!=-1)currentPageNo=urlactivepage.substring(urlactivepage.indexOf(“#PageNo=”)+8,urlactivepage.length)elsecurrentPageNo=1
document.write(‘<script src=”‘+home_page+’feeds/posts/summary/-/’+postLabel+’?alt=json-in-script&callback=totalcountdata&max-results=1″ ><\/script>’)
function redirectpage(numberpage)jsonstart=(numberpage-1)*perPage;noPage=numberpage;var nameBody=document.getElementsByTagName(‘head’)[0];var newInclude=document.createElement(‘script’);newInclude.type=’text/javascript’;newInclude.setAttribute(“src”,home_page+”feeds/posts/summary?start-index=”+jsonstart+”&max-results=1&alt=json-in-script&callback=finddatepost”);nameBody.appendChild(newInclude)
function redirectlabel(numberpage)jsonstart=(numberpage-1)*perPage;noPage=numberpage;var nameBody=document.getElementsByTagName(‘head’)[0];var newInclude=document.createElement(‘script’);newInclude.type=’text/javascript’;newInclude.setAttribute(“src”,home_page+”feeds/posts/summary/-/”+postLabel+”?start-index=”+jsonstart+”&max-results=1&alt=json-in-script&callback=finddatepost”);nameBody.appendChild(newInclude)
function finddatepost(root)post=root.feed.entry[0];var timestamp1=post.published.$t.substring(0,19)+post.published.$t.substring(23,29);var timestamp=encodeURIComponent(timestamp1);if(currentPage==”page”)var pAddress=”/search?updated-max=”+timestamp+”&max-results=”+perPage+”#PageNo=”+noPageelsevar pAddress=”/search/label/”+postLabel+”?updated-max=”+timestamp+”&max-results=”+perPage+”#PageNo=”+noPage
location.href=pAddress


  /*]]>*/
</script>
</b:if>
</b:if>




How to Configure Numbered Page Navigation


After installing, you might want to change these default settings:



perPage: 7,
numPages: 6,
var firstText =’First‘;
var lastText =’Last‘;
var prevText =’« Previous‘;
var nextText =’Next »‘;
}


  1. perPage: how many posts will be shown in each page (i.e. 7). This value has to be the same as the number of posts on the main page. Otherwise, add the same number by going to “Settings” > “Formatting” and type it in the “Show at most” field, then click on the “Save Settings” button.

  2. numPages: how many pages will be shown in the page navigation (6).

  3. To replace the ‘First‘, ‘Last‘, “« Previous” and “Next »” texts, just type your own within the quotes.

Labels fix:


By default, Blogger will show 20 posts on label pages. To make this widget appear on label pages, we will have to cut down this down to the value that we gave for the perPage variable.


Find each occurrence of the following code snippet:


expr:href=’data:label.url’


Replace it with this one below:


expr:href=’data:label.url + “?&amp;max-results=7“‘


Here 7 is the number of posts that will be displayed per page.


Step 8. Click on the “Save Template” button and we finished adding the number page navigation widget for Blogger. Enjoy!













How to Add Numbered Page Navigation Widget for Blogger How to Add Numbered Page Navigation Widget for Blogger Reviewed by TechCO on 7/26/2020 Rating: 5

No comments:

ads 728x90 B
Powered by Blogger.