For those of you who ask...When you make your own web page, I’m sure you’re ready to describe your subject in some detail. People are ready to type text and add pictures. Most people aren’t ready to write program code.
When you make a web page, every page has some HTML programming. Then there are all the other programming languages you need for the fancy stuff. The advantage to writing all this software is you control every aspect of your page. The disadvantage is that you have to write and maintain all of this programming code. So, how do you add all that programming to a web page?
The solution to this dilemma is Content Management Systems (CMS). These essentially help write the web page programming for you.
Content Management System ComparisonOver the years, nearly every programmer has written their own version of a Content Management System. I know I did. It simply makes your life easier. There are literally thousands of them though.
If you created a function that took you a month to perfect, wouldn’t you want to use it often? Of course you would! Do you want to copy pages of code, or just call a simple function, with a variable or two? I'm sure most people would like the simplest solution possible.
HTML is the foundation of every web page. The problem is, you can’t call functions with variables with HTML. You need PHP for that. If you want to store variables that are easy for an end user to change, you need database programming for that. This can go on for awhile, but illustrates the advantage of having a good Content Management System do all that HTML Programming for you.
With thousands of CMS solutions out there, which one is best? You want something that works on most servers, so you can move your web site around without losing all your work. Most servers run Apache, PHP and MySQL. Some of the better Content Management systems are written by a community of users in an Open Source environment.
So, what does Open Source mean exactly? Proprietary software code is only available to the vendor who writes it. Open Source means everyone has access to the code. How does this affect us?
- Only Company sees code
- Bugs may lay dormant until a hacker gets the code and finds a bug to exploit
- Support from company
- Usually involves installation issues, some support on usage and coding
- Costs Money
- Initial programs cost
Open Source CMS
- Everybody sees the code
- Everybody can read the code and make suggestions to the Maintainer
- Support from other users
- Support depends on if you're doing normal things other Users have tried or not
- Most things are free
- A few really labor intensive modules may cost
Another advantage of Open Source is that everyone can contribute. Each programmer has their own forte. This way, many people contribute their best work and keep everything working with updates etc. Open Source is usually more secure because everybody has access and constantly looks for and fixes the problems. The main contenders in this arena are Drupal, and WordPress.
DrupalDrupal is one of the older CMS solutions and has the largest following. It tends to cater to the Developers of the Web world, but still easy to make a web site.
The permission structure allows an almost infinite combination of permissions. Users can be trusted for some roles and not others, while less trusted Users can still manage their own little worlds.
The installation is pretty quick and fairly easy. Drupal is my choice of the top content management systems.
WordPressWordPress also has a large following. It tends to cater to the Designers of the Web world. It's easy to make a web page with this CMS.
Security is designed for a small number of trusted people.
Claims on their front page to have a 5 minute installation, it is pretty quick.
Drupal Content Management SystemGetting started with Drupal is fairly simple. All you need before you get started is Web Hosting. If you don't have that yet, you can get Web Hosting here.
The BuildAModule video series runs you through Drupal tutorials in a methodical, logical way.
Most of the installation procedures can be found at http://drupal.org/documentation/install/beginners. This procedure may vary slightly depending on your server. The following is a brief synopsis of the process.
- Create a Database
- You should be able to create a database using your ISP's Control Panel. Then, you need to decide 3 things. The Database name (short single word name of your site). Username (your site administrator name). Password (choose wisely and remember it).
- Get Drupal Core
- This is the basic building blocks for a simple web site. You can download it at Drupal.org/start. This should give you several options for installing. Essentially, you are creating the Drupal directory structure with the Core elements.
- Build settings.php file
- Go to the /sites/default directory and copy the default.settings.php to settings.php then change permissions to 666.
- Run installation script
- Using your browser, go to your website. If everything is set up correctly, the script should start automatically.