Need a cms for a business site



  • Heya

    I work at a small service business and we desperately need to do something about our website.
    I'm not a web developer, I can code and learn though, know a thing or two about databases and I can deal with html and css for short periods at a time without wanting to punch people.

    The first thing... opening hours... this is a real hassle to change with our current, poorly written, static site.
    i.e. download all html files from the ftp -> find-and-replace all the things -> upload them back and hope I didn't break anything

    I'm thinking of just a simple database table with fields (weekday int, opens time, closes time)
    The times would just be null or something if it's closed that day
    But vacation days would need some special cases, I don't want to have to always change it manually, even though it's just a few times a year cause I might forget to change it in time and then forget to change it back or do it wrong or whatever.

    So maybe there could be a table with dates and those special case open hours and then a little chunk of code that checks that before displaying them on the site.
    But of course, there are these pesky holidays like easter which don't have the same date every year, so I don't know.

    Then there's a product listing (or service listing) with prices. I want them be easily add/removeable and modifiable.
    Also, this info is all in our sales system database so to reduce possibility of human error, I might want to just edit them in there and do a script to push them automatically to the site daily.
    So it would be nice to have a product (id, name, price, etc) table for that stuff, rather than have them handled like blog articles or just plain chunks of text.

    These are the main things I've been doing by hand a lot, by editing html (yeah, I know)., it's stuff I'd like to automate as far as possible.

    There's other content, but that's mostly little articles and stuff that doesn't need any special treatment above that of a traditional cms.

    But the most important part probably, the site needs to look attractive.
    This is where I'm the most out of my element, the visual stuff, might need to hire a pro web designer for that part, but if I did, I wouldn't want him/her to have to fuck with the code or the data.
    That should be clearly separated. Would be pretty cool if the site could be themed just with css for the most part.
    Then again, I don't know what I'm talking about.

    I think there's a question in there somewhere, but mostly I'm looking for some ideas for what tools to use for this.
    Be it a web framework or an existing CMS that is flexible enough or has good plugin support so I can mold it to my needs.
    Proably best to go the existing CMS route since if I tried to write one from scratch it would consume my life and drive me full on insane, it might generate some front page material though.

    I've been tinkering with wordpress a bit, don't know about it though, feel like I'm fighting it's blog oriented nature to make it do what I want.
    Also php makes me sad. Python would be my first choice, though I hear good things about ruby in the web dev world, but I can manage with most languages.

    Any thoughts before I continue my sleep deprived ramblings?

    Thanks in advance.



  • @rothniets said:

    The first thing... opening hours... this is a real hassle to change with our current, poorly written, static site.
    i.e. download all html files from the ftp -> find-and-replace all the things -> upload them back and hope I didn't break anything

    I'm thinking of just a simple database table with fields (weekday int, opens time, closes time)
    The times would just be null or something if it's closed that day
    But vacation days would need some special cases, I don't want to have to always change it manually, even though it's just a few times a year cause I might forget to change it in time and then forget to change it back or do it wrong or whatever.

    So maybe there could be a table with dates and those special case open hours and then a little chunk of code that checks that before displaying them on the site.
    But of course, there are these pesky holidays like easter which don't have the same date every year, so I don't know.
    I was looking for something similar to this a year ago, and thought iCalendar (nothing to do with Apple, though they are mentioned twice in that RFC) was the way to go, however being lazy, I went searching for a database implementation with php but couldn't find anything decent, so didn't bother with it. I may look again soon since I'm revamping the site concerned.





    What it will let you do is say (e.g.):

    1. Open 9-5 Monday to Saturday
    2. Except any day that falls on 25th, 26th December (repeat for other fixed dates)
    3. Except the first week in January (or anything else like nth week in <month(s)>, last Monday in October etc.)
    4. Except 29Mar-1Apr 2013, 18-21Apr 2014, 3-6Apr 2015 (for a few years, and other movable holidays like Ramadan)



  •  Thanks. Gotta love open standards. Looks like there's a lot of implementations and tools that can export to this format.

     I googled 'icalendar python cms' and found something called 'plone' which has an implementation for it, also might be what I'm looking for as it seems to be highly customizable.

    Gonna give it a spin later, anyone have experience with it?



  • @rothniets said:

    Heya

    I work at a small service business and we desperately need to do something about our website.

    I'm not a web developer....

    Any thoughts before I continue my sleep deprived ramblings?

    Yup, a simple one: find people that DO develop websites for a living and invite them to tender.

    You have some idea of what you want (customer download area, service catalogue, searchable product details, etc) but these people should tease out more requirements and offer tried-and-tested solutions to your problem. Trying to do it in-house opens a way to pain, because you're suddenly forced to become one of these web devs at short notice rather than picking up the phone and throwing the problem plus money at someone who knows what they're doing.

    Form a business case containing what you believe to be initial requirements and get some ballpark costs, then bring up the matter with the wallet-holders.



  • There's not really room in the budget right now to hire pro developers. I'm willing to do this for scraps as a learning experience.

    I know I can do this, but of course there are a lot of things I need to learn and since I don't know much about web development I will be using the work of others who do, why I'm looking for a mostly fully functional CMS out of the box, one that I can build those specific features on top of.

     I've found that I am very capable of taking in information when I need it, I mean I did write the system we're using now to manage work orders and invoices starting without the slightest clue about gui design or databases for that matter. In 6 months I had a fully functional product that works better, for us, than any premade solution we used before and the advantage of having it built in house is that I can fix bugs and add features on a whim as they come up.

    Of course it drove me half way insane because of my lack of planning I had to massive re-designs a few times in the process, but I've learned a lot since.

    There's not even that big of a rush anyway. Once we get a functional website with just the essential content management functionality, I'll have all the time in the world to implement those little special features.



  • @rothniets said:

    There's not really room in the budget right now to hire pro developers.

    So the website isn't a priority, it can be shelved until funds are made more available....

    Yeah, I'm being an asshole.

    @rothniets said:

    I'm willing to do this for scraps as a learning experience.

    I know I can do this, but of course there are a lot of things I need to learn and since I don't know much about web development I will be using the work of others who do, why I'm looking for a mostly fully functional CMS out of the box, one that I can build those specific features on top of.

    If you've given the time to proceed as a project that you're willing to undertake, and you can build a website in your given allocated time, then fair play. I just forsee you suddenly becoming the maintainer and the business pressuring you to do stuff that is above your comfort level. Don't take that as a slur upon your abilities: I find the worst way to learn something is when time pressure and lack of other resource forces you into a "sink or swim" situation.

    Anyway, what should help you: Wordpress, with a skin or two, hack around with some CSS... job done.

    http://wpsitebuilding.com/ <-- may help you.

    FWIW, I've done the same thing for a couple of other people, so if you want some guidance hit me up with a PM once you're sorted and I'm happy to brain-dump what I know and did. I'm no expert in it, but I have no issues with sharing what I did in the hope it'll help you hit the ground running.



  •  @Cassidy said:

    So the website isn't a priority, it can be shelved until funds are made more available....

    Yeah, I'm being an asshole.

    Haha

    This all seems a little formal for a company where employees can wear sweatpants to work. 

    It's a small time pc repair shop and the higher ups are the owner, which I pretty much treat as an equal at this point. He has a final say the budget though and he's cheap, really cheap. It can be a good thing though, cause if I was in charge I would throw way too much money at all my problems, so it balances out.

    Business gets a little sluggish over the summer and there's gonna be some downtime, so my thought is I might do something productive for the business during those times since I'm getting paid anyway and a flashy new website might help lure some customers away from the competition (people really like new shiny things).

    @Cassidy said:

    If you've given the time to proceed as a project that you're willing to
    undertake, and you can build a website in your given allocated time,
    then fair play. I just forsee you suddenly becoming the maintainer and
    the business pressuring you to do stuff that is above your comfort
    level. Don't take that as a slur upon your abilities: I find the worst
    way to learn something is when time pressure and lack of other resource
    forces you into a "sink or swim" situation.

     I'm an insane person. The way I learn things is by sinking into a project that's way over my head and juggle many things at a time while getting it finished. Actually it's the only way I can get motivated enough to learn anything more than the bare minimum. If I'm not making something useful I just get bored and do things half minded.

    Maybe not the most effective or easiest way to learn things, but it works for me. Which is a big part of why I want to do this as an opportunity to learn as I've been considering trying some freelance programming on the side, but I don't want to take on foreign clients without knowing what I'm doing.

    Besides, there won't be much pressure. The owner puts trust in me and I always get the time I need and do things well as a result.

     

     

    And thanks for that link. I might give wordpress a second look. It has the advantage of being really widely used an easy to find themes and stuff for. There aren't many pretty themes available for plone and I won't do any better my self, thought it seems like an administrator's wet dream.

    How is the plugin system in wordpress? Would it be relatively easy to do those features I mentioned?

    I'd have to brush up on my php, but that shouldn't be too hard.

     



  • Are you hosting your website in the same network as your sales database?  Then you could use ASP.NET and have your website query the sales database for the catalog;  You could also add a calendar table to your sales database and query that to display open/closed information;

     

     



  •  The sales system is local only and hosted on site, so no.

     I was thinking of just a simple script run locally (i.e. pull the data from the sales db, push it to the web db) and run it daily or something, wouldn't have to be anything special.



  • @rothniets said:

    Haha

    This all seems a little formal for a company where employees can wear sweatpants to work.

    It's a project after all, so makes sense to draw it up as a project. Just sounds like you've got plenty of flexibility.

    @rothniets said:

    Business gets a little sluggish over the summer and there's gonna be some downtime, so my thought is I might do something productive for the business during those times since I'm getting paid anyway and a flashy new website might help lure some customers away from the competition (people really like new shiny things).

    Admirable thinking: a productive waste of time. Before you embark down this route, it may help to draw up some thoughts with the owner, like:

    • who is our target customer? why would they come to us? what do we have on offer?
    • why are those customers going to a competitor and not us? what differentiates us from the competition?
    • what are our competitor's websites like? what is good/bad about those sites? how will ours be any different?
    • how easy will it be for our target customer to locate content of value on our (new) website?

    It sounds like you've had some thoughts on this already, but more internal - you're viewing it from a maintainability end to make content updates easier, you should also think about from the customer-facing end. Not so much the theme and appearance, but who/why/where information is presented. Plus, engaging the company owner early on at least removes the possibility of last-minute changes later!

    @rothniets said:
    I'm an insane person. The way I learn things is by sinking into a project that's way over my head and juggle many things at a time while getting it finished. Actually it's the only way I can get motivated enough to learn anything more than the bare minimum. If I'm not making something useful I just get bored and do things half minded.

    Maybe not the most effective or easiest way to learn things, but it works for me.

    Some people learn better when they're challenged. I don't know the name of this mentality, but the more successful people don't entertain failure as an option when faced with forks in the path - they know they will succeed, they just don't know how, so have incentive to at least try. 

    @rothniets said:

    Which is a big part of why I want to do this as an opportunity to learn as I've been considering trying some freelance programming on the side, but I don't want to take on foreign clients without knowing what I'm doing.

    Besides, there won't be much pressure. The owner puts trust in me and I always get the time I need and do things well as a result.

    A good working relationship... you're on the wrong site!

     @rothniets said:

    And thanks for that link. I might give wordpress a second look. It has the advantage of being really widely used an easy to find themes and stuff for. There aren't many pretty themes available for plone and I won't do any better my self, thought it seems like an administrator's wet dream.

    How is the plugin system in wordpress? Would it be relatively easy to do those features I mentioned?

    I'm not fully conversant in WordPress; I've used Xoops and played with Drupal but I read an article about how most websites fundamentally work as enhanced blogs and that going for the simpler option enhanced with plugins is an easier route than going for the full-blown CMS (like Xoops) and struggling with its complexity. I advised someone to go for Mentallo Gallery when they were doing a photo site, but they opted for WordPress with a gallery plugin and found that easier. The impression I've got is "if it ain't in WordPress, there'll be a plugin for it".

    The abundance of themes and skins, as well as TinyMCE drew me to knocking up a quick proof-of-concept and I was quite stunned at just how simple it was (compared to my Xoops and Drupal experience). There were one or two things that caught me out, but on the whole the learning curve is quite flat and only bumps with manual additions (new theme, plugin, etc) so you tend to remain in your comfort zone quite often.

    In terms of the features you mentioned (now had some time to properly read your OP):

    1. opening times - you want some calendar plugin. I've seen these used for guild sites that are organising raids, or for bands that are publishing gig dates, so I reckon that's do-able. Something that - perhaps - leaves the default style as green background indicating normal opening times, an orange or red class to show restricted hours (click for more details) or red to indicate closed. A bit of CSS here and there ought to do it.
    2. product catalogue - there are a number of eCommerce/cartpress plugins that ought to suit. Again, I've seen these repurposed to show guild profiles or link through to band venues/gig reports.
    3. general content - this is pretty easy. All wordpress screens are either a "page" or "news", where the former tends to be more static (company information) and the latter used for more dynamic updates, possibly with the n most recent shown on the index page (NEW PRODUCT! ZOWIE!).

    More can be found at the wordpress plugins search:

    @rothniets said:

    I'd have to brush up on my php, but that shouldn't be too hard.

    If you want to mess around with WordPress templates, you may find this useful. I don't know much about writing your own plugins or adding widgets, but someone did me a custom widget and it was essentially some small PHP that instantiated a WP class. Again, I'd recommend trawling the plugins to see what's available and look at modifying an existing wheel rather than falling into the trap of reinventing one.



  • If you want to create website for your business and looking for  good CMS than i suggest you to use wordpress. It is one of the best CMS to use. It has userfrindly features and tool that you can easily use for making website. There are plenty of good designed wordpress templates available online you can also use this for making a good website within a few time. 


Log in to reply
 

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.