Thứ Tư, 24 tháng 7, 2013

Tạo “Bài viết liên quan” theo Categories cho Blogger

Tạo “Bài viết liên quan” theo Categories cho Bloggerby: http://namkna.blogspot.con/
Người đọc truy cập blog của bạn đều có mong muốn có mục các bài, tin tức có liên quan đến chủ đề mà bài viết họ vừa đọc xong, chính vì thế thủ thuật tạo bài viết liên quan dưới đây là rất quan trọng đối với blog của bạn.
Mức độ thực hiện tương đối đơn giản không quá khó khăn, các bạn thực hiện từng bước như sau:


» Bắt đầu thủ thuật

1. Đăng nhập vào tài khoản Blogger
2. Vào phần thiết kế (Design)
3. Chọn Chỉnh sửa HTML (Edit HTML)
 
4. Chọn Mở rộng tiện ích. (Expand Widget Templates)

5. Dán đoạn code bên dưới vào sau thẻ  <data:post.body/>
<b:if cond='data:blog.pageType == &quot;item&quot;'>
<div class='similiar'>
<!-- Related Articles by Labels - Take Two -->
<!--
Distributed by bloggecustom.net and modified by JackBook.com to make it easier to use.
1. Now, users don't need to change anything to use this widget. just copy and paste, and done!
2. The current article will also be listed, now it's no more.
-->
<div class='widget-content'>
<h3>Related Posts by Categories</h3>
<div id='data2007'/><br/><br/>
<div id='hoctro'>
Widget by <u><a href='http://namkna.blogspot.com/'>Namkna</a></u> | <u><a href='http://namkna.blogspot.com/2011/02/tao-bai-viet-lien-quan-theo-categories.html' title='Bạn thấy tiện ich này hay, hãy bấm vào đây để xem cách cài đặt vào blog'>Add your blog?</a></u>
</div>
<script type='text/javascript'>
var homeUrl3 = &quot;<data:blog.homepageUrl/>&quot;;
var maxNumberOfPostsPerLabel = 4;
var maxNumberOfLabels = 10;
maxNumberOfPostsPerLabel = 10;
maxNumberOfLabels = 3;
function listEntries10(json) {
var ul = document.createElement(&#39;ul&#39;);
var maxPosts = (json.feed.entry.length &lt;= maxNumberOfPostsPerLabel) ?
json.feed.entry.length : maxNumberOfPostsPerLabel;
for (var i = 0; i &lt; maxPosts; i++) {
var entry = json.feed.entry[i];
var alturl;
for (var k = 0; k &lt; entry.link.length; k++) {
if (entry.link[k].rel == &#39;alternate&#39;) {
alturl = entry.link[k].href;
break;
}
}
var li = document.createElement(&#39;li&#39;);
var a = document.createElement(&#39;a&#39;);
a.href = alturl;
if(a.href!=location.href) {
var txt = document.createTextNode(entry.title.$t);
a.appendChild(txt);
li.appendChild(a);
ul.appendChild(li);
}
}
for (var l = 0; l &lt; json.feed.link.length; l++) {
if (json.feed.link[l].rel == &#39;alternate&#39;) {
var raw = json.feed.link[l].href;
var label = raw.substr(homeUrl3.length+13);
var k;
for (k=0; k&lt;20; k++) label = label.replace(&quot;%20&quot;, &quot; &quot;);
var txt = document.createTextNode(label);
var h = document.createElement(&#39;b&#39;);
h.appendChild(txt);
var div1 = document.createElement(&#39;div&#39;);
div1.appendChild(h);
div1.appendChild(ul);
document.getElementById(&#39;data2007&#39;).appendChild(div1);
}
}
}
function search10(query, label) {
var script = document.createElement(&#39;script&#39;);
script.setAttribute(&#39;src&#39;, query + &#39;feeds/posts/default/-/&#39;
+ label +
&#39;?alt=json-in-script&amp;callback=listEntries10&#39;);
script.setAttribute(&#39;type&#39;, &#39;text/javascript&#39;);
document.documentElement.firstChild.appendChild(script);
}
var labelArray = new Array();
var numLabel = 0;
<b:loop values='data:posts' var='post'>
<b:loop values='data:post.labels' var='label'>
textLabel = &quot;<data:label.name/>&quot;;
var test = 0;
for (var i = 0; i &lt; labelArray.length; i++)
if (labelArray[i] == textLabel) test = 1;
if (test == 0) {
labelArray.push(textLabel);
var maxLabels = (labelArray.length &lt;= maxNumberOfLabels) ?
labelArray.length : maxNumberOfLabels;
if (numLabel &lt; maxLabels) {
search10(homeUrl3, textLabel);
numLabel++;
}
}
</b:loop>
</b:loop>
</script>
</div>
</div>
</b:if>
- Đây là thủ thuật của Hoctro and JackBook.com nhược điểm là chỉ hiển thị tốt với nhãn tiếng anh. Nếu muốn hiển thị tốt với nhãn tiếng việt thi các bạn xem Bài này nha.
Chúc các bạn thành công.

0 nhận xét:

Đăng nhận xét

Popular Posts