Nếu áp dụng lại thủ thuật của Anh Võ cho blog của mình cũng như nhiều blog khác thì chẳng nhẽ phải chỉnh lại tên các nhãn sang tiếng Anh hoặc tiếng Việt không dấu hay sao. Mình cũng nghĩ nát óc vẫn chưa chỉnh được code của Anh Võ để tiện ích hoạt động tốt hơn. Chợt nhớ có một bữa ghé thăm trang www.vietutd.blogspot.com có giới thiệu tiện ích Next Posts and Previous Posts. Mình tò mò thử nghiệm xem và nhận thấy tiện ích này hiển thị tốt với nhãn tiếng Việt. Thế là hình thành ngay ý tưởng điều chỉnh tiện ích này để biến nó thành tiện ích Bài viết mới hơn và cũ hơn cùng chủ đề (Newer and Older Related Posts) mà bạn thường thấy ở trang VnExpress.net.
Bạn có thể xem Demo.
Và dưới đây là hình minh họa.
Còn chờ gì nữa nào, chúng ta cùng cài đặt tiện ích này.
Bước 1. Đăng nhập Blogger, vào Design >> Edit HTML, chọn Expand Widget Templates. Nếu bạn đã từng cài đặt các tiện ích Bài viết liên quan kiểu khác thì nên tháo ra khỏi Template.
Đặt đoạn code sau đây vào sau dòng ]]></b:skin>.
<!--Related Posts Styled by Huynh Nhat Ha Start-->
<b:if cond='data:blog.pageType == "item"'>
<style type="text/css">
#related-posts{float:center;text-transform:none;height:100%;min-height:100%;padding-top:5px;}
#related-posts a{color:blue}
#related-posts a:hover{color:brown}
#related-posts ul{list-style-type:none;margin:0 0 0px 0;padding:0;text-decoration:none;font-size:12px;text-color:#000}
#related-posts ul li{display:block;/*background:url("http://img840.imageshack.us/img840/2004/rssqn.png") no-repeat 0 0;*/background:url("http://bit.ly/hjpshO") no-repeat 0 0;list-style-type:none;margin:0;padding-left:21px;line-height:1.5em;border-bottom:1px dotted #ccc}
</style>
</b:if>
<!--Related Posts Styled by Huynh Nhat Ha End-->
<b:if cond='data:blog.pageType == "item"'>
<style type="text/css">
#related-posts{float:center;text-transform:none;height:100%;min-height:100%;padding-top:5px;}
#related-posts a{color:blue}
#related-posts a:hover{color:brown}
#related-posts ul{list-style-type:none;margin:0 0 0px 0;padding:0;text-decoration:none;font-size:12px;text-color:#000}
#related-posts ul li{display:block;/*background:url("http://img840.imageshack.us/img840/2004/rssqn.png") no-repeat 0 0;*/background:url("http://bit.ly/hjpshO") no-repeat 0 0;list-style-type:none;margin:0;padding-left:21px;line-height:1.5em;border-bottom:1px dotted #ccc}
</style>
</b:if>
<!--Related Posts Styled by Huynh Nhat Ha End-->
Bước 2. Tìm một trong các dòng dưới đây:
<div class='post-footer-line post-footer-line-1'/>
<div class='post-footer-line post-footer-line-2'/>
<div class='post-footer-line post-footer-line-3'/>
<div class='post-footer'>
Đặt trước nó bằng đoạn code bên dưới.
<!-- Related Posts Code Styled by Huynh Nhat Ha Start-->
<b:if cond='data:blog.pageType == "item"'>
<script language='javascript'>
// <![CDATA[
var maxnext = 5; // Chỉnh số 5 chỉ số bài viết mới hơn tối đa
var nexttitle = 'Bài viết mới hơn';
var maxprev = 8; // Chỉnh số 8 chỉ số bài viết cũ hơn tối đa
var prevtitle = 'Bài viết cũ hơn';
// ]]>
</script>
<script src='http://hacodeproject.googlecode.com/files/newer-older-related-posts.js' type='text/javascript'/>
<div id='related-posts'>
<div id='next-posts'/>
<b:loop values='data:post.labels' var='label'>
<script language='javascript'>
var vlabel = "<data:label.name/>";
if (relateposturl.indexOf('?relatedlabel=')!=-1)
{nextlabel = (relatedlabel == vlabel) ? 0 : 1;}
if (nextlabel == 0)
{
var vtime = "<data:post.timestampISO8601/>";
vtime = vtime.substring(0,19);
var srcurl = "<data:blog.homepageUrl/>"+ "feeds/posts/default/-/" + vlabel + "?alt=json-in-script&callback=next_results_labels&max-results=999";
var script = document.createElement('script');
script.setAttribute('src', srcurl);
script.setAttribute('id', 'jsonScript');
script.setAttribute('type', 'text/javascript'); document.documentElement.firstChild.appendChild(script);
nextlabel +=1;
}
</script>
</b:loop>
<div id='prev-posts'/>
<b:loop values='data:post.labels' var='label'>
<script language='javascript'>
var vlabel = "<data:label.name/>";
if (relateposturl.indexOf('?relatedlabel=')!=-1)
{prevlabel = (relatedlabel == vlabel) ? 0 : 1;}
if (prevlabel == 0)
{
var vtime = "<data:post.timestampISO8601/>";
vtime = vtime.substr(0,19);
var srcurl = "<data:blog.homepageUrl/>"+ "feeds/posts/default/-/" + vlabel + "?alt=json-in-script&callback=prev_results_labels&max-results=999";
var script = document.createElement('script');
script.setAttribute('src', srcurl);
script.setAttribute('id', 'jsonScript');
script.setAttribute('type', 'text/javascript'); document.documentElement.firstChild.appendChild(script);
prevlabel ++;
}
</script>
</b:loop>
</div>
</b:if>
<!-- Related Posts Code Styled by Huynh Nhat Ha End-->
<b:if cond='data:blog.pageType == "item"'>
<script language='javascript'>
// <![CDATA[
var maxnext = 5; // Chỉnh số 5 chỉ số bài viết mới hơn tối đa
var nexttitle = 'Bài viết mới hơn';
var maxprev = 8; // Chỉnh số 8 chỉ số bài viết cũ hơn tối đa
var prevtitle = 'Bài viết cũ hơn';
// ]]>
</script>
<script src='http://hacodeproject.googlecode.com/files/newer-older-related-posts.js' type='text/javascript'/>
<div id='related-posts'>
<div id='next-posts'/>
<b:loop values='data:post.labels' var='label'>
<script language='javascript'>
var vlabel = "<data:label.name/>";
if (relateposturl.indexOf('?relatedlabel=')!=-1)
{nextlabel = (relatedlabel == vlabel) ? 0 : 1;}
if (nextlabel == 0)
{
var vtime = "<data:post.timestampISO8601/>";
vtime = vtime.substring(0,19);
var srcurl = "<data:blog.homepageUrl/>"+ "feeds/posts/default/-/" + vlabel + "?alt=json-in-script&callback=next_results_labels&max-results=999";
var script = document.createElement('script');
script.setAttribute('src', srcurl);
script.setAttribute('id', 'jsonScript');
script.setAttribute('type', 'text/javascript'); document.documentElement.firstChild.appendChild(script);
nextlabel +=1;
}
</script>
</b:loop>
<div id='prev-posts'/>
<b:loop values='data:post.labels' var='label'>
<script language='javascript'>
var vlabel = "<data:label.name/>";
if (relateposturl.indexOf('?relatedlabel=')!=-1)
{prevlabel = (relatedlabel == vlabel) ? 0 : 1;}
if (prevlabel == 0)
{
var vtime = "<data:post.timestampISO8601/>";
vtime = vtime.substr(0,19);
var srcurl = "<data:blog.homepageUrl/>"+ "feeds/posts/default/-/" + vlabel + "?alt=json-in-script&callback=prev_results_labels&max-results=999";
var script = document.createElement('script');
script.setAttribute('src', srcurl);
script.setAttribute('id', 'jsonScript');
script.setAttribute('type', 'text/javascript'); document.documentElement.firstChild.appendChild(script);
prevlabel ++;
}
</script>
</b:loop>
</div>
</b:if>
<!-- Related Posts Code Styled by Huynh Nhat Ha End-->
Lưu Template là OK. Trong lúc gấp gáp để giải đáp cho bạn Minh Quân nóng lòng chờ đợi tiện ích này cho nên sẽ không tránh thiếu sót, hy vọng có thời gian mình sẽ phát triển thêm tiện ích này.
:55)
No comments:
Post a Comment
Comment của bạn sẽ bị xóa nếu:
- Bạn chèn thẻ liên kết (a tag).
- Nội dung gây khó chịu cho các bạn đọc khác.
- Thắc mắc không liên quan bài viết, hãy post tại Hỏi đáp.
- P/s : Comment chê Admin xấu trai cũng sẽ bị xóa không thương tiếc :D