Forum Moderators: open

Message Too Old, No Replies

Data-driven website CMS advice

data-driven CMS

         

Sandman1

10:05 pm on Feb 21, 2010 (gmt 0)

10+ Year Member



Hi. My partner and I are venturing into a new area for our company and I hope you can point us in the right direction.

We are data analysts and know a lot about data and data sets, as well as creating graphs of data. What we want to be able to do is to set up a data-driven website.

[edit: sample URL snipped]

The above page displays various nutritional data on [product], nearly all of it in graphs.

The site appears to have thousands of results pages (for different foods), based on a database. Users cannot modify the content.

If we wanted to create a site of this type (without users being able to modify it), what CMS would you recommend to a web development newbie?

(Up to this point we have just created non-database driven sites in RapidWeaver on the Mac.)

Is there a solution that would enable us to develop the site and create the individual pages in a somewhat automated fashion, such that we would specify the layout of the individual pages and specify which graphs and data should appear where (and set up the underlying database), but in which the CMS would create the individual pages and directories and provide a search mechanism for accessing the individual pages?

What if we wanted to be able to allow users to modify the pages, e.g. write comments? Would that change your recommendation?

I should add that we are not a big company with a lot of funds for this work, but we do expect to hire out some of the work in setting it up. We don't want something we can't maintain reasonably well on our own. We have the technical skill to learn how to use software and we even do coding in our data work (we just haven't done anything on the Internet).

We would appreciate any advice.

[edited by: ergophobe at 7:57 pm (utc) on Feb 22, 2010]
[edit reason] URL removed as per Terms and Conditions [/edit]

ergophobe

8:09 pm on Feb 22, 2010 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



You might need to make something custom, depending on your needs and there are a few ways to do that.

First, though, you might try a few searches like

[CMSname] charts
[CMSname] graphs

And look for one that has sample graphs/charts that visually match what you're trying to do.

I did it briefly for the three most popular CMS

[extensions.joomla.org...]
[drupal.org...]
[wordpress.org...]
[wordpress.org...]

I am not recommending any of these - I've never even heard of any of them before. It's just what shook out of a quick search.

What you can do from there, though, is see if any of those could be modified to suit your needs.

That said, it sounds to me that what you want is generate pages on the fly from raw data. Every CMS is going to require you to enter the data using their interface.

With a CMS, you would create a page for, say, a 123 widget and another for a 456 widget and then you would use that page identifier to pull data and get it into the charts and graphs, but you would need to create that page in the CMS first before you could generate the charts and graphs on the fly.

Does that make sense?

Sandman1

9:00 pm on Feb 22, 2010 (gmt 0)

10+ Year Member



That does help, but I should clarify that we make the charts and graphs ourselves using an automated process, so we wouldn't want a CMS to do that part. (We like the look of our graphs and don't want them to look different.) We would have all the graphs as image files, ready for integration into the site.

We don't need the CMS to create pages on the fly. In fact, we want all the pages for the individual items to exist on the Web so that they can be linked to by other websites.

Our site might have hundreds or even thousands of pages. We would like to have the CMS create the individual pages from database data (numerical data or text as well as images [the graphs]). All the pages (or at least all the pages of each type) would have identical layouts. Only the data and graphs on each page would differ.

Naturally we would also like a user to be able to search the site to find what they are looking for (search box). Also, being able to navigate to pages with perhaps a series of drop-down boxes combined with a text entry field would also be desirable.

I hope I am making the outcome I am aiming for clearer. Would a CMS be able to help me do this? Thank you for your help.

ergophobe

10:10 pm on Feb 22, 2010 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month




>>We would have all the graphs as image files, ready for integration into the site.

Oh, well that's dead simple than. I misunderstood what you wanted. I was thinking you meant you already had your data in some form (database, spreadsheet) and you want to just create pages from there.

I would look at Drupal using the Content Creation Kit (CCK) or MOdX plus Template Variables. Both would probably do it.

Essentially, what both of them allow you to do is create complex data entry forms (so you would enter your normal text, then add height, weight, width, color, specific gravity, conductivity, flash point and any number of other variables you would need).

In Drupal at least, the CCK (Content Construction Kit) has many add-ons, so if you wanted to include, say, 6 graphs and charts that on every page, you would create 6 Image Field upload fields, labelled for the graph in question. I'm not sure how ModX handle image data.

That's the input side. The output side is even easier. It would then require a template that essentially created a layout with "blanks" for the fields/variables that would be filled on the fly with the data you want (so obviously, for a nice layout, you'll need to standardize graph sizes).

It's also dead easy to integrate that with something like Lightbox2 or Thickbox, so that you could have smallish graphs on the page and then if someone clicks on it, it would bring up a slideshow of the graphs.

If you have a few different types of pages (i.e. very different data and data layout), you would create a new content type for each type of page, and each content type would have a different entry form and different display template associated with it.

Sandman1

6:23 pm on Feb 23, 2010 (gmt 0)

10+ Year Member



This is fantastic news! I'm glad there's a way to do this with a CMS. But I do have some related questions:

Is this functionality something that most or all CMS's have?

I ask the above question because I read comparisons of Drupal to other CMS's. Most reviewers say the learning curve on Drupal is steep, though it is very good and flexible. Are there good learning resources available, including on the Content Creation Kit? Will this work require coding? I just want to get a sense of whether this project is one I (as someone who is fairly computer-savvy but who hasn't written much code other than HTML) could complete myself without a great deal of frustration.

Is setting up the database side complicated? We would have our information in a spreadsheet, but I assume we would have to transfer it to a database such as MySQL.

If we were to hire out the development, what might be a ballpark range on the cost for a basic site of this type?

Thank you!

ergophobe

11:31 pm on Feb 23, 2010 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



No, this is why I mentioned Drupal + CCK and ModX plus template variables. I'm sure there are others that have similar functionality, but I don't know anything that comes close to Drupal + CCK + Views off the shelf.

>>learning curve on Drupal is steep

I don't think it's *that* steep. I look at it this way. Drupal is a harder to use if you want to build something simple, but a lot simpler if you want to do something hard.

That's because you can do things with Drupal without hacking that you can't do with other CMS (in my limited experience).

>> Are there good learning resources available

Yes. Where to start. Frankly, I think some of the print books are just a lot easier than getting it on the web.

There are many basic books. When you're ready to move beyond the basics and get into the underlying code, I think Vandyk's Pro Drupal Development is the best shortcut to productivity there is. But that's just me.

CCK is not that complicated. *Views* are and there is now a whole book on Views.

>>Will this work require coding?

Mmmmm.... I would say no, but that depends on your definition. It will require some advanced theming. This is pretty easy and you can get a lot of help from the Contemplate module in terms of figuring out which variables to plug where, but it's not like you need to be a programmer.

>>Is setting up the database side complicated?

It's essentially automated

>> our information in a spreadsheet

Now that will be tricky. You'll need to some coding to put this into the DB. Another alternative is simply to have it done on Amazon Mechanical Turk.

>>ballpark range on the cost

No idea. The reason I know what I know about Drupal is because I'm too cheap to hire it out.

damon_cool

7:19 pm on Mar 4, 2010 (gmt 0)

10+ Year Member



I will second the vote for Drupal. Powerful and flexible.