Thứ Sáu, 15 tháng 7, 2011

Ứng dụng của thủ thuật Random Posts : Tạo widget bài viết ngẫu nhiên từ 1 nhãn nhất định

Đây là một thủ thuật hòan tòan tương tự với thủ thuật tạo các bài viết ngẫu nhiên cho blog, chỉ khác là mở rộng riêng cho từng nhãn. Nếu blog bạn có một đề tài, chuyên mục nào đó nổi bật, bạn có thể tạo 1 widget random các bài viết từ nhãn (chuyên mục đó).
 Thủ thuật này được anh Fandung thực hiện sau đây mình sẽ giới thiệu lại cho các bạn. Mình đã làm thử và thành công rùi
Ví dụ như ở blog của mình, mình có thể tạo một widget hiển thị các bài viết ngẫu nhiên của nhãn "Thủ Thuật Blog", xem hình minh họa bên dưới:
Để thực hiện, bạn chỉ cần tạo 1 widget HTML/Javascript rồi dán code bên dưới vào:

<div id="random-posts"></div>
<script type="text/javascript">

function getRandomPosts(json) {
var maxEntries = 10;
var numPosts = json.feed.openSearch$totalResults.$t;
var indexPosts = new Array();
for (var i = 0; i < numPosts; ++i) {
indexPosts[i] = i;
}
indexPosts.sort(function() {return 0.5 - Math.random()});
if (maxEntries > numPosts) {
maxEntries = numPosts;
}
var container = document.getElementById('random-posts');
var ul = document.createElement('ul');
for (i = 0; i < maxEntries; ++i) {
var entry = json.feed.entry[indexPosts[i]];
var li = document.createElement('li');
var a = document.createElement('a');
a.title = entry.title.$t;
for (var j = 0; j < entry.link.length; ++j) {
if (entry.link[j].rel == 'alternate') {
a.href = entry.link[j].href;
break;
}
}
a.appendChild(document.createTextNode(entry.title.$t));
li.appendChild(a);
ul.appendChild(li);
}
container.appendChild(ul);
}

</script>
<script src="/feeds/posts/summary/-/blog?alt=json-in-script&callback=getRandomPosts&max-results=999999" type="text/javascript"></script>

- Chú ý :


+ var maxEntries = 10; : dòng này để thiết lập số bài viết sẽ hiển thị
+ /feeds/posts/summary/-/blog : thay code màu đỏ bằng nhãn bạn muốn hiển thị (lưu ý, các nhãn có kí tự khỏang trắng phải thay thế kí tự khỏang trắng bằng %20)
(ví dụ nếu là labe Blog Yahoo thì bạn phải đánh là  Blog%20Yahoo)

Bạn có thể xem cách khác tốt hoen TẠI ĐÂY 
Chúc thành công!
Nguồn: Fandung.com

Không có nhận xét nào:

Đăng nhận xét