Content Management System

Jeff dont_bug_me at
Thu Mar 30 01:23:16 CEST 2006

Water Cooler v2 wrote:
> I know what it is, and yet the knowledge of what a CMS is, is so vague
> that I find myself asking this question every now and then. I've
> googled and read the resources too. However, the knowledge is still not
> clear. It is so vague.
> Me: Just what is a content management system?

There's many different CMS sytems out there. How they work vary widely. 
But basically it's about making the site maintainable. Creating pages ad 
hoc on your desktop can lead to variations in a website depending on 
when and who made that page. That can cause problems as a site expands.

Let's talk about web based.

Common and necesary features are:

1) A Page Manager that shows you the site structure and lets you add 
edit or move pages about the site. Since this is stored in an online 
database, everyone who needs to edit the site will have the same data. 
That's an advantage over having this on your desktop where syncing the 
data is necesary.

2) A page editor. The idea here is to seperate the content from the 
presentation. Typically the content will be plugged into a template(s) 
that conforms to your site so that all pages will have the same look and 
feel. If you need to make a change sitewide, changing the template(s) 
will do that,other than making changes one page at a time.

What you want is to seperate content from presentation. You want your 
pages to be reasonable HTML instead of what an inexperienced (or even 
experienced) might create on their own.

3) Navigation. CMS should be able to update your navigation as you add 
pages, or move them.

4) Controlling access to editing and making navigation changes. This can 
be by directory, subdirectory or even page. I usually see the first two, 
sometimes an editor will need to to have access to different sections of 
the site, but not to the whole site. Sometimes this will need to be 
reviewed by an administrator. Every site tends to have differing needs.

5)Ability to upload PDF's, word docs, etc... and link them into your 
site. Usually you will want to do this online, rather than having to FTP 
content up, typically you don't want CMS users to even have to know 
about FTP.

   So you want your CMS to be easy for the html illiterate to use, you 
want to be able to make sitewide changes easily, you want your 
navigation to automatically update and you want to be able to control 
access and if necesaary review changes.
> Myself: A place where content can be stored.

Online in a structured place, this usually involves a database in some 
way. How that all works should be something you don't need to know or 
worry about.
> Me: OK. So, then what's a file system?
> Myself: That's not web-based. File-Systems are desktop-based.

   Everything is file based, even database tables.


> Me: You can have a file-system on a common network server. I can even
> have a network server and give remote access to people over a VPN. I
> can host content on a terminal server, I can give them VNC clients, or
> an RDP client, and let them browse what they want to.
> Myself: How will they know "where" to find what?
> Me: Come again?
> Myself: With all those avenues you mentioned, you won't publish
> content. There will not be a taxonomy. You will just be dumping files
> on another remote server. How will the users "find" what they want?
> So, is a CMS all about:
> 1. Taxonomy
> 2. Publishing content in a Web based format
> Me: What about binary objects that cannot be published in HTML?
> Myself: Yeah! What about them, dude? Use your head. What about them?
> Heard of a hyperlink? Heard of HTTP? FTP? No?
> Me: OK. I get it. But...I *still* don't get it, man. Why did we need
> this? More importantly, where are the boundaries? I believe CMS also
> lets users edit and publish content on-the-fly.
> So, again, where are the boundaries? What about non-public content?
> What about access rights? Do you have seperate users on CMS's having
> their seperate folders as well, where they could put their own private
> content? Or, is the idea behind CMS about "sharing" and so they put
> only that which they need to share and not the private stuff.
> Do CMS's also allow access rights or authorization levels *per*
> resource/file/unit of content that is uploaded on to them? Or, are they
> role-based - e.g all users of this group will be able to access all
> files, and users of that group will have read-only access to this
> website.

More information about the Python-list mailing list