Sabtu, 24 Desember 2011

Cara membuat artikel terkait pada sidebar


Cara Membuat Artikel Terkait Pada Sidebar.Pastinya sobat sudah pada tahu kan kegunaan artikel terkait itu. Yups sebelumnya saya memang sudah share mengenai Cara Membuat Artikel Terkait tapi mungkin ada beberapa dari sobat yang bosen dengan artikel terkait yang biasanya penempatannya selalu di bawah postingan melulu.
Nih sekarang Timon Adiyoso mau share mengenai  Cara Membuat Artikel Terkait Pada Sidebar.
OK langsung meluncur ya gan.... wuusss wuuusss 
Cara Membuat Artikel Terkait Pada Sidebar
1. login blog
2. rancagan >> edit HTML (centang "Expand Template Widget")
3. taruh kode dibawah ini tepat dibawah kode ]]></b:skin>
<script type="text/javascript">
//<![CDATA[
var relatedTitles = new Array();
var relatedTitlesNum = 0;
var relatedUrls = new Array();
function related_results_labels(json) {
for (var i = 0; i < json.feed.entry.length; i++) {
var entry = json.feed.entry[i];
relatedTitles[relatedTitlesNum] = entry.title.$t;
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
relatedUrls[relatedTitlesNum] = entry.link[k].href;
relatedTitlesNum++;
break;
}
}
}
}
function removeRelatedDuplicates() {
var tmp = new Array(0);
var tmp2 = new Array(0);
for(var i = 0; i < relatedUrls.length; i++) {
if(!contains(tmp, relatedUrls[i])) {
tmp.length += 1;
tmp[tmp.length - 1] = relatedUrls[i];
tmp2.length += 1;
tmp2[tmp2.length - 1] = relatedTitles[i];
}
}
relatedTitles = tmp2;
relatedUrls = tmp;
}
function contains(a, e) {
for(var j = 0; j < a.length; j++) if (a[j]==e) return true;
return false;
}
function printRelatedLabels() {
var r = Math.floor((relatedTitles.length - 1) * Math.random());
var i = 0;
document.write('<ul>');
while (i < relatedTitles.length && i < 20) {
document.write('<li><a href="' + relatedUrls[r] + '">' + relatedTitles[r] + '</a></li>');
if (r < relatedTitles.length - 1) {
r++;
} else {
r = 0;
}
i++;
}
document.write('</ul>');
}
//]]>
</script>
4. lalu cari kode yang mirip seperti dibawah ini 
<b:if cond='data:post.labels'>
<data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a><b:if cond='data:label.isLast != "true"'>,</b:if>
</b:loop>
</b:if>
5. lalu ganti kode tersebut menjadi seperti ini 
<b:if cond='data:post.labels'><data:postLabelsLabel/>
<b:loop values='data:post.labels' var='label'>
<a expr:href='data:label.url' rel='tag'><data:label.name/></a><b:if cond='data:label.isLast != &quot;true&quot;'>,</b:if>
<b:if cond='data:blog.pageType == &quot;item&quot;'>
<script expr:src='&quot;/feeds/posts/default/-/&quot; + data:label.name + &quot;?alt=json-in-script&amp;callback=related_results_labels&amp;max-results=15&quot;' type='text/javascript'/>
</b:if>
</b:loop>
</b:if>
NB : kode yang berwarna merah menyatakan banyak artikel terkait yang akan ditampilkan.
6. simpan
7. buka menu tata letak >> tambah gadget (HTML/JavaScript) lalu masukkan kode dibawah ini.
<script type="text/javascript">
removeRelatedDuplicates();
printRelatedLabels();
</script>
8. Beri judul dan simpan.

Nah karena artikel terkait ini masih muncul di postingan dan homepage jadi kita akan mensettingnya agar muncul hanya pada postingan saja.
Caranya...
1. buka menu edit HTML (centang "Expand Template Widget")
2. cari kode yang seperti ini 
<b:widget id='HTML10' locked='false' title='Artikel Terkait Sidebar' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.pageType == "item"'>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>
</b:if>
</b:includable>
</b:widget>
NB : kode yang berwarna biru adalah judul widget artikel terkait tadi yang sobat buat. kode HTML10 abaikan saja sob, karena tergantung pada banyak widget kita. kode yang berwarna merah adalah kode yang harus sobat sisipkan.
3. simpan dan lihat hasilnya.

good LUCK ^_^
Powered by Blogger