Advice: CMS (and which?) or do things from scratch?

Discussion in 'Web Design and Development' started by Shunnabunich, Aug 23, 2010.

  1. Shunnabunich macrumors regular


    Oct 30, 2005
    Alberta, Canada
    Hi, folks. I've been working on a website for myself, and am in pre-production right now. I know what I want the site to do, but I'm not sure which tools would best accomplish it, so I'd like to avail myself of your experience.

    The site will primarily focus on my photography, simply because that's what I produce more of than anything else. Secondarily, it'll feature various other kinds of work, like wallpapers, icons, bits of music, etc. The front page will be blog-like, but since I've been pretty bad at keeping up blogs in the past, each entry will directly correspond to the release of a piece of work. (In other words, I'll have to make new content if I want to update my site.) Maybe someday I'll feel it appropriate to relax the format into a regular blog, I guess we'll see.

    Content will be organized into groups: photos will be grouped into "galleries" of related images, and other types of work will stand individually, although I'll still use the same gallery plugin so that (a) it'll be similar or the same in terms of the database structure, and (b) I can display multiple views of each item if desired (i.e. showing a logo in different contexts).

    Here's a mockup of the front page.

    I'll be using Typekit and some degree of jQuery stuff. I was originally going to set my name in Underground Small Caps like the headers, but then I realized it'd make my site more "mine" if I actually, y'know, wrote my name on it. :p

    What the mockup doesn't show:
    • The header photo will be randomly selected from these 16 on the server side.
    • The four icons in the navigation bar will "uncover" upon mouseover, much like the second demo here (but not using that method — if anyone here is good at writing jQuery stuff, I could probably use some help simplifying my code, which literally tells each image where to go for each of the four cases). For those with JavaScript disabled, I'll add text labels underneath the icons, which will only be faded out via JavaScript if it's enabled.
    • I'm going to have a little blue Twitter bird, illustrated by my talented mother, perched on the right end of the nav bar, and show my most recent tweet in a speech balloon upon mouseover.
    • I'm thinking of doing something where, when you mouseover my name, a randomly selected phrase appears under it, such as "makes a mean grilled cheese" or "is a great thing to do on a rainy day".
    • How glad I am that I didn't go with the previously planned layout, which used SuperBGImage and thus slowed pretty much every browser except Safari to a crawl. :D

    So, given the structure that I want to use (content type -> group -> item, blog posts referencing a group or item), what do you think would be best suited to building it? I've created a simple PHP/MySQL website once before, so I could roll my own database if I had to. However, it'd be nice to be able to focus on the website itself instead of its guts. Are there any CMSes that you would recommend, which would work well with how I want my site to work?

    Thanks in advance for any helpful insights you've got!
  2. PoetCSW macrumors newbie

    Oct 26, 2009
    WordPress 3 has plug-ins with most of the features you listed, including random banner photos, Twitter support, and quotes. Normally, I use Drupal for CMS, but WordPress has worked great for a business blog.

    The ability to add your own HTML / JavaScript to a layout has made extending a theme easy. Much easier to deal with WordPress than Drupal for a basic site. The updates don't require taking a site offline, uploading PHP code, etc.

    I'd never waste time reinventing the wheel, now. At least look at the WordPress themes, modules, and plug-ins.

    CNN is using WordPress and the results have been impressive.
  3. numeeja macrumors newbie

    Jun 13, 2010
    It would be straightforward to build that in WordPress. You could probably find a solid GPL theme which could be used as a stating point - your mock up reminds me a little of the Coraline theme which will be hitting the repository soon.
  4. Shunnabunich thread starter macrumors regular


    Oct 30, 2005
    Alberta, Canada
    Thanks for the tips, guys. I've been looking at Wordpress for the past few days, though, and it's starting to seem like it doesn't quite accommodate the underlying organization I'd like to achieve for this site.

    For example, I would want to be able to say that item "Photo 1" is part of group "Parlee Beach", which is a group of type "photo"; and item "Preview 2" is part of group "Chrome Gadget", which is a group of type "icon"; and blog post "Chrome Gadget" is directly related to group "Chrome Gadget" and thus is linked to the page (Everything Else -> Icons#chromegadget) where it can be viewed.

    Types, groups and items would be one hierarchy, and blog posts would be a separate, flat list where each item, in addition to containing its own information such as a title and body text, references one of the groups. (Sorry if I'm sounding picky, but I'd rather have it organized the way it wants to be organized than hack together a bunch of plugins and workarounds on the back end to make it look equivalent on the front end.)

    I just took a crack at putting together a chart (as much for myself as for anyone else) to visualize how it'd be structured. It doesn't include everything (i.e. the links to other sites, which I was pleased to find that Wordpress explicitly supports in a way that would've worked well for me), but the important stuff is there. I think. On the actual site, groups would be displayed as sections of an accordion-style list, with their respective items populating GalleryViews as per the link in my earlier post.

    Are there any CMSes that'd allow me to structure the content how I want (instead of having to accommodate the way it does things), or am I barking up the wrong tree here? Thanks again.
  5. lucidmedia macrumors 6502a

    Oct 13, 2008
    Wellington, New Zealand
    wordpress is a CMS, but it is designed primarily for blogs and does not have the scalability that other CMSs have.

    Either Drupal or Joomla can do what you want. You have a lot more control over your page types and how to reference one piece of content to another.

    If you find these systems too limiting, I would look at CodeIgniter. I find CI better than starting from scratch writing your own CMS.
  6. Shunnabunich thread starter macrumors regular


    Oct 30, 2005
    Alberta, Canada
    Cool, thanks. I'll check those out as soon as I get a chance. :)
  7. Consultant macrumors G5


    Jun 27, 2007

    Wordpress users include:
    New York Times

    Of course, those sites are running on powerful servers.
  8. whatsgooddan macrumors member

    Apr 6, 2009
    NY, USA
    You can write your own CMS in PHP to do those sorts of thing rather easily. However, I see the difficulty in creating the user interface for a person who does not know a lot about directory structure, working with remote files, and database editing.

    With a SQLite database, you can have your site up and running quickly. You will find most open source CMSes out there just aren't exactly what you want. You will have to bend your ways to fit one of the solutions, or create (or hire) somebody to do it for you.

    When you edit the site using the web browser, you create a huge layer of complexity. A solid CMS can be a single PHP file with only a couple of hundred lines of code (including your HTML and CSS). But, you will have to update it very crudely by editing the database and uploading your images, etc to the proper location that corresponds to the data in the database.

    But you may also get away with simply creating a static website. If you can do basic server side includes, you can include the same header/footer in each page with little hassle.

    Then there's programs like Dreamweaver which is really good for updating all your links for you whenever you rename something, etc. That program itself can be considered a CMS, and wonderfully so, since you are outputting basic html and you are using minimal server resources as opposed to Wordpress or Drupal.

    That's all I can think of for now. Good luck. and Hire Me! lol just kidding :rolleyes:
  9. lucidmedia macrumors 6502a

    Oct 13, 2008
    Wellington, New Zealand
    I am not knocking Wordpress for what it is. The Wordpress site itself notes that the three companies you mention above use the software for their BLOG engines... they are not using Wordpress as the underlying CMS for their sites.

    People make Wordpress do amazing things, and back in the day I did quite a bit of hacking with it as well. I *personally* found that I kept running into limitations building intricate data structures with complex types of node referencing... and was left with sites that were difficult to upgrade and would limit the client in the future. It wound up simply being bad business.

    I prefer using CMS systems that are more "abstract" than Wordpress, and can be configured to make content flow in a wide variety of ways. For me, its the right tool for the job when we are implementing a blog, but not for a replacement for a full-on CMS. YMMV.
  10. web_god61, Aug 29, 2010
    Last edited: Mar 31, 2011

    web_god61 macrumors regular


    May 14, 2004
  11. eponym macrumors 6502

    Jul 2, 2010

Share This Page