I'm wanting to jump into the freelance web design world, but I have a question that I'm having a tough time finding the answer to...maybe you gurus can help me When a client wants to be able to update their own content what's the best thing to do? Should I code out and test a PHP/MySQL WYSIWYG thing on a per client basis depending on what they need, or is there some Dreamweaver-esque, CMS tool out there that can automate this sort of thing for me by picking and choosing certain options? And I'm trying to avoid using something like Joomla, PHP Nuke, or other "full blown" CMSes. That's overkill for what I'm talking about. An example: A client wants a simple 7 page site for their online golf shop, but they want to be able to occasionally update a single page with "latest news" type stuff, or upload a video, etc... Thanks in advance!
You can set up a sort of dead simple CMS by just using includes for any content you want the client to be able to edit. Then create a password-protected adming area with a form that loads/saves that content - and put tinymce on the text box they use to edit. You can even set it up so that when a new copy of the content is saved, the old copy is "backed up" by being renamed.
Most use an off the shelf CMS like the ones that you have mentioned and simply turn off the elements not required (subject to the functionality given in the CMS) and most the time it will be quicker than custom coding. We have created our own lite CMS system for these types of things but it is most likely easier to use an off the shelf component for the WYSIWYG element
I usually set up a database setup for this; An admin backend to make changes to this, as well as the front end which pulls from the database. In the backend I use WYSYWYG that tend to clean up the html code upon submiting, as well as not allowing certain html elements to be used (tables, divs etc) as it could potentially break the page. If this database setup is used, and the site has potentially high traffic, some type of caching mechanism should be used on the content pages (so it isn't pulling the database for every single basically static content page). However, if I must use caching, I (in most cases) will skip the database part and they will actually be editing a specific file. That file is then included into the main content area.