Monday, July 18, 2011

Related Posts by Category in Blogger.com


Great hack for blogger.com is to dynamically create at the end of every post a "Related Posts" section like the one on display here. The goal is to have your visitors stick around longer and take more of an interest in your blog.

It's very easy to do, but as with every modification to the template be very carefull.

Go to the Layout Tab and clic on Edit HTML. Then look for this code:

<data:post.body/>

Then immediately after that place this code:

<b:if cond="data:blog.pageType == &quot;item&quot;">

</b:if>
<div class="similiar">

<div class="widget-content">

<h3>
Related Posts by Categories</h3>

<div id="data2007">




<script type="text/javascript">
var homeUrl3 = &quot;<data:blog.homepageUrl/>&quot;;

var maxNumberOfPostsPerLabel = 4;

var maxNumberOfLabels = 10;


maxNumberOfPostsPerLabel = 100;

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>

</div>

</b:if> 

Save and you are all done!

This post from blogger black hat seo dot blogspot dot com

This post copyright is for TheGreenSeo http://TheGreenSeo.blogspot.com/
You are allowed to re publish this post just if you will refer to this post link in your page, Be honest and save writers effort.

1 comment:

  1. Greetings from Finland. This blog is nice to explore, through other countries, people, culture and nature. Come and you look at pictures Teuvo blog and tell all your friends that they too would look Teuvo photos to your country's flag would rise higher than the blog my flag collection. Thank you Teuvo Vehkalahti Finland

    ReplyDelete