Trang chủ \8.2.12

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.

Hướng dẫn thủ thuật Blogger, Blogspot

63

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 Xóa nhận xét
2

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

Reply Xóa nhận xét
3

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

Reply Xóa nhận xét
4

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

Reply Xóa nhận xét
5

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

Reply Xóa nhận xét
6

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

Reply Xóa nhận xét
7

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

Reply Xóa nhận xét
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 Xóa nhận xét
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 Xóa nhận xét
10

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

Reply Xóa nhận xét
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 Xóa nhận xét
12

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

Reply Xóa nhận xét
13

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

Reply Xóa nhận xét
14

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

Reply Xóa nhận xét
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 Xóa nhận xét
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 Xóa nhận xét
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 Xóa nhận xét
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 Xóa nhận xét
19

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

Reply Xóa nhận xét
20

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 Xóa nhận xét
21

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

Reply Xóa nhận xét
22

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

Reply Xóa nhận xét
23

@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 Xóa nhận xét
24

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

Reply Xóa nhận xét
25

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

Reply Xóa nhận xét
26

@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 Xóa nhận xét
Nặc danh 12/2/12 19:24
27

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

Reply Xóa nhận xét
28

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 Xóa nhận xét
29

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

Reply Xóa nhận xét
30

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

Reply Xóa nhận xét
31

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

Reply Xóa nhận xét
32

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 Xóa nhận xét
33

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

Reply Xóa nhận xét
34

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 Xóa nhận xét
35

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

Reply Xóa nhận xét
36

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

Reply Xóa nhận xét
37

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

Reply Xóa nhận xét
38

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

Reply Xóa nhận xét
39

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

Reply Xóa nhận xét
40

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 Xóa nhận xét
41

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 Xóa nhận xét
42

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 Xóa nhận xét
44

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

Reply Xóa nhận xét
45

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

Reply Xóa nhận xét
46


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

Reply Xóa nhận xét
47

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

Reply Xóa nhận xét
48

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 Xóa nhận xét
49

Giờ thread comment muốn làm có đc k hả admin? Mình làm rồi, cũng hiện số trang rồi nhưng mình chỉnh từ 200 xuống 20, sang comment 21 trở đi nó vẫn ở trang 1 :(
demo: https://testblognpc1.blogspot.com/

Reply Xóa nhận xét
50

Bờ lốc này bỏ hoang hơn 3 năm rồi, hỏi cũng không ai trả lời đâu !!

Reply Xóa nhận xét
51

Bài recent comment win8 ông admin vẫn rep đó ông. Mới đây thôi. Tầm vài tháng gì đó :))

Reply Xóa nhận xét
52

Chắc nửa năm ổng mới vào rep comment 1 lần :))

Reply Xóa nhận xét
53

Có khi thế ông ạ :v

Reply Xóa nhận xét
54

Mặc định 200 cmts trên 1 trang không chỉnh được bạn nhé

Reply Xóa nhận xét
55

May quá, admin rep rồi. À mà a ơi làm cái top bình luận như kia của a làm kiểu gì ạ?

Reply Xóa nhận xét
56

Mình lấy dữ liệu từ feed comments trong vòng 1 tuần rồi dùng js lọc ra id comment nhiều nhất. Code này mình k share

Reply Xóa nhận xét
57

:( Buồn quá. Bên blogthuthuatwin10 admin làm gì đó khi check speed trên gg thì k còn mục tối ưu ảnh và cache, ad có cách nào làm đc như vậy k ạ?

Reply Xóa nhận xét
58

Ảnh thì chịu khó dùng phần mền nén dung lượng. Nói chung không quan trọng lắm đến speed trừ khi blog bạn quá chậm. Cứ code chuẩn theo html5 và css.

Xóa nhận xét
59

Ok ad ạ. Tại e cũng nhờ lũ bạn vào xem speed ok k thì bọn nó bảo nhanh nhưng trên gg thì có 65/100đ. Thanks ad.

Xóa nhận xét
60

Đã áp dụng nhưng không được bác Duy ạ. Tui dùng thread comment trên blog bác chia sẻ luôn đấy, mà nó không hiện :(
http://www.bacsiwindows.com/lien-ket#comments

Reply Xóa nhận xét
61

Dùng cho hệ thống comments cũ thôi. Thread comments thì có loadmore để xem tiếp rồi mà

Reply Xóa nhận xét
62

Oke đã làm được rồi !!
Loadmore bấm vào nó chỉ load được 1 lần (khoảng mười mấy comment), bấm lần nữa nó báo "Không có trang nào khác" mặc dù còn rất nhiều comment phía sau!?

Reply Xóa nhận xét
63

E cũng làm đc. Thôi đợi 200 comment rồi nó mới hiện 1 thể :D

Reply Xóa nhận xét

Đăng nhận xét

Cancel