Script tạo danh sách các bài viết liên quan cho Blogger ban đầu được Hoctro phát triển, sau đó được nhân rộng ra với khá nhiều chỉnh sửa. Các bản “bài viết liên quan” hiện nay đều cho phép cấu hình số bài viết hiển thị và số bài viết lấy theo mỗi label. Tuy vậy, trong trường hợp cần liệt kê số lượng lớn các bài viết liên quan thì chưa script nào có khả năng phân trang. Trong bài viết này, tôi sẽ hướng dẫn các bạn làm phân trang cho chúng.
Script này thích hợp với các blog cần liệt kê số lượng lớn các bài viết liên quan (VD như các tập trong 1 bộ truyện tranh). Nếu blog bạn không có nhu cầu này, hãy dùng các bản cũ mà bạn thấy phù hợp.
Cách cài đặt
Mở template của bạn ở chế độ chỉnh sửa HTML (hoặc download file template về để mở), chèn đoạn sau ngay phía trước thẻ </head>:
2 |
<style type="text/css"> |
3 |
.related-posts-navi a{border:1px solid #36c;background:#fff;color:#36c;display:block;float:left;margin-right:10px;padding:2px 5px;text-decoration:none} |
4 |
.related-posts-navi a:hover{background:#36c;color:#fff;text-decoration:none} |
5 |
.related-posts-navi .related-posts-navi-selected{background:#36c;color:#fff} |
Sau đó, tìm trong template của bạn dòng:
1 |
<b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'> |
rồi chèn ngay phía sau đoạn code trong link này: pastebin.com/raw.php?i=jadhiYiU.
Cuối cùng, tìm đến vị trí mà bạn muốn hiển thị các bài viết liên quan trong template và chèn dòng sau:
1 |
<b:include data='post' name='related-posts'/> |
Cách tùy biến
Tiêu đề của mục các bài viết liên quan được mặc định là “Related Posts”. Để sửa nó, các bạn sửa lại chỗ sau (nằm trong đoạn code mà bạn copy từ link pastebin.com/raw.php?i=jadhiYiU):
1 |
<div id="related-posts"> |
3 |
<ul id="related-posts-list"></ul> |
(Nếu không muốn hiển thị, có thể xóa nó đi)
Tham số tùy biến của script được liệt kê ở phần đầu của đoạn code như sau:
1 |
var relatedPostsConfig = { |
5 |
hiddenLabel: ['Label 1', 'Label 2', 'Label 3'] |
Trong đó:
- maxPosts: chỉ số lượng bài viết liên quan (tối đa) được hiển thị
- perLabel: chỉ số lượng bài viết liên quan (tối đa) tính theo mỗi label
- perPage: chỉ số lượng bài viết liên quan được liệt kê trong 1 trang
- hiddenLabel: danh sách các label không hiển thị, phân cách bằng dấu phẩy. hiddenLabel được dùng khi bài viết của bạn có nhiều label, trong đó có 1 số label đặc biệt mà bạn không muốn liệt kê các bài viết liên quan nằm trong đó (VD ‘Thông báo’, ‘Tổng hợp’, …). Khi đó bạn chỉ cần liệt kê các label dạng này vào biến hiddenLabel là xong. Nếu muốn hiển thị tất cả các label (không ẩn label) nào thì khai báo:
Mẹo nhỏ:
Để chỉ hiện các bài viết liên quan của label đầu tiên, hãy cấu hình maxPosts = perLabel
Ngoài ra, tôi cũng tạo 1 số style cơ bản cho các nút chuyển trang, là đoạn CSS được chèn ở trong thẻ head:
1 |
<style type="text/css"> |
2 |
.related-posts-navi a{border:1px solid #36c;background:#fff;color:#36c;display:block;float:left;margin-right:10px;padding:2px 5px;text-decoration:none} |
3 |
.related-posts-navi a:hover{background:#36c;color:#fff;text-decoration:none} |
4 |
.related-posts-navi .related-posts-navi-selected{background:#36c;color:#fff} |
Các nút phân trang này tôi làm theo mẫu của Flickr, nếu các bạn thích style khác, hãy tùy biến CSS theo ý mình.
Cuối cùng, chúc các bạn blogging vui vẻ. Mọi góp ý xin để lại dưới comment
Bài viết liên quan:
- Không có bài viết liên quan.
anh ơi hiện em đang tính làm 1 trang sưu tập truyện tranh bằng wordpress
và em muốn làm như sau
ở home chỉ đăng những bài vd Truyện 1 , truyện 2 , truyện 3 ….
sau đó em viết từng chap ( tập ) riêng cho truyện 1
khi em đăng tập đó lên em không muốn nó hiển thị ở trang Home thì phải làm sao ạ
anh có thể cho em xin yahoo để dễ trao đổi không
Y!m caohung46 có gì pm mình, mình sẵn sàng giúp bạn nếu bạn cần. Bạn muốn không hiển thị bài viết mới ở trang chủ thì bạn có thể chọn một trang khác làm trang chủ là được. Chúc bạn thành công.
Cảm ơn,bài viết rất hay, áp dụng được cho blogspot, wordpress và forum ^^