Thứ Năm, 29 tháng 11, 2012

Bài viết liên Quan gồm danh sách ảnh và bài viết

Trước đây mình có giới thiệu bài Tạo Bài viết liên quan tuy nhiên thủ thuật này có nhược điểm là chỉ hiện hình hoặc danh sách tiêu đề. Thủ thuật Namkna giới thiệu sau đây sẽ khắc phục 2 nhược điểm đó. Thủ thuật này sẽ xuất hiện 2 phần 1 là danh sách bài liên quan có hình ảnh và một đoạn trích và 1 phần nữa là danh sách bài đăng ở dưới. ngoài ra hiện ngày tháng đăng bài khi chỉ chuột vào bài đăng.
Để hiểu rõ hơn các bạn có thể xem hình minh họa bên dưới.
Cách thực hiện như sau:
Bước 1: Các bạn vào Thiết Kế => Chỉnh sửa HTML sau đó dán đoạn Code bên dưới lên trên thẻ </head>
<b:if cond='data:blog.pageType == &quot;item&quot;'>
<script src='http://dl.dropbox.com/u/66256041/lien-quan/namkna-blogspot/related-img-by-namkna-nt.js' type='text/javascript'/>
<style type='text/css'>
#related-posts {float:center;text-transform:none;height:100%;min-height:100%;padding:0;margin:10px 0 5px 0;}
#related-posts h2{margin:0;background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhLsx6nzXUpOmKLJxxc0Q01LdEEqDf9jMEFIqLblIBmYGceQP2bfhuAkM2Htg3XybayCIaNX8saLwMp7fGIrJenLigj1Eg5JkEv_0Mw2gIwbdkF9WFwSd3_x-wFjDuhN6aFH-IliQZYto8/s1600/newslienquan.jpg) no-repeat scroll left 0 transparent;height: 16px;}
#related-posts a:hover {background-color:#d4eaf2}
.lienquan {background: #ddd;height:57px;float: left;padding-left: 1px;width: 173px;margin:1px;overflow:hidden;line-height:1.4em}
.related-posts {margin: 0;padding: 0}
.related-posts ul {margin: 0;padding-top: 5px}
.related-posts ul li {background: url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwAVjnSVZHteOVXdUEEIO0ABRUtApOAEcj1Jh0xjK8sgReYtoSujoRrhfGNmktV6__Zy4CoXHNqQLhQY15lZzD6AtZCcWgAEFbUr76XID6xnlZtn21LkSfZk0XzYqfR60n5xxsTizXQzgD/s1600/list.png) no-repeat top left;list-style-type: none;margin: 0 0 2px 5px;padding: 2px 0 0 18px;word-wrap: break-word}
</style>
<script type='text/javascript'>
//<![CDATA[
var titles=new Array();var titlesNum=0;var urls=new Array();var time=new Array();function related_results_labels(c){for(var b=0;b<c.feed.entry.length;b++){var d=c.feed.entry[b];titles[titlesNum]=d.title.$t;for(var a=0;a<d.link.length;a++){if(d.link[a].rel=="alternate"){urls[titlesNum]=d.link[a].href;time[titlesNum]=d.published.$t;titlesNum++;break}}}}function removeRelatedDuplicates(){var b=new Array(0);var c=new Array(0);e=new Array(0);for(var a=0;a<urls.length;a++){if(!contains(b,urls[a])){b.length+=1;b[b.length-1]=urls[a];c.length+=1;c[c.length-1]=titles[a];e.length+=1;e[e.length-1]=time[a]}}titles=c;urls=b;time=e}function contains(b,d){for(var c=0;c<b.length;c++){if(b[c]==d){return true}}return false}function printRelatedLabels(a){for(var b=0;b<urls.length;b++){if(urls[b]==a){urls.splice(b,1);titles.splice(b,1);time.splice(b,1)}}var c=Math.floor((titles.length-1)*Math.random());var b=0;document.write("<ul>");if(titles.length==0){document.write("<li>Không có bài vi?t liên quan</li>")}else{while(b<titles.length&&b<20&&b<maxresults){document.write('<li><a href="'+urls[c]+'" title="'+time[c].substring(8,10)+"/"+time[c].substring(5,7)+"/"+time[c].substring(0,4)+'">'+titles[c]+"</a></li>");if(c<titles.length-1){c++}else{c=0}b++}}document.write("</ul>");urls.splice(0,urls.length);titles.splice(0,titles.length)};
//]]>
</script>
</b:if>

- Điều trỉnh height và width mình tô màu đỏ ở trên cho phù hợp với Blog của bạn
Lưu Template lại.
Bước 2: Chọn Mở rộng tiện ích mẫu và dán Code sau bên dưới dòng:
<div class='post-footer-line post-footer-line-2'/>
Hoặc
<div class='post-footer-line post-footer-line-1'/>
Code:
<b:if cond='data:blog.pageType == &quot;item&quot;'>
<div id='related-posts'>
<b:loop values='data:post.labels' var='label'>
<script expr:src='&quot;/feeds/posts/default/-/&quot; + data:label.name + &quot;?alt=json-in-script&amp;callback=related_results_labels_thumbs&amp;max-results=9&quot;' type='text/javascript'/>
</b:loop>
<script type='text/javascript'>
var currentposturl=&quot;<data:post.url/>&quot;;
var maxresults=9;
var relatedpoststitle=&quot;&quot;;
removeRelatedDuplicates_thumbs();
printRelatedLabels_thumbs();
</script>
</div>
<div style='margin-bottom:5px;clear:both'/>
<img border='0' src='https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjykmjhPHioJ_n2mc05cNqUGsVwWwqUPqiBVcMkGJNcu904L9WZwQwCreEFjB2xLBcPhwzwyM86vaTYc7CKTHTNF-GctfpHO38xE-p13RY0Kk8Gxx1MUilYD_ZJNlMNfWWn6lw87JCkHrw/s1600/cac-tin-khac-namkna-blogspot-com-ngoctra.jpg'/>
<div class='related-posts'>
<b:loop values='data:post.labels' var='label'>
<script expr:src='&quot;/feeds/posts/default/-/&quot; + data:label.name + &quot;?alt=json-in-script&amp;callback=related_results_labels&quot;' type='text/javascript'/>
</b:loop>
<script type='text/javascript'>var maxresults=12;removeRelatedDuplicates();printRelatedLabels(&#39;<data:post.url/>&#39;);</script>
</div>
<div class='clear'/>
</b:if>

Trong đó các bạn chú ý:
max-results=9&quot là số bài ở dạng thumbnail
var maxresults=12 là số bài ở dạng list.
Các bạn có thể xem hình ngay dưới sẽ thấy rõ hơn.
Chúc các bạn thành công!
*Nguồn namkna

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

Đăng nhận xét