views:

156

answers:

9
+1  Q: 

CMS or Framework?

I'm looking to build a online store. However, the first question, past the idea of the store, is the platform. I've previously worked with Java and PHP and am quite comfortable with PHP. So my first considerations were Drupal or maybe CodeIgniter (which I have heard lots of good things about)

On discussions with friends, they suggested Django. But I have no experience with Python or Django.

So my question is, is CI better or Drupal? And further, if not either of them, is Django better in terms of ease of development and extensibility?

Request you to not make this a php vs python battle as I'm looking for advice here. Thanks

Edit: More information about the project:

The Project is intended to create a web-store for certain products which aren't currently sold online. The store will have high-resolution images of the products and other associated details. A few other special features related to the products will be added on in time so they aren't that important.

Another clarification: I understand that Drupa is a CMS and not a framework per so. The only reason I compared it to CI was due to the base platform - php. Perhaps the better comparison would have been Joomla vs Django (but I'm not sure as I do not know enough about either, yet)

A: 

Have you read and heard about JOOMLA i think its very poweful CMS in php and has a lot of community support as well, In java LifeRay is a good option.

sushil bharwani
And absolutely nothing to do with creating an online store..
halfdan
... and take the first hours of you project's time to just remove any Joomla specific content off of your site
Yanick Rochon
Joomla components tend to be very low quality
aaronasterling
Wow, lots of Joomla hate. First, Joomla has a very mature, stable, and free shopping cart extension that is a great fit for stores that need to do more than sell stuff (blogs, forums, other content, etc. Next, it doesn't take any time at all to remove Joomla content since you don't have to include any sample content on either Joomla or Virtuemart. Last, I would completely disagree with the quality of Joomla components. As with any project that size the quality will run the gamut, but by and large most components in the JED are pretty good.
Brent Friar
A: 

If you are comfortable with a technology, you should go ahead with it. Use newer technologies to learn. Use PHP in your case - JOOMLA . In python Zope can be looked into

pyfunc
+1  A: 

CI and Django are frameworks that help you build a web application from scratch, if you are willing to do this - go ahead and try it. There should be plenty of modules available that allow you to easily extend the framework.

Drupal however is a CMS, so it comes with multiple plugins already installed and is able to manage your content. You'd still need to develop the "store" functionality - payment, listings, etc. - yourself.

halfdan
A: 

I would generally advise to stick with a language you know for important projects, although I like Python as a language much more than PHP, and Django is a nice framework.

Drupal is not only a framwork, but also a CMS. You can build an online store with some modules (Ubercart), so I would recommend to try that and see if the stock solution fits to your needs.

Fabian
It's (Ubercart) nice but not as powerful as a dedicated cart application like Opencart. Opencart seems to be quite powerful and extensible which is something that I am looking for.
AJ
A: 

I suggest you have a look at Drupal's repository of modules -- in particular those in the e-commerce group here: http://drupal.org/project/modules?filters=tid:104&solrsort=sis_project_release_usage%20desc

There's a ton of them that could really help to speed you along on this project.

If you know PHP and have a good grasp of HTML/CSS/JS, you should do OK in Drupal too.

mkoistinen
A: 

Choose Django if you want to learn Python/Django and use them in your future projects. Django is cool and you'll have fun learning Python. And you'll be able to make an informed decision for your next project.

However, if you have a budget/timeframe or just want to make this project out of the door without needing to learn a new framework I'd suggest choosing a tool/language you're familiar with.

Sergey
+4  A: 

Choosing a framework for a project you already know what will be the purpose will only slow your development down. If your project's main goal is to be an online store, then pick your choice among the many projects already implemented for you with payment gateways, shipping options, product management, etc. A framework may offer all that too, but will not be ready-to-use out of the box and you will have to bind everything together yourself. My personal opinion is that frameworks are good candidate when you need an highly customized web application that you will write from scratch, that will not only do e-Commerce but handle other specific business models too.

General purpose CMS such as Drupal, WordPress, etc. are good if you plan to extend your online store to also offer other options (i.g. forums, blogs, multimedia/interactive contents, etc.) If you choose to pick this avenue, I would suggest you download the source code of each CMS you retain and play with it for a while and pick the one you feel the most comfortable with, and which has a good user community. Because there's nothing worst than being stuck with someone else's broken code with no one to help you out.

For e-Commerce solutions, you can find many good projects here. If I may choose one to suggest, a solution that you may consider as it looks simple, it is written in PHP and has good reviews is OpenCart

A good one I have worked with is the Instinct e-Commerce plugin for WordPress. I don't necessarily like WordPress, but that plugin is fairly good and will have you get your online store up and running in no time. The plugin also enable you to code new custom payment gateways fairly easily (just one file to code...)

Yanick Rochon
That is a very good point. I'm in agreement that perhaps reinventing the wheel might not be the right step.
AJ
Similarly, like you I'm not fond of WP, for philosophical reasons and differing PoV with Matt and AutoMattic. I've been looking at Opencart and am quite impressed. I am going to explore it further and see if it is what I need.
AJ
A: 

If the CMS fits you perfectly now and in the future then CMS, otherwise framework. The framework will allow you total liberty for the price of time spent on development

Elzo Valugi
A: 

I'd only use a framework if the requirements can not be engineered into an existing cart CMS. I'd use a CMS over a shopping cart if the commerce aspect was relatively trivial I'm surprised you're not considering an off the shelf cart. Open Cart is pretty extensible, and Trading Eye has a nice CMS component.

sunwukung
You are right. I am considering an existing Cart application. I've been looking at opencart and will delve further into its features and options to determine its suitability for my purposes :)
AJ