I always intend to write about how I build things around WPCandy, but when the time comes it doesn’t always happen. I fully intended to write about the creation and development of the Pros section, but then I didn’t. I started working on the discussion board, which in turn I never wrote about either. Around that time work began on The WPCandy Quarterly, which was only just announced the other day. Today, I’m determined to write about the building of the Quarterly micro-site at wpcandy.com/quarterly before moving on to any other projects.
When planning things out, I knew that I wanted to keep a trend going with the Quarterly that I had started with Pros and the forum: keeping everything on this domain, and simply adding new sections to the site. I’ve been avoiding subdomains and brand new sites for some time, really for the sake of simplicity and because I prefer the way it looks within the site. So I set about creating a micro-site just for The WPCandy Quarterly, which I’ll walk you through in this post.
In this post you can expect a smattering of code snippets, a good deal of me explaining my weird website preferences, and of course some bouncing between functions.php files and functionality plugins.
Planning the addition to the site
I knew the Quarterly would need its own landing page, as well as a specific page for each issue. This way discussions around specific issues and articles could easily be linked up, and it would be simple for anyone to jump back through back issues. At the same time, I knew I would need a shopping cart to manage the billing, shipping, and checkout process.
Each issue of the Quarterly would need a description and issue photos, as well as a listing of the authors and (ideally) the articles that they contributed. So I’ll want to be able to not only associate posts on the site with an issue, but eventually discussions on the forum as well.
Just to be clear, then, in this post we’ll be:
- setting up a new section of the site for the Quarterly and
- setting up basic shopping cart functionality.
Setting up the Quarterly issue pages
The requirements for this section of the site demand — as you might expect — a custom post type. The PHP I’m using is below:
This PHP went into my functionality plugin, since of course I’ll want it to stick around when I switch themes.
Notice that I defined an archive for this post type so I can include a special archive template to display them. This is important, since I’ll be using this template to make the Quarterly section of the site entirely unique.
I’m also enabling the post tags taxonomy, for a reason that I’ll explain in a minute.
With the post type in place, and a quick visit to the Permalinks Settings page on the Dashboard to get the URLs working, I could visit wpcandy.com/quarterly and any specific issue at /quarterly/issue-0x. As you might imagine, though, at the time those pages looked just like any other page on WPCandy, which of course wouldn’t do. I created the archive-wpcandy_issue.php and single-wpcandy_issue.php templates, but of course those were still using the same styles and scripts from the rest of the site.
In order to clear the palette, so to speak, I added a few new lines to my functions.php file. In this case I’m dealing with the presentation layer, and not the functionality, so there’s no reason to resort to a functionality plugin.
This is what I set out to do. If viewing a Quarterly archive or single page:
- remove the core site styles, and any plugin styles that won’t be used,
- remove the core Javascript, ana again those added by plugins that won’t be used,
- add back the styles and (and maybe scripts) specific to the Quarterly.
By doing this, I’m creating a sort of theme-within-a-theme. Sort of. I can now use a simple, smaller, and very specific stylesheet just for the Quarterly section, leaving my main site CSS file untouched.
In order to do that, here’s what I used:
I added this to my theme’s functions file, since it’s specific to the theme I’m currently using.
Now I have a clean slate to work from, which is exactly what I did. I styled the navigation, the issue post type content, and the special section with the list of contributors to a specific issue.
Oh right, the contributors section. Here’s how I did that.
Listing the contributors to an issue
In all likelihood, at some point in the future Quarterly articles will end up on the blog. Not right away, of course, but eventually. So the first thing I did was create draft posts (standard posts, not the issue post type posts) authored by each of the Quarterly contributors. For each of them I also tagged them with a Quarterly issue-specific post tag. I made sure the issue post they belong to also included the same tag.
Then I added the query below to my templates:
This I added to the Quarterly-specific loop, which was called into each of my two new template files so I wouldn’t repeat myself.
And that, along with some CSS, created this:

I now have a simple, elegant way to list the contributors with each issue. It will be easy to link up these article titles to their posts, too, since they’re already querying the drafts themselves from WordPress. With a bit of CSS, I now have a method of displaying issue contributors that I can use and reuse.
Setting up the shopping cart functionality
If I were only in need of a simple digital purchase I likely wouldn’t bother with a full shopping cart setup. Paid Pros accounts (which I lovingly call Sweet Pros) are, after all, simply a PayPal subscription created using a Gravity Forms signup form. However the Quarterly is a physical product, which necessitates a more complete shopping cart experience. Having a shopping cart on the site is also helpful, since it makes the process of adding additional physical products to the site in the future a lot simpler.
I toyed around with just about every e-commerce plugin out there before ultimately deciding on WP e-Commerce. To be honest I was thoroughly impressed by each plugin that I tried out, and my final decision was WP e-Commerce primarily because it has been around for so long.
Before now, my only extended experience with the WP e-Commerce plugin was years ago, around 2008 or so; it wasn’t a very pleasant experience at all. I’m happy to say it’s much better now, and the setup was pretty much seamless.
The Quarterly section of the site is separate from the shop for a few reasons. One, I want to have the flexibility of controlling the URLs, layout, and elements within the Quarterly micro-site. If I knew the Quarterly would be the only physical product I’d ever sell in the store, then perhaps I would have relied on that entirely. But I don’t know that, so the shopping cart (or WPCandy Shoppe) is separate from the Quarterly site.
This separation wasn’t a big deal, since simple shortcodes are available with the WP e-Commerce plugin to add specific purchase buttons to any section of your site. I used these within the pages of the Quarterly site to create a nice transition from micro-site to cart and checkout.

At least, I think it’s pretty slick.
Additional thoughts on WordPress and e-commerce
It will certainly be worthwhile to spend more time surveying e-commerce options and reviewing them more fully in the future, but in the meantime I thought I’d offer up a few thoughts. One comment I have that applies to all of the e-commerce plugins I tried out is this: the initial setup process is quite overwhelming. During my toying process I set up the basic Quarterly sales items and process for each plugin on a testing location. Without exception, each plugin presented me with options I never ended up needing, or didn’t even care about. I realize that WPCandy’s shopping cart needs aren’t as complicated as some, but that made me wish for a simplified setup process even more.
It would be great to see these plugins take more of a “decisions over options” approach. When that isn’t possible, stashing less vital options in an advanced section would lessen the initial impact of a screen full of checkboxes and dropdowns.
Easily the most delightful part of the e-commerce setup, for me, was using BraveNewCode’s Piggy plugin to enable purchase notifications to my phone. The setup was simple, it integrates well, and I love being notified of sales. It was an easy $25 to spend, and I would recommend anyone using an e-commerce plugin (it integrates with a number of them) check it out.
Reflecting on the development process
I’m much happier with the development of this addition to the site than any other addition I’ve done. I approached it intelligently (for me at least) and completed the development in an efficient and future-thinking way. I wish that I had developed Pros in as clean a fashion, and will definitely revisit the methods I used when I launch Pros 2.0.
What do you think? Have you used any of these techniques before, or do you have even better ways of pulling this off? Oh, and while I’m asking questions: have you pre-ordered your copy of the Quarterly yet?

Very nice write up. it’s good to hear how you went about the creation of the quarterly page. I would have thought it to be an additional WordPress install..
Since you used WP e-commerce, I downloaded and checked out the latest version and do agree that the plugin is a LOT better then that last version I tried using..
Thanks Austin; I’m glad it’s worth the trouble writing it up!
Cool write-up, man – always love to hear how people are using WPEC and approaching large side projects like this.
As far as decisions vs. options go – couldn’t agree with you more, and that’s very much on our radar for the 4.0 release
Glad to hear it Justin
This is a good piece of advice for anyone looking to build a brand online. I know I’ve had that desire at different times to start something completely fresh on its own domain, however in the long-run I think this is the best strategy.
WP-ecommerce will definitely be getting a review from me in the near future. Looks promising.
Great point Nancy — thanks for commenting!
Nice man. I always enjoy seeing how you’ve done things around here.
Thanks Pippin!
I’m wondering why WP e-Commerce has such bad rating on wordpress.org site. Any ideas? To be honest that was one of the reasons I haven’t considered using it before.
If I may (I’m one of the lead devs on the project since the 3.8 release) – the ratings are an overall tally of the plugins ratings, over all time. As Ryan and Austin have mentioned, it used to be quite a troubled plugin, hence some very low ratings. As of late (since the 3.8 release, really, perhaps a few releases prior), it’s been quite a great plugin. Some very good ratings in the past year, and some very poor ratings prior mean that it shows as an ‘average’ plugin. Hope that makes sense.
That said, the original developers on the project should be commended for building an e-commerce plugin that worked (albeit with bugs) all the way back at WordPress 1.5.
Sounds reasonable, thanks for explanation. I’ll definitely check it out before next e-commerce project, especially that it’s the only one for which I’ve found plugin for polish payment gateway support.
As Justin said, and I completely agree with him, the plugin used to have a lot of troubles. I used it a couple of times back then and really hated it. I’ve used it a few times in recently weeks and have loved it every time. I’ve also joined the dev team (for some minor updates) and am starting to get into the code. It’s much improved over what it used to be.
Pingback: How Ryan Imel Created The WP Quarterly Page
Oh awesome tutorial.
I was wondering too how you could make your own minisite within your theme.
By the way, while digging to one of your minisites, I found these links are broken:
http://wpcandy.com/pros/with-any-skillhttp://wpcandy.com/pros/anywhere
http://wpcandy.com/at-any-price
Hey Ryan,
I understand that being busy is what stops you from writing up cool stuff like what you’ve came up with in this post
Really nice stuff, and great resource!
I’ve ordered my yearly “Quarterly” subscription, and… waiting! I wonder how it feels being holding it in my hands and enjoying the read in a sunny day!
Nice to see so much WP e-Commerce Plugin love! Thanks for the kudos guys and thank you to Ryan for choosing the WP e-Commerce Plugin and for making such a kick ass publication
Very cool. Definitely relate to this:
Always seems like, no matter what, getting functionality n requires n+1 plugins. Whence it’s easier to strip out the pieces needed from each and add to the theme as a library, or a tightly-scoped plugin.
Heck even I agree with that. We’ve got a few niceties coming in our next major release that will help ease the pain and allow users to tailor the e-Commerce setup experience. I wish I could spill the beans now but I better bite my tongue.
The problem with e-Commerce is that there are so many differing opinions as to what should be default functionality vs what shouldn’t. What you might think is not very important might be critical to another companies business – its crazy and what makes it particularly interesting are the laws in different countries around e-Commerce.
What I can tell you is that the next release of WP e-Commerce Plugin will be a lot more tightly-scoped then ever before. I can’t go into details but its going to be the result of 5+ years of research and its going to make WP e-Commerce easy and way more WordPress-esque then the rest