Trang chủ \ 19:01

Phân trang cho nhận xét với bài trên 200 nhận xét

Sau khi Comments phân cấp được Blogger đưa vào hoạt động thì hệ thống phân trang cho comments cũ đã không còn được hỗ trợ. Với những bài viết có trên 200 nhận xét nếu như không dùng Comments phân cấp của Blogger thì việc theo dõi những nhận xét này sẽ trở nên khó khăn. Bài viết này sẽ hướng dẫn bạn tạo phân trang cho bài viết có trên 200 nhận xét.

comments navigation


Bước 1: Thêm đoạn mã dưới đây vào trước thẻ ]]></b:skin> trong template của bạn.
.comments-pager{clear:bold;margin:10px 0;line-height:30px;font-size:13px}
.comments-pager .page-first{float:left;margin-right:6px}
.comments-pager .page-items{float:right}
.comments-pager .page-number,.comments-pager .page-next{margin-left:6px}
.comments-pager .page-number,.comments-pager .page-prev{margin-right:6px}
.comments-pager .selected{border:1px solid #BBB;background:#FFF;padding:5px}

Bước 2: Tìm trong template đoạn mã dưới đây:
<b:if cond='data:post.commentPagingRequired'>
 <span class='paging-control-container'>
  <a expr:class='data:post.oldLinkClass' expr:href='data:post.oldestLinkUrl'><data:post.oldestLinkText/></a>
  &#160;
  <a expr:class='data:post.oldLinkClass' expr:href='data:post.olderLinkUrl'><data:post.olderLinkText/></a>
  &#160;
  <data:post.commentRangeText/>
  &#160;
  <a expr:class='data:post.newLinkClass' expr:href='data:post.newerLinkUrl'><data:post.newerLinkText/></a>
  &#160;
  <a expr:class='data:post.newLinkClass' expr:href='data:post.newestLinkUrl'><data:post.newestLinkText/></a>
 </span>
</b:if>

Có 2 đoạn mã như vậy. Thay thế đoạn mã thứ nhất bằng đoạn mã sau:
<b:if cond='data:post.numComments &gt; 200'>
 <div class='comments-pager' id='comments-pager-top'/>
</b:if>

Thay thế đoạn mã thứ 2 bằng đoạn mã sau:
<b:if cond='data:post.numComments &gt; 200'>
 <div class='comments-pager' id='comments-pager-bottom'>
  <script type='text/javascript'>
var numcomments='<data:post.numComments/>';
//<![CDATA[
var current;numshowpage=5;prev='&#8592;';next='&#8594;';pagefirst='Page';pageitems='Comments';dw='';urlactivepage=location.href;numpage=parseInt((numcomments-1)/200)+1;urlpost=urlactivepage.split('.html');urlpost=urlpost[0]+'.html';if(urlactivepage.indexOf('?commentPage=')==-1){current=1}else{current=parseInt(urlactivepage.substring(urlactivepage.indexOf('?commentPage=')+13))}var integer=parseInt(numshowpage/2);if(integer==numshowpage-integer){numshowpage=integer*2+1}first=current-integer;if(first<1){first=1}last=first+numshowpage-1;if(last>numpage){last=numpage;if((last-first+1)<numshowpage){first=last-numshowpage+1;if(first<1){first=1}}}if(current*200<=numcomments){dw+='<span class="page-items">'+(((current-1)*200)+1)+' - '+(current*200)+' / '+numcomments+' '+pageitems+'</span>'}else{if((((current-1)*200)+1)==numcomments){dw+='<span class="page-items">'+numcomments+' / '+numcomments+' '+pageitems+'</span>'}else{dw+='<span class="page-items">'+(((current-1)*200)+1)+' - '+numcomments+' / '+numcomments+' '+pageitems+'</span>'}}dw+='<span class="page-first">'+pagefirst+'</span>';if(current>1){dw+='<a class="page-prev" href="'+urlpost+'?commentPage='+(current-1)+'#comments">'+prev+'</a>'}if(first>1){dw+='<a class="page-number" href="'+urlpost+'?commentPage=1#comments">1</a>'}if(first>2){dw+='<span class="gap">&#133;</span>'}for(i=first;i<=last;i++){if(i==current){dw+='<span class="selected">'+i+'</span>'}else{dw+='<a class="page-number" href="'+urlpost+'?commentPage='+i+'#comments">'+i+'</a>'}}if(last<numpage-1){dw+='<span class="gap">&#133;</span>'}if(last<numpage){dw+='<a class="page-number" href="'+urlpost+'?commentPage='+numpage+'#comments">'+numpage+'</a>'}if(current<numpage){dw+='<a class="page-next" href="'+urlpost+'?commentPage='+(current+1)+'#comments">'+next+'</a>'}var a=document.getElementById('comments-pager-top');a.innerHTML=dw;a=document.getElementById('comments-pager-bottom');a.innerHTML=dw;
//]]>
  </script>
 </div>
</b:if>

5 là số trang được hiển thị.

Đã cập nhật mã javascript sửa lỗi xét thiếu trường hợp số trang được hiển thị và đường dẫn trong chuyển trang thừa sau khi xem permalink comment.
Chia sẻ Phần mềm và Tài liệu cho người dùng Windows, Ubuntu. Hướng dẫn Thủ thuật cho người dùng Blogger, Blogspot.

Chia sẻ

50

Nhận xét
1

chưa bò tới được con số 100, đào đâu ra con số 200 đây nhỉ :( nhưng với thủ thuật này mình edit 200 lại thành 20 chắc đc nhỉ :)

Reply
2

Cả gia tài comment của tớ mới được 200 trong tổng số hơn 600 bài,huhu

Reply
3

comment & traffic bên blogtruyen "khủng" thật :D

Reply
4

Mình không thấy đoạn bước 2 trong temp

Reply
5

Đang cần cái này, để thử xem sao. Thanks :D

Reply
6

Đã làm thành công, cảm ơn bác Duy rất nhiều :D

Reply
7

hơi bị buồn vì số comment ở blog em :-<

Reply
8

Đọc qua cho biết chứ blog em bài viết có số comments cao nhất cũng chỉ 50 :D

Reply
9

Khoe chút cho vui, bài viết có nhiều comment trên blog của tớ là trên 300 :)

Reply
10

Trong Temp mình không có mã bước 2, Help :(

Reply
11

@Nguyễn Hải ™Vậy chắc temp bạn k có code phân trang cũ. Bạn có thể chèn code thay thế thứ nhất vào trước <b:loop values='data:post.comments' var='comment'> và tìm thẻ </b:loop> gần nhất bên dưới để chèn sau nó đoạn code thay thế thứ 2.

Reply
12

=D> ý nghĩa thật,
Cảm ơn bác Duy :)

Reply
13

Code ngắn gọn và chuyên nghiệp lắm bác Duy. Thank bác.:)

Reply
14

Rất cảm ơn bác DP, vấn đề đã được giải quyết :D

Reply
15

@Duy Pham Mình muốn sửa 15comment/ 1 page thì sao bạn, chứ đợi bao giờ mới có 200

Reply
16

@Nguyễn Hải ™Phân trang vẫn dựa 1 phần vào code của Blogger, chỉ 200 comments / 1 page thôi.

Reply
17

@Nguyễn Anh DuyBác cập nhật lại js nhé. Thực ra cũng k phải lỗi, nó vẫn hoạt động nhưng cho hoàn thiện hơn. Nếu chọn số trang hiển thị là 11 mà mới có 10 trang thì khi xem trang thứ 10 chẳng hạn thì nó có dạng 1...5 6 7 8 9 [10], khi này số trang hiển thị chỉ là 6. Lúc code em xét với 5 trang hiển thị rơi vào trường hợp đặc biệt, cảm thấy thiếu thiếu gì đó, mãi khi ngồi nháp ra giấy mới biết :D

Reply
18

Em thấy có lỗi:

Vào link này (comment #214) thì nó sẽ ra trang 1 chứ ko vào ngay comment đó hay trang 2.

Bác Duy xem sửa đc ko, giúp em với :D

Reply
20

Ủa, bác ko cho post link trong comment à :(

Reply
21

http://www.giaitrifun.com/2011/11/hd-bang-chung-thep-3.html

Duy ơi xem dùm mình cái này 22coment sao nó ko hiện vậy chỉ mình với

Reply
22

cách này hay nè dễ áp dụng nữa chứ thank bạn nha

Reply
23

@Duy PhamUhm, hi vọng nó sớm update tùy chọn comment / 1 trang

Reply
24

@Nguyễn Anh DuyĐây là 1 lỗi do permalink của chính Blogger k phân biệt trang 1 hay 2. Em có tính viết 1 bài nói rõ hơn về vấn đề này từ lâu mà lười, với lại mọi người hình như k quan tâm đến việc này lắm, nếu comments <=200 thì cũng k ảnh hưởng lắm, nhưng trên 200 sẽ thấy nhiều vấn đề phát sinh.

Reply
25

@Bùi Nam PhongBạn xem phần cài đặt đã cho hiện comments chưa.

Reply
26

bac duy sao ko thiết kế load more kiểu facebook nhờ :D

Reply
27

@MR. DJHOAGNó có trong comments phân cấp của Blogger rồi bạn. Còn kiểu comments cũ thì 200 comments nằm trên 1 url.

Reply
28

Bài viết rất hay, thanks!

Reply
29

ai rip ho thems http://www.arsenal.com/home cai

Reply
30

Cảm ơn bác Duy. Đến khi nào blog mình mới xài đc thủ thuật này đây =))

Reply
31

bạn giỏi XML nhỉ...

Reply
32

hi hi blog mình tạo 2 tháng mà được 2000 commnet rồi đó =))

Reply
33

Phải áp dụng mới đc.Cám ơn DP nhiều:)

Reply
34

Cái Cổ Nguyệt's Blog của mình áp dụng sao k đc nhỉ, nó lại còn mất luôn chữ "tải thêm" khi chưa áp dụng.

Reply
35

K dành cho comment phân cấp mà.

Reply
36

ah, thì ra là vậy, nản nhỉ, muốn phân cấp và cũng muốn chia trang mới tức chứ, hi

Reply
37

Cảm ơn nhé, duypham nhiều code hay quá

Reply
38

Cảm ơn DP nhiều nhé. Nhiều bài viết của bạn rất hữu ích ^@^

Reply
39

Duy Pham có phân trang dùng được trên Mobile không ?

Reply
40

Bác xem dùm e sao e bật nhận xét cho blog lên ko đc.

Reply
41

khi đủ 200 post rồi mới lục lại bài này :D

Reply
42

Thank nhé, mình đang cần cái này, nhận xét nhiều quá không kiểm soát được

Reply
43

Mình xin hỏi ngoài lề tí, Mình dự định phát triển trang blogspot thành trang cộng đồng, sẽ có nhiều người cùng viết bài. Nhưng như vậy số bài post trong ngày lên cả 100 bài và 1000 comment. Vậy blogspot có xem là spam mà xóa blog không. Mình đã phân vân. Cảm ơn.

Reply
44

Với số lượng bài viết và comments khủng khiếp vậy bạn có thể hỏi Ngân bên blogtruyen xem, mr.ngankvn[at]gmail.com

Reply
45

Cảm ơn Duy nhé

Reply
46

Không được nữa bác ơi :(

Reply
47

Bạn nói rõ hơn xem.

Reply
48


Không được nữa bác ơi :( demo

Reply
49

Với thread comments của Blogger thì không cần phân trang kiểu này nữa.

Reply
50

Trước khi áp dụng thủ thuật này . Blog em chỉ hiện thì comment thứ 201, còn 200 trở về trước ko hiển thị...

Reply

Đăng nhận xét

Cancel reply

• Những nhận xét spam sẽ bị xóa.
• Public tài khoản Blogger để được trợ giúp.
• Nặc danh thường không được chào đón.