Senin, 06 Juni 2011

Related Post atau Link Terkait

Untuk membuat artikel terkait atau related post, kita akan sedikit mengubek-ubek kode HTML template kita. Jadi seperti biasa saya sarankan untuk membackup template sobat terlebih dahulu sebelum membuat artikel terkait ini. Buat blogger baru yang belum mengerti tentang artikel terkait akan saya beri sedikit gambaran, kurang lebihnya seperti ini, dalam setiap postingan tentunya kita akan mengelompokkan postingan kita dalam beberapa kelompok atau yang biasa disebut dengan label (kategori).


Artikel terkait itu biasanya yang saya tau selalu berada dalam 1 kelompok postingan yang di kategorikan, dan umumnya diletakkan di bagian bawah postingan.


Berikut tutorial singkatnya : 
  1. Login ke Blogger
  2. Klik Tata Letak
  3. Klik tab Edit HTML
  4. Kemudian klik Expand Template Widgets 
  5. Cari kode yang seperti ini : 

    <p><data:post.body/></p> 

    atau jika bingung tekan Ctrl + F/F3 kemudian ketikkan kode berikut : 

    <data:post.body/> 
  6. Jika sobat sudah menggunakan read more pada template sobat, maka akan terdapat 2 kode <data:post.body/>
  7. Kemudian letakkan script berikut ini setelah kode <data:post.body/> yang pertama. 
    <b:if cond='data:blog.pageType == "item"'> 
    <div class='similiar'> 

    <div class='widget-content'> 
    <h3>Artikel Terkait</h3> 
    <div id='data2007'/><br/><br/> 
    <script type='text/javascript'> 

    var homeUrl3 = &quot;<data:blog.homepageUrl/>&quot;; 
    var maxNumberOfPostsPerLabel = 4; 
    var maxNumberOfLabels = 7; 

    maxNumberOfPostsPerLabel = 7; 
    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> 

  8. Kemudian Save Template. 

0 komentar:

Posting Komentar