Unlike wordpress, to display your widgets only in the home page, and not in the post / archieve page or vice versa have always been challenging in blogger as all sidebar bar widgets are linked to all pages in blogger including home page . But be relaxed here I am going to post a hacking code, so that you can select the option which sidebar widget you want to show in blogger homepage and which one in all other blogger post pages.
Add the widget in blogger layout where you want to display in blogger. Now you want to select on which pages of blogger it should be displayed.
1.First step:
Go to "Edit HTML" page.
Mark "Expand Widget Templates"
2 Second step:
Find the code
<b:widget id='HTML3' locked='false' title='Your Title name you gave to your widget' type='HTML'>
The number in red can be any like 1,2,3,4 it depends on your no of widget your are adding but the title to the widget you gave will be same.
So to make the widget code find easily for you find the below word
<b:widget id='HTML
and you will find many codes like these so keep on matchng the title name of widget of them to which you want to show on different pages.
3. Third step: After finding the code of widget you want to display on different pages add the red blue to them as i have shown below.
To display the any Blogger widget only in HomePage
<b:widget id='HTML5' locked='false' title='Widget Title Name' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.url == data:blog.homepageUrl'>
<!-- 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>
To display widget in all posts pages but not in HomePage
<b:widget id='HTML3' locked='false' title='Widget Title Name' 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>
To Display Widget In Archive Pages
<b:widget id='HTML3' locked='false' title='Widget Title Name' type='HTML'>
<b:includable id='main'>
<b:if cond='data:blog.pageType == "archive"'>
<!-- 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>
Demo: Ive used this hack on this site as well as merosandesh and sahityasagar.com