Display Blogger Posts in Grid View with Thumbnails

Grid View with Thumbnails is a script for self-hosted Blogger blogs which will display blog posts as a thumbnail grid of images in homepage and archive pages. Instead of sending your blog visitors to a page that displays all the posts in full length with a large image which takes up too much space and requires too much scrolling, now we can have a clean page that displays a gallery grid, with thumbnails and post titles, linking back to the source post for that thumbnail.

Let’s take a look at how it will look like in this demo blog.

grid view on blogger posts

If you have a wallpaper or photo blog that would benefit from displaying a thumbnail grid style layout, look no further. Here’s how you can add Grid (gallery) View to Blogger posts.

Adding Grid (Gallery) View to Blogger Posts

Step 1. Log into your Blogger account and go to “Template”, then click on the “Edit HTML” button

blogger template html

Step 2. Click anywhere inside the code area and press the CTRL + F keys to open the search box

Step 3. Type </head> inside the search box and hit Enter to find it.

Step 4. Just above the </head> tag, add the following script and CSS codes:

<script src=’http://code.jquery.com/jquery-1.9.1.js’/>
<b:if cond=’data:blog.pageType != &quot;item&quot;’><b:if cond=’data:blog.pageType != &quot;static_page&quot;’>
<script type=’text/javascript’>//<![CDATA[
function hideLightbox(){for(var a=document.getElementsByTagName(“img”),b=0;b<a.length;++b)a[b].onmouseover=function(){var a=this.parentNode.innerHTML;this.parentNode.innerHTML=a,this.onmouseover=null}}$(document).ready(function(){var a=200,b=170,c=”http://3.bp.blogspot.com/-7Ie-cUwxWB4/U2KIRWgvpNI/AAAAAAAAIfU/Mj6qpg5S2fk/w500-h330-c/no-thumb.png”,d=1;$(“.post-body”).each(function(e,f){var f=$(f),g=$(f).find(“img”).first(),h=f.parent().find(“h3 a”),i=h.attr(“href”),j=h.text();if($(h).remove(),f.empty(),g.attr(“src”)){var k=g.attr(“height”),l=g.attr(“width”),m=$(g).parent();if(f.append(m),d)g.attr({src:g.attr(“src”).replace(/sBd{3,4}/,”w500-h330-c”)}),g.removeAttr(“width”).removeAttr(“height”);else{g.attr({src:g.attr(“src”).replace(/sBd{3,4}/,”s”+a)}),g.removeAttr(“width”);var n=(k/l*a).toFixed(0);g.attr(“height”,n)}}else var g=$(“<img>”).attr(“src”,c),m=$(“<a>”).append(g).appendTo(f);m.attr(“href”,i).css(“clear”,”none”).css(“margin-left”,”0″).css(“margin-right”,”0″).addClass(“postThumbnail”);var o=$(“<div>”).prepend(j).css(“opacity”,”0.9″).css(“filter”,”alpha(opacity=0.9)”).appendTo(m);o.height();o.css(“margin-top”,”-28px”),f.css(“height”,b).css(“overflow”,”hidden”)}),$(“#blog-pager”).css(“clear”,”both”)}),window.addEventListener?window.addEventListener(“load”,hideLightbox,void 0):window.attachEvent(“onload”,hideLightbox);
//]]>
</script>
<style type=’text/css’>
.post {
width:31.3%;
float:left;
display:inline-block;
border-bottom: medium none;
margin: 0 1% 2%;
padding-bottom: 0;
}
h2.date-header,.post-footer {
display: none;
}
h3.post-title, .comments h4,.post-header{margin:0;}
.postThumbnail:hover {text-decoration:none;}
a.postThumbnail div {
text-decoration: none;
color: #fff;
padding:0 5px;
height:24px;
font:bold 12px/25px &quot;Trebuchet MS&quot;,Trebuchet,Verdana,sans-serif;
text-transform: capitalize;
background: rgb(125,126,125);
background: -moz-linear-gradient(top,  rgba(125,126,125,1) 0%, rgba(14,14,14,1) 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(125,126,125,1)), color-stop(100%,rgba(14,14,14,1)));
background: -webkit-linear-gradient(top,  rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%);
background: -o-linear-gradient(top,  rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%);
background: -ms-linear-gradient(top,  rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%);
background: linear-gradient(to bottom,  rgba(125,126,125,1) 0%,rgba(14,14,14,1) 100%);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=&#39;#7d7e7d&#39;,endColorstr=&#39;#0e0e0e&#39;,GradientType=0 );
}
.postThumbnail{width:100%;}
.postThumbnail:hover div {
display: block;
}
.postThumbnail img {
width:100%;
background-color: transparent;
border: medium none;
padding: 0px;
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
border-radius: 12px;
transition: opacity .25s ease-in-out;
-moz-transition: opacity .25s ease-in-out;
-webkit-transition: opacity .25s ease-in-out;
}
.postThumbnail img:hover {
-ms-filter: &quot;progid: DXImageTransform.Microsoft.Alpha(Opacity=70)&quot;;
filter: alpha(opacity=70);
-moz-opacity: 0.7;
-khtml-opacity: 0.7;
opacity: 0.7;
}
</style>
</b:if></b:if>

Note: If there’s too much space below the posts, modify the 170 height value.

Step 5. Click on the “Save template” button to save the changes and View your blog. Now you should have a nice grid view on your Blogger posts. Enjoy!

Related Posts

How to Use Character Entities in CSS, HTML and JavaScript

Sometimes, when using scripts, we must write special characters like accents by using a special set of codes called character entities. However, these don’t always look good…

Add A CSS Animated Share Button on Blogger

I saw this on Paulund, a highly recommended site with a good collection of snippets, i.e. a collection of different codes that develop small utilities, all of…

How to add go to top and go to bottom buttons Using jQuery in Blogger

The Up and Down buttons can be used to navigate to the top and bottom of the page content, especially when on the main page are many…

Customizable Related Posts Widget for Blogger

We already posted a few tutorials on how to add related posts widget with thumbnails in Blogger with summaries or only titles, which can be compiled into…

Where To Find Free Blogger Backgrounds and Textures

Blogger is a fantastic tool for amateur and professional writers that have a passion for publishing online content. Unlike WordPress or hosting companies that require you to…

5 Cool Recent Post Widgets for Blogger

For bloggers that pride themselves on always staying up-to-date with new content, a recent post widget for Blogger can be an invaluable tool. A recent posts widget…

Leave a Reply

Your email address will not be published.