Membuat Related Post Tanpa Duplikat

Pada tutorial sebelumnya tentang artikel terkait atau related post. Pada tutorial tersebut akan menghasilkan daftar judul artikel yang berkaitan berdasarkan label. Jika kita memberikan dua label sekaligus pada satu posting maka akan menghasilkan judul yang sama pada label yang berbeda di artikel terkait. Hal ini menyebabkan terjadinya duplikat.

Bagaimana cara mengatasi hal tersebut? Berikut cara lain untuk membuat related artikel tanpa duplikat. Silahkan masuk ke edit html di blogspot kamu. Jangan lupa untuk mencentang expand .

Tempatkan kode berikut Sebelum kode </head>

<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>


Cari kode

<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>

kemudian hapus dan ubah menjadi 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:if cond='data:blog.pageType == "item"'> <script expr:src='"/feeds/posts/default/-/" + data:label.name + "?alt=json-in-script&amp;callback=related_results_labels&amp; max-results=10"' type='text/javascript'/>
</b:if>
</b:loop>
</b:if>



Sekarang adalah kode untuk menampilkannya bisa kamu letakkan di bawah posting ataupun di sidebar.
<script type="text/javascript"> removeRelatedDuplicates(); printRelatedLabels(); </script>



Tulisan Terkait :


Best Quote Today:
Keberhasilan adalah kemampuan untuk melewati dan mengatasi dari satu kegagalan ke kegagalan berikutnya tanpa kehilangan semangat. (Winston Chuchill)

Jika Anda menyukai tulisan diatas jangan lupa untuk klik tombol suka untuk berbagi dengan teman facebook Anda. Anda juga bisa membagikan tulisan ini di twitter dan jejaring sosial lainnya. Berbagi itu indah.
 
Indonesian Super League 10/11|Indonesian Best Brand Image|Tanggapan FBC Atas PIPA dan SOPA|Operator Seluler Indonesia|Facebook Application
Guest Book FBC|Barter Link - Sahabat FBC| Profil dan Biodata | Kunci Gitar
Protected by CopyRights & Intelectual Property 2009-2012