Tuy nhiên, có một số Blog, phía dưới được thay bằng một danh mục đánh số trang nhìn rất chuyên nghiệp. Loay hoay tìm kiếm được trên mạng được tiện ích về "Số trang", để thực hiện chỉ cần đơn giản copy mã và dán vào tiện ích HTML/Javacript mà không phải cân thiệp Hack hoặc vào chỉnh sửa trong HTML.
Tôi xin giới thiệu các bước thực hiện áp dụng cho Blogspot - Blogger để có được danh mục số trang như hình bên.
1. Đăng nhập vài tài khoản Blog của bạn tại http://www.blogger.com
2. Trong "Bảng điều khiển - Dashboard" của Blogger, bạn click vào "Bố cục - Layout"
3. Bạn hãy chọn click "Thêm tiện ích - Page Elements". Khi xuất hiện bảng lựa chọn "Thêm tiện ích", bạn cuộn chuột xuống dưới để lựa chọn "HTML/ Javascript" rồi click chọn vào dấu "+" bên phải.
4. Màn hình xuất hiện bảng "Định cầu hình HTML/Javascript - Configure" .
Trong phần nội dung bạn copy mã code dưới rồi paste vào.
<style>
.showpageArea {padding: 0 2px;margin-top:10px;margin-bottom:10px;
}
.showpageArea a {border: 1px solid #505050;
color: #000000;font-weight:normal;
padding: 3px 6px !important;
padding: 1px 4px ;margin:0px 4px;
text-decoration: none;
}
.showpageArea a:hover {
font-size:11px;
border: 1px solid #333;
color: #000000;
background-color: #FFFFFF;
}
.showpageNum a {border: 1px solid #505050;
color: #000000;font-weight:normal;
padding: 3px 6px !important;
padding: 1px 4px ;margin:0px 4px;
text-decoration: none;
}
.showpageNum a:hover {
font-size:11px;
border: 1px solid #333;
color: #000000;
background-color: #FFFFFF;
}
.showpagePoint {font-size:11px;
padding: 2px 4px 2px 4px;
margin: 2px;
font-weight: bold;
border: 1px solid #333;
color: #fff;
background-color: #000000;
}
.showpage a:hover {font-size:11px;
border: 1px solid #333;
color: #000000;
background-color: #FFFFFF;
}
.showpageNum a:link,.showpage a:link {
font-size:11px;
padding: 2px 4px 2px 4px;
margin: 2px;
text-decoration: none;
border: 1px solid #0066cc;
color: #0066cc;
background-color: #FFFFFF;}
.showpageNum a:hover {font-size:11px;
border: 1px solid #333;
color: #000000;
background-color: #FFFFFF;
}
</style>
<script type=”text/javascript”>
function showpageCount(json) {
var thisUrl = location.href;
var htmlMap = new Array();
var isFirstPage = thisUrl.substring(thisUrl.length-14,thisUrl.length)==”.blogspot.com/”;
var isLablePage = thisUrl.indexOf(“/search/label/”)!=-1;
var isPage = thisUrl.indexOf(“/search?updated”)!=-1;
var thisLable = isLablePage ? thisUrl.substr(thisUrl.indexOf(“/search/label/”)+14,thisUrl.length) : “”;
thisLable = thisLable.indexOf(“?”)!=-1 ? thisLable.substr(0,thisLable.indexOf(“?”)) : thisLable;
var thisNum = 1;
var postNum=1;
var itemCount = 0;
var fFlag = 0;
var eFlag = 0;
var html= ”;
var upPageHtml =”;
var downPageHtml =”;
var pageCount=5;
var displayPageNum=3;
var firstPageWord = ‘First’;
var endPageWord = ‘Last’;
var upPageWord =’Previous’;
var downPageWord =’Next’;
var labelHtml = ‘<span class=”showpageNum”><a href=”/search/label/’+thisLable+’?&max-results=’+pageCount+’”>’;
for(var i=0, post; post = json.feed.entry[i]; i++) {
var timestamp = post.published.$t.substr(0,10);
var title = post.title.$t;
if(isLablePage){
if(title!=”){
if(post.category){
for(var c=0, post_category; post_category = post.category[c]; c++) {
if(encodeURIComponent(post_category.term)==thisLable){
if(itemCount==0 (itemCount % pageCount ==(pageCount-1))){
if(thisUrl.indexOf(timestamp)!=-1 ){
thisNum = postNum;
}
postNum++;
htmlMap[htmlMap.length] = ‘/search/label/’+thisLable+’?updated-max=’+timestamp+’T00%3A00%3A00%2B08%3A00&max-results=’+pageCount;
}
}
}
}//end if(post.category){
itemCount++;
}
}else{
if(title!=”){
if(itemCount==0 (itemCount % pageCount ==(pageCount-1))){
if(thisUrl.indexOf(timestamp)!=-1 ){
thisNum = postNum;
}
if(title!=”) postNum++;
htmlMap[htmlMap.length] = ‘/search?updated-max=’+timestamp+’T00%3A00%3A00%2B08%3A00&max-results=’+pageCount;
}
}
itemCount++;
}
}
for(var p =0;p< htmlMap.length;p++){
if(p>=(thisNum-displayPageNum-1) && p<(thisNum+displayPageNum)){
if(fFlag ==0 && p == thisNum-2){
if(thisNum==2){
if(isLablePage){
upPageHtml = labelHtml + upPageWord +’</a></span>’;
}else{
upPageHtml = ‘<span class=”showpage”><a href=”/”>’+ upPageWord +’</a></span>’;
}
}else{
upPageHtml = ‘<span class=”showpage”><a href=”‘+htmlMap[p]+’”>’+ upPageWord +’</a></span>’;
}
fFlag++;
}
if(p==(thisNum-1)){
html += ‘ <span class=”showpagePoint”><u>’+thisNum+’</u></span>’;
}else{
if(p==0){
if(isLablePage){
html = labelHtml+’1</a></span>’;
}else{
html += ‘<span class=”showpageNum”><a href=”/”>1</a></span>’;
}
}else{
html += ‘<span class=”showpageNum”><a href=”‘+htmlMap[p]+’”>’+ (p+1) +’ </a></span>’;
}
}
if(eFlag ==0 && p == thisNum){
downPageHtml = ‘<span class=”showpage”> <a href=”‘+htmlMap[p]+’”>’+ downPageWord +’</a></span>’;
eFlag++;
}
}//end if(p>=(thisNum-displayPageNum-1) && p<(thisNum+displayPageNum)){
}//end for(var p =0;p< htmlMap.length;p++){
if(thisNum>1){
if(!isLablePage){
html = ‘<span class=”showpage”><a href=”/”>’+ firstPageWord +’ </a></span>’+upPageHtml+’ ‘+html +’ ‘;
}else{
html = ”+labelHtml + firstPageWord +’ </a></span>’+upPageHtml+’ ‘+html +’ ‘;
}
}
html = ‘<div class=”showpageArea”><span style=”padding: 2px 4px 2px 4px;margin: 2px 2px 2px 2px;color: #000000;border: 1px solid #333; background-” class=”showpage”>Page ‘+thisNum+’ of ‘+(postNum-1)+’: </span>’+html;
if(thisNum<(postNum-1)){
html += downPageHtml;
html += ‘<span class=”showpage”><a href=”‘+htmlMap[htmlMap.length-1]+’”> ‘+endPageWord+’</a></span>’;
}
if(postNum==1) postNum++;
html += ‘</div>’;
if(isPage isFirstPage isLablePage){
var pageArea = document.getElementsByName(“pageArea”);
var blogPager = document.getElementById(“blog-pager”);
if(postNum <= 2){
html =”;
}
for(var p =0;p< pageArea.length;p++){
pageArea[p].innerHTML = html;
}
if(pageArea&&pageArea.length>0){
html =”;
}
if(blogPager){
blogPager.innerHTML = html;
}
}
}
</script>
<script src=”/feeds/posts/summary?alt=json-in-script&callback=showpageCount&max-results=99999″ type=”text/javascript”></script>
<div style=”text-align:right;font-size:10px;color:000000;margin-top:15px;display:none;”> <a href=”http://www.techieblogger.com/2008/07/page-navigation-hack-for-blogger.html”>Grab this Widget ~ Blogger Accessories</a></div>
Sau khi đã thêm mã Javascript bạn cần kéo và thả tiện ích này vào dưới Blog Posts. Xem hình minh hoạ cho việc này.
Trong đoạn mã trên bạn có thể thay đổi giá trị được đánh dấu màu đỏ như ở dưới.
1 : var pageCount = 5;
Con số này thể hiện số bài sẽ được hiển thị trên mỗi một trang. Bạn có thể thay đổi tuỳ ý, thông thường chọn số nhỏ hơn 10 để Blog được hiển thị với tốc độ nhanh hơn.
2 : var displayPageNum = 3;
Sổ biểu thị sô trang hiển thị trên thanh tiện ích.
Như vậy bạn đã có một Tiện ích mới để lựa chọn thêm vào Blogger/Blogspot của mình. Hãy commnet nhận xét về tiện ích này nếu bạn thấy thích thú với nó nhé. Chúc các bạn thành công.
Nguồn: Blog của techieblogger
hay lắm ^^
ReplyDeletejust drop by, but sorry, i do not understand for your language, he he he, do you have english version ??
ReplyDeleteOwh vietnamese, i see.. :)
ReplyDeleteHappy to make friendship with you too..:)
*) Loading of your blog is heavy enough, huhuhu... :p
ÔI trời ! Cái bài hack này hay qúa , Một thủ thuật nâng cao - lại đc viết rất chi tiết đến gà cũng không thể thắc mắc gì đc . Tuy là dịch lại nhưng công cậu đáng ghi vào sử sách đấy !!
ReplyDeleteHa ha ! tớ view source của Blog Rias-techno-wizard Lấy đc cái code phân trang cực pro ( giống cái hình minh hoạ thứ hai trong bài này ) khoái quá khoái quá !!!
ReplyDeletemình thix cái thủ thuật này nè :d
ReplyDeleteRất hay, thanks!
ReplyDeleteThanks....
ReplyDeletehay nhưng mà tôi không làm được. toàn hiện lỗi thôi trang đầu hiển thị bình thường từ trang 2 trở đi là có vấn đề không hiển thị bài viết nào cả
ReplyDelete@ to Mr.Zin: Đùa mình à Zin ơi, cái này không thể nào lỗi.
ReplyDeleteCái này lúc thì chạy lúc thì không. Hơi nản vì số lần thất bại là nhiều hơn thnahf công. mà tác giả bài viết này copy code thiếu 1 dòng code nhé. Dòng mà cái ông tác giả hình như là mohamet allied hay sao ý bảo là để lại để thay lời cảm ơn. hihi
ReplyDeleteThis comment has been removed by the author.
ReplyDeletehay quá bạn ơi ^^
ReplyDeletesao next sang trang khác lại không được nhỉ
ReplyDeletehay cái nỗi gì, code này chay có được đâu mà hay, chỉ chạy được 1 2 trang đầu, các trang sau toàn nhảy trang không, mai mốt có post bài thì phải kiểm tra lại rồi mới post chứ để anh em khỏi phải cực khổ lần mò ....hix
ReplyDeleteKhong chay ban oi.
ReplyDeletekhi bấm chuyển thì bài thì k hiện đủ bài viết...bài viết của trang này với trang kia trùng nhau
nản quá
không được
ReplyDeleteThôi bỏ đi, để mình tìm cái khác share cho anh em vậy.
ReplyDeletecái này chông đẹp lắm! nhưng của mình bị lặp lại một số bài...
ReplyDeletecái này hỏng rồi mà có cái khác đó bên danghienit ấy
ReplyDeleteMình sài Temp mặc định của Blogger
ReplyDeletehttp://www.buanhan.info/
Đã thử tất cả các loại như thêm code PageNavi của hỗn tạp blog , thêm code của cậu , nhưng đều không đc .
Không biết ai có thể giúp mình đc k :)
Không hiển thị gì hết cả??....
ReplyDelete