Webomator: Bradley W. Schenck's blog
Bradley W. Schenck's books Webomator Blog Topics Archives Retro Sci Fi
Search retro robot art
Subscribe RSS retro future Bradley W. Schenck at Facebook Bradley W. Schenck at Goodreads Bradley W. Schenck on Twitter Bradley W. Schenck at DeviantArt Bradley W. Schenck Also by Bradley W. Schenck I play games.
The Retropolis Multi-POD Web Site, Part 2: The Tools

Filed under Print On Demand, Web Development

A couple of weeks ago I posted the first in a series of articles about my experiences in putting together a single web site that combines products from several different print-on-demand companies. For a better idea of what I was trying to do, and what I felt the design priorities were, you should have a look at that article.

You’re back? Okay then.

In order to get the basic function of the site working, I used three different solutions from three different sources. I’ll be writing about each of them in detail as we go. For today, let’s start with an overview of those three solutions.

They are CPShop, for Cafepress content; the Zazzle Store Builder (ZSB) for Zazzle content; and myPFStore, for Printfection content. Here’s a basic description of their features.



Any Cafepress shop, or any combination of Cafepress Shops. Incoming content can be filtered by name, product type, or other parameters.


Provides a simple text menu of "StoreIDs" (sections/categories) which are defined in CPShop admin. This can be disabled and replaced with fully customized navigation.

Pagination: Yes.

Many opportunities for customization, including:

1. Template(s): The CPShop installation can use a single HTML template, separate templates for sections and products, or unique templates for each section and the products within that section; or any combination of these, defined individually by StoreIDs.

2. Text replacement for Cafepress content and/or images. (This is pretty flexible, and where it doesn’t do what’s wanted there is an after market extension that performs even more replacements.)

3. "Hooks", which are special tags in a CPShop template. Hooks allow you to place a tag in your template that loads custom content when certain conditions are met in the current page. These conditions include Product Number, Section Number, StoreID, and other parameters.

4. Other tags can load specific content into a template; these include product names and product descriptions. Not all tags work in every kind of page, though.

5. Meta Tags: Can be the same throughout the shop (not a good idea), can be varied by using multiple templates, or can be varied using the CPShop tags described in #4 – note, though, that not all CPShop tags work on all kinds of pages.

Affiliate Sales:

If you’re building an affiliate site you can add your own affiliate ID to the sales links. Optionally, you can accept incoming affiliate IDs so that others can make an affiliate commission on your sales.

Price and License:

$19.77; unlimited license allows you to install CPShop in as many shops and on as many domains as you like.


As needed to adapt to changes at Cafepress. Usually there’s a very short delay between a problem and its solution.


Perl. Can also be used within a PHP page, which opens other possibilities for customization.


CPshop is the oldest and most mature of these scripts. For that reason it has the widest variety of features and, in general, good and timely support from the author and from other users.

Zazzle Store Builder


Any Zazzle store or store section; Zazzle Marketplace (filtered by keywords). ZSB only displays product thumbnail pages – when shoppers click on a thumbnail they’re sent to the product page on the Zazzle site.


Not provided in output; must be added in your template(s). A ZSB page is displaying a product feed, so it doesn’t "know" anything about your custom site’s structure the way the other scripts do.


Yes. In fact, pagination of ZSB pages is more consistent and reliable than in Zazzle store pages.


Uses a separate HTML template for each "section" you create. This is flexible, but it can mean you’re going to need a bunch of templates. Each of these can include external files, though: so changing the site’s framing HTML can still be a matter of changing just a couple of files. Because the Zazzle Store Builder is written in PHP, it can be further modified if you’re fluent in PHP.

Affiliate Sales:

Uses your own affiliate ID to give you commissions on your ZSB sales.

Price and License:

Free, with an unlimited license.






ZSB is only about a year old as I write this. Its most interesting feature is that it loads in feeds of products rather than reading and analyzing the contents of the source store(s). As written it has very little in the way of other features, but it’s expandable given a knowledge of PHP. Of course, it’s a free product. In my book, the fact that your custom store doesn’t host the actual product pages is a major problem with ZSB.



Any one Printfection store.


In its "Basic" mode, myPFstore creates an exact duplicate of the Printfection Store, simply changing all links to point to the pages at your own domain. (For reasons having to do with SEO and duplicate content I don’t recommend Basic mode.) In its "Advanced" mode, the navigation and site design can be completely replaced, with some limitations (though in fact those limitations probably affect very few people).

Pagination: No.
Customization: (In Advanced mode)

1. All CSS from Printfection and from the source store can be replaced. In “Advanced” mode, custom HTML can replace the HTML used by the source store.

2. However… even in Advanced mode a single template is used and some meta tags (and other content) will be the same throughout the store unless you do some major customization. Because it’s written in PHP it’s possible to modify myPFStore in major, fundamental ways if you’re fluent in PHP and Javascript.

3. Text replacement (and image replacement) of Printfection content is possible through a provided include file.

Affiliate Sales:

Not supported because Printfection has no affiliate sales program.

Price and License:

$40; may be used any number of times within a single domain (additional domains will require additional licenses).


Emergency updates are pretty rapid, judging by a single incident.




I spent (by far) the most time wrestling with the myPFStore installation – that’s because I wanted it to do more with it than it was meant to do. So although I had to work at it, I eventually came to love what I was able to get out of the system – and I’ll probably try to retrofit my ZSB installation to use some of what I learned.

As I write this, though, Printfection has another solution that might work for some people – they’ll now remap your Printfection store to your own domain – and if you also use their "MyBrand" service there will be almost no reference to Printfection in the store that now, for all intents and purposes, is located at your own web site.

This wouldn’t have been a good solution for me, since my goal was to create a single web site that combined products from multiple PODs. But it’s probably a great idea for some. I don’t know what this new service means to the future of myPFStore.

I’ll have more to say about each of these when I continue these articles with a description of what I did – and in some cases, how I did it – as I incorporated each of them into a single site.

There were some challenges. If you remember, I wanted each part of the site to be uniform even though the incoming content would vary, and it was also important that in both large ways and small ones the new pages would look unique to the search engines.

But that’s another story- or, in fact, three of them.

2 responses to “The Retropolis Multi-POD Web Site, Part 2: The Tools
Mary Dyson says:
May 24th, 2010 at 6:12 pm

I enjoyed your article on these “on demand” cos. I’m trying to locate a motorcycle aparel driven co that offers new products and more motorcycle related items than just generic T Shirts, caps, hoodies and key rings ect and basic things like these cos offer. Creative things like wallets, eyeglasses, gloves, helmets ect. things motorcyclists really hone into.
Any information you could send our way would be appreciated.

Thank You
Mary Dyson

@Hamsasya says:
November 22nd, 2011 at 2:42 pm

Thank you so much for this post! And for the entire blog, for that matter. Your work is AMAZING!

Leave a Reply

Your email address will not be published. Required fields are marked *

The Webomator Blog is powered by WordPress.
Down in the Basement. Where it Strains Against its Chains and Turns a Gigantic Wheel of Pain, for all Eternity. Muahahahahaha.