I had quite an adventure setting up my store yesterday and figured it might be useful to share what I did. I've done HTML and a bit of CSS before but never anything like this so you definitely don't have to be a pro to do it. The code looks scary at first but the more you fiddle with it the more sense it makes (although admittedly there’s still quite a bit of it that makes no sense at all!)
Heres my store to show you what can be done with these guides;
http://www.zazzle.com/SugarVsSpiceBefore you get startedSetup another gallery to be your sandbox (they’re free!)
Make it private; MyZazzle > Store > Store Settings > Basic Information > Store Access; “Make this store private”
If you need to find any code you can use Ctrl+F in Firefox (probably works in other browsers too but I haven’t tried) and be sure to Validate/Preview regularly!
If you don't have your own website to put pictures on grab yourself a free
PhotoBucket account to upload them to.
Ok let’s go…
Background ImageFind this in Appearance > CSS
#mainShell {
width:100%;
background-color:#<z:color name="PageBackground" />;
padding-bottom:40px;
/* add main background image here, if desired:
background-image:url();
*/
}Change to…
#mainShell {
width:100%;
background-color:#<z:color name="PageBackground" />;
padding-bottom:40px;
background-image:url("http://www.yourdomain.com/background.jpg");
background-repeat: no-repeat;
background-position: top;
}I made my background image 1870px × 949px (the same size as the one on the clonewars store, I figured they’d know what they were doing)

If you’d like your background to repeat change
no-repeat to either;
repeat,
repeat-x or
repeat-yCustom HeaderFind this in Appearance > CSS…
#pageMantle {
overflow:hidden;
width:900px;
<z:mantleimage />
} Change to…
#pageMantle {
overflow:hidden;
width:900px;
height:200px;
background-image: url("http://www.yourdomain.com/header.png");
background-repeat: no-repeat;
background-position: top;
} If your new header is taller than 200px just change the height to match.
Remove underline from links and make them boldFind in Appearance > CSS…
a, td a {
color:#<z:color name="MainLink" />;
}
/*.controls a.active, DO WE NEED THIS? */
.navPane a.active {
background-color:#<z:color name="PodBackground" />;
color:#<z:color name="MainText" />;
font-weight:bold;
}Change to…
a, td a {
color:#<z:color name="MainLink" />;
text-decoration:none;
font-weight:bold;
}
/*.controls a.active, DO WE NEED THIS? */
.navPane a.active {
background-color:#<z:color name="PodBackground" />;
color:#<z:color name="MainText" />;
font-weight:bold;
text-decoration:none;
}Add images for product linesYou don't actually need advanced store customization to do this; see this thread >
Shop OrganizationRearrange SidebarEdit Content > XML
Rearranging things in here will change them on the various pages. Eg I changed…
<z:module name="infonavigation" visible="true" />
<z:module name="gallerystatistics" visible="false" />
<z:module name="productsearch" visible="true" target="products" />
<z:module name="featuredcategories" visible="true" target="products" />
<z:module name="productlines" visible="true" target="products" />
<z:module name="producttypes" visible="true" target="products" />
<z:module name="tags" visible="true" target="products" />to…
<z:module name="productlines" visible="true" target="products" />
<z:module name="producttypes" visible="true" target="products" />
<z:module name="productsearch" visible="true" target="products" />
<z:module name="infonavigation" visible="true" />
<z:module name="gallerystatistics" visible="true" />
<z:module name="featuredcategories" visible="true" target="products" />
<z:module name="tags" visible="true" target="products" />If you’d like to hide any sections in the menubar just change
visible="true" to
visible="false"Note that each page has its own code so the list under:
Code:<z:page id="home" title="Home" navigable="true" visible="true" template="maintemplate">
Will change the order/visiblity on the hompage
Code:<z:page id="products" title="Products" navigable="true" visible="true" template="maintemplate">
Will change the order/visiblity on product pages and so on.
So for example I have the tags visibility set to
“true” on my homepage and
“false” on the products page.
Change Dividers on Side menu and Comment WallFind in Appearance > CSS…
.hr {
background-image:url(<z:asseturl type="hr" />);
}Change to…
.hr {
background-image:url("http://www.yourdomain.com/line.png");
}Zazzle will stretch whatever image you give it to fit accordingly. For mine I made a little line graphic 145px wide.
If you’d like to get rid of the line altogether just remove the link;
.hr {
}Custom SidebarSee Ars_Celtica’s fabulous guide
hereAdd HTML section to the beginning of your homepageIn the CSS add this at the top under
<z:csstemplate id="csstemplate" live="true" xmlns:z="urn:zazzle:api">/*-------------------------------------------
| MY BIT
---------------------------------------------*/
.intro {
width:686px;
position:relative;
left:0px;
top:0px;
}
/*-------------------------------------------
| END MY BIT
---------------------------------------------*/In the Appearance > XHTML find:
Code:<div id="group_1"></div>
<div id="group_2" class="contentPane">
<z:placeholder name="contentpane"></z:placeholder>
</div>
<div id="group_3">
and add...
Code:<div id="group_1"></div>
<div id="group_2" class="contentPane">
<div class="intro">
</div>
<z:placeholder name="contentpane"></z:placeholder>
</div>
<div id="group_3">
Then you can put whatever HTML you like in between the intro div tags. Be mindful that its XHTML rather than the regular sort.
As far as I could work out the X stands for “Xtra Annoying” as its super nit-picky about your code!

Once you get the hang of it its not too bad though. Here are some things that tripped me up…
XHTML tips- Don’t use any capital letters in the code
- always end your code blocks so;
<br> =
wrong<br /> =
right!<img src="http://www.yourdomain.com/image.png"> =
wrong<img src="http://www.yourdomain.com/image.png" /> =
right!<a href="http://www.yourdomain.com">Link</a> =
wrong<a href="http://www.yourdomain.com" rel="nofollow">Link</a> =
right!- always nest your tags correctly so;
<strong><h1>Text</strong></h1> =
wrong <strong><h1>Text</h1></strong> =
right!- Some text characters upset the code;
& =
wrong & =
right!More info on XHTML:
http://www.w3schools.com/xhtml/default.aspYou’ll notice that the intro gets added to every page in your store, but fear not…
Adding the Into to *just* the HomepageIf you go over to Edit Content > XML you’ll notice that each page is set to the same template;
Code:<z:page id="home" title="Home" navigable="true" visible="true" template="maintemplate">
Change the Home one to:
Code:<z:page id="home" title="Home" navigable="true" visible="true" template="hometemplate">
Then back to Appearance > XHTML
Copy and paste the entire contents of Layout XHTML below itself, so you have 2 templates.
On the first one change
Code:<z:htmltemplate id="maintemplate" live="true" xmlns:z="urn:zazzle:api" xmlns="urn:zazzle:xhtml">
to…
Code:<z:htmltemplate id="hometemplate" live="true" xmlns:z="urn:zazzle:api" xmlns="urn:zazzle:xhtml">
Remove the divs and any intro text you might have added from the previous step from the 2nd template (maintemplate)
You should be left with the intro on your homepage and nothing on the other pages.
Custom About PageSame setup as the previous guide. Add another template to your XHTML but call this one “
abouttemplate”
Find in Edit Content > XML
Code:<z:page id="about" title="About" navigable="true" visible="true" template="maintemplate">
Change to…
Code:<z:page id="about" title="About" navigable="true" visible="true" template="abouttemplate">
Make sure your abouttemplate has the
<div class="intro"></div> in the right place and add whatever XHTML you’d like (See previous; “Add HTML section to the beginning of your homepage”)
Custom Footer (Added 24/11/09)
In Appearance > Style (CSS) add:
#myfooter {
width:900px;
height:112px;
margin-left:auto;
margin-right:auto;
background-image: url("http://www.yourdomain.com/footer.jpg");
background-repeat: no-repeat;
background-position: top;
}Make the height match whatever your footers height is. Make your image 900px wide to match the bottom of the store
In Appearance > Layout (XHTML) find the following at the bottom of each page you'd like the footer;
</div>
<div class="clearBoth"></div>
</div>
</body>
</html>and add;
<div id="myfooter">
</div>
</div>
<div class="clearBoth"></div>
</div>
</body>
</html>That will put your image at the bottom. Remember you need to add it to every page template you'd like it on... so if you want it on *every* page you'll need it above every </html> (It's a lot easier if your browser has a find function. It's Ctrl+f in Firefox... then just put </html> into the box and it will take you to them all)
If you'd like to then have more information within the footer (like the picture link that I do) just add html within the div tags. So mine looks like;
<div id="myfooter">
<center>
<a href="http://www.SugarVsSpice.com" rel="nofollow" target="_blank">
<img src="http://www.sugarvsspice.com/zazzle/footerlink.png" />
</a>
</center>
</div>
</div>
<div class="clearBoth"></div>
</div>
</body>
</html>In case you're interested:
The
target="_blank" tag makes the browser open a new window (not necessary, but I put it in so the user wouldn't loose my store)
Adding a Bigger Header to the Homepage (or pushing the sidebar down!) 
(Added 24/11/09)
In Appearance > Style (CSS) find your custom header -see "Custom Header" if you haven't added one already;
#pageMantle {
overflow:hidden;
width:900px;
height:200px;
background-image: url("http://www.yourdomain.com/header.png");
background-repeat: no-repeat;
background-position: top;
} And below it add
#welcomeMantle {
overflow:hidden;
width:900px;
height:572px;
margin-left:auto;
margin-right:auto;
background-image: url("http://www.yourdomain.com/welcomeheader.png");
background-repeat: no-repeat;
background-position: top;
}
Having the width at 900 will make it fit onto the rest of the page. You can make the height whatever you'd like (the sidebar and page contents will appear below whatever you set it to.)
Important: You MUST have margin-left and margin-right tags or the new header will stick the left hand side (took me ages and lots of hair pulling to work that one out! No idea why the original pageMantle one doesn't need them.)
Then in Appearance > Layout (XHTML) find the Hometemplate (the one with id="hometemplate" at the begining -See "Adding the Into to *just* the Homepage" if you haven't set this up already)
Change
<div id="pageMantle"> to
<div id="welcomeMantle">That will add your new bigger header to the homepage and push the rest of the page contents (including the sidebar) down.
Moving from your Sandbox to your live galleryOnce you're happy with your layout open 3 notepads (or equivilent simple text editor, not a rich text one like word... that could mess things up) and copy the XHTML, CSS and XML into them. Log into your real gallery and paste them all into the right sections.
Ta-da!