e-Commerce with Drupal?

Hey guys. Before I pose my question/situation, let me provide some information about myself. I’m new here, but not (terribly) new to web development. I’ve been teaching myself web design and development for about a year now, working on a few personal projects and working for a friend of mine, along with picking up a couple of freelance jobs.

I started teaching myself to work with CSS and (X)HTML when my neighbor and friend of some ten years, who owns a small outfitting business, approached me about redesigning his website. He knew I was into computers and technology, and his website was in sore need of a new look and optimization for slower connections. So I spent a couple months studying my old HTML 4.0 For Dummies book and scouring W3Schools, piddling with some personal projects, and when I thought I was ready I tackled my neighbor’s site.

It turned out pretty well (at least I think so, and the number of increased leads confirms that something went right), even though I really only replaced the CSS and images, leaving the existing markup mostly untouched. I did eliminate the use of frames (mostly). There is still way too much use of tables, as the original markup is mostly untouched. I’ve finally got the go-ahead to totally re-code the site and bring it up to W3C standards, so that should be fixed soon. But I digress. That’s really just a disclaimer, in case anyone asks to see the site.

Yes, I know, a lot of background . . . but it has a point. This brings us to the present. My neighbor is considering opening a brick-and-mortar store to sell outdoor gear; packs, clothing, canoes, rafts, etc., and if he decides to go ahead with these plans, he wants me to build him another website for this store, complete with an e-commerce setup.

Now, I’m fairly confident in my CSS and XHTML coding skills, though I’ll be the first to admit I’m still learning–this site is a huge help–but my knowledge of content management systems is low to nil. I do learn fast, but he’s looking to hopefully open the store by Thanksgiving. This means I’ve got limited time to build enough knowledge of a given system (and e-commerce in general) and implement said knowledge into a working site.

In the research I’ve done so far, Drupal is what stands out to me. Together with the Ubercart module package, I *think* this will provide the functionality we need. Looking at strictly e-commerce software packages is pretty overwhelming, as there are just so many, and I think many of them are either abhorrently expensive, or lack the other features I’d like to have. Ease of theming is a must, as my knowledge of PHP is minimal at best, though I’ll be learning.

In the future, I’d like to be able to add such things as a blog, product reviews, and possibly a discussion forum. These are not absolutely necessary, but the ability to integrate these seamlessly is a big plus. From what I’ve found, Drupal has this capability, and more. However, I’m still not positive Drupal is the best option. There seems to be a pretty huge learning curve involved in setting up and administrating a Drupal-based site, for one.

/*

TL;DR
*/ ;)

So the questions I pose, I suppose, after all this rambling (for which I hope you can forgive me, I probably should have waited until morning to write this–it’s been a long day), are:

Is Drupal+Ubercart a viable solution for a medium-sized online store?

Can I learn enough of the ins and outs of this software in the required time frame?

If no to either of the above, are there any more applicable solutions you can suggest?

And really, any general advice you can think of would be more than helpful, and greatly appreciated. Right now, this just looks to me like a huge project, though I know once I get into it I’ll adjust to the scope, and it won’t be as bad as it seems. I actually do anticipate the learning experience, but I don’t want to get knee-deep in learning a new system only to learn half-way through the project that it lacks a key feature I need. From what I can see, it doesn’t, but I’ve learned to be cautious, do my research, and above all, seek peer opinion.

Many, many thanks in advance, and apologies for the wall of text (and any grammatical errors, it’s getting late).

That was quite the intro! I think we need to start an introductions thread… *noted!

On to the topic at hand: Drupal.

Drupal, drupal, drupal. Definitely not something you really want to be jumping into without a lot of time to learn the system. It is complex, to say the least. While Drupal may be something that you should consider if you were an experienced programmer who already knew the ins and outs of most CMS’s, I would say it’s a tough starting point for a beginner.

I’m not one to always say, "Just use WordPress", but for a lot of people, it’s a great place to start. With its very simple to understand backend, it’s far easier to grasp exactly what’s going on. There is documentation galore (though, sometimes hard to find), and you can get lots of help in a vast amount of forums (including this one!).

"But WordPress isn’t a CMS, it’s just a blogging platform", I hear you say! Well, while that was probably true at one point, it is so much more now. You can actually see exactly how an online store can work in WordPress in one of Chris’ screencasts on Custom Fields:

Quote:

More than any other single feature, what makes WordPress a CMS (as opposed to just a blogging platform) is custom fields. Custom fields are chunks of data that travel along with posts and pages in key/value pairs. This data can be pulled out and used in your templates as you choose, allowing for all kinds of smart and interesting things to be done.

First of all, I must apologize for taking so long to reply! I’ve been besieged by a lot lately, but that is no excuse. I let this happen a bit too often; forgetting to reply to forum posts or procrastinating in replying.

Thank you for that great post, Doc! I took your advice and looked into WordPress a bit further; I was already planning on using it for a couple of other projects, so needed the knowledge in any event. I"m not one of those guys that comes back with, "But WordPress is no CMS," on the contrary, I think it can be quite capable from what I’ve seen. I really do like it overall, but the eCommerce plugin seems to be lacking in a few areas. On the one hand, it seems fairly robust, scalable and intuitive, but on the other it misses a few important points, such as one-page checkout. While not absolutely necessary, the more I think about it, the more I would like to have this feature. It may well still be possible, though, as there could be things I’m overlooking.

There are other things I must consider for this project as well, though, such as the integration of a discussion forum, newsletter, and blog, which from my discussion with the Boss-man, are going to be needed sooner rather than later in all likelihood. All of this may still be possible with WordPress, but at this point I have to wonder if it may be better to go with the most scalable, best long-term option from the start, to save craving an upgrade later on, when the site threatens to break out of the scale of a WordPress site.

I am a quick and studious learner–it’s one of my few remarkable qualities. I think that if I dive into Drupal, I can learn what I need to. I have downloaded a few options and installed some on my XAMPP setup, but haven’t had a lot of time to really get down and dirty to really investigate features and such. I have yet to play with the UberCart module for Drupal, even though I have it downloaded. I guess I’ll dive in headfirst in my free time, and see what I can see, as I have with WordPress. At worst I’m out a few hours that would have likely been wasted watching the latest movie releases I can’t really afford to waste money on renting anyway. :D

I’m not sure yet which forum software I’d like to use; the included Drupal forum is far too lacking in functionality for my tastes, as I’m used to administrating vBulletin and SMF forums. Depending on the budget, I’ll probably use either IPB or SMF; I still need to investigate software bridges for IPB, but it’s just so darn sexy! Plus it has some definite benefits over SMF in many areas, like moderation features and SEO. And I honestly just want an excuse to play with it. :geek:

Wow, I sort of stream-of-consciousness rambled there, didn’t I? I’ll leave you in peace now. Thank you again, Doc, and sorry for delaying getting back to this for so long.

Tips

What now? I have some ideas for you.

Go explore CodePen!

As a front end designer and developer, you should have an account on CodePen so you can save your snippets, present your ideas, and engage with the rest other front end folk. I'd encourage you to go PRO as well, to unlock the full power of CodePen.

Get the newsletter!

You should sign up for the CSS-Tricks newsletter. It's a clean copy of all the blog posts each week, combined together, right to your inbox. If email isn't your thing, there is an RSS feed, iTunes, and lots of other ways to subscribe.

Listen to ShopTalk!

Subscribe to The Lodge!

The Lodge is a members-only, ad-free video learning area here on CSS-Tricks. Just like the free screencasts, but organized into four large complete series. Membership is also the #1 best way to support CSS-Tricks.

We can do the real footer now.

Site Links

Colophon

CSS-Tricks* is created, written by, and maintained by Chris Coyier. It is built on WordPress, hosted by Media Temple, and the assets are served by MaxCDN. The fonts are Source Sans and Source Code Pro. It is made possible by viewers like you who subscribe to The Lodge and through advertising for products and services I like.