As posted before I am organizing my new company, and I need lots of things I never needed before.
One of those things is a way to create our website. The goal is a website that is both a corporate presence, and a place to publish some technical documents, tutorials, etc, sort of like I do here every once in a while.
Here are some requirements:
Should be simple to install and support.
Should have a customizable look.
Simple to add content (without editing HTML if possible).
Support RSS for news section.
I must understand the code. Less code is better.
Reasonable permission system.
Maintained by someone else.
I don't need it to be popular, or to be incredibly powerful, or to be blog-oriented ( I already have a blog, you are in it ;-), or to be incredibly fast (it's going to be a low-traffic site).
I don't need it to have a forum or a comments mechanism. If necessary, I can add those from somewhere else.
I don't know where I had heard of it, but I vaguely remembered an AJAXy CMS called SkeletonzCMS and that I had kinda liked the demo.
So, let's try that.
It's pretty simple and the docs are pretty detailed on how to do it. No problem.
Put the skeletonz sources in a folder.
Create another folder for your site.
Run a couple scripts.
Copy a couple of files.
Adjust MySQL settings
Really, a 2-minute affair.
What you end with:
Creating The Site Structure
Let's build a mockup company site. This is surely not how the real site will be, but it should be useful.
The default Skeletonz look has a "Menu" at the top of the page, which currently has only Main in it.
Let's add some entries: Main, What we do, Contact.
To manage this, you use Skeletonz' admin interface, which you can access using the "Admin" link at the bottom. I don't really like that link in there, I don't think it looks professional.
This is Not a Wiki
Find a way to remove the "Admin" and "Edit Page" links for regular users, or at least make it so you can't really see them unless you know what you are looking for ;-)
Once you are in the Control Panel, you enter the Menu Manager, and add entries for new internal pages with the names you want.
This is really nice. No reloads in sight, instant application of all changes... really nice.
You will see that the menu entries don't show. Don't worry, nothing is broken. You need to enable the pages you just created.
Click on Edit Page
Go to each page, and click on Page Properties.
Switch each page to Visible.
There, you can also set who can edit each page. Nice. On the Control Panel you can define users, groups and passwords for this.
Now, when you logout, you will see the three entries on the menu.
What we have now:
Adding Some Content
Now, to add some stuff in those pages. Skeletonz has its own internal AJAXy editor, which I am not totally in love with, but it's good enough. You can add links to other pages, images, the usual basic formatting, and many other things.
One of those other things is use plugins. For example, if you insert this text (copied from their site):
[ gb_image=Test, caption=Hello, link=[image=Test me, linkonly]]
You get a link that says Test, and when you click you get an image in a popup, using the Greybox Image plugin, with caption Hello.
Notice that I never tell it what image it should display? That's because the Skeletonz editor will show some icons allowing me to upload the image, or replace it with another, that part is very easy.
Sadly, I have not yet found docs on how the plugins work. For example, if you miss the caption argument, that same line does nothing.
Plugin usage docs are needed. Or I will have to read more code.
For example, there is a mailinglist_manager plugin. I have no idea how it works.
But for simple webpage editing, the included editor is ok.
What we have now^3:
Editing the content:
GoogleSpell... nice :-)
Editing the page:
See how you choose where the internal page link goes to?
Customizing The Look
Of course, in this company we try to keep the display of bones to a minimum, according to legal regulations. So, I need to do something about the look of the site.
What we have now is the default. But in the Skeletonz site, I see the thing is templates. That's good. I like templates!
In fact, it looks pretty easy, even if it uses Cheetah, which is not my favourite python template system ( I am a simple guy. CherryTemplate is enough for me ;-), but I have done some Cheetah because PyDS (my blog tool) uses it.
I am not doing it right now, but I see how it's done, and it's good. In fact, a look at the different sites using Skeletonz shows that the templating is flexible enough.
And it seems that if I remove this:
<div id="bottom"> <?= cms_link_box ?> <br /> <?= cms_status_box ?> </div>
I would lose the too-wikish links, too.
So, how does Skeletonz score ( 1 to 10 ) on my requirements?
Should be simple to install and support: 8
But only because I don't know how much work keeping it running is. Could be a 10, could be a 6.
Should have a customizable look: 8
Just because it will make me learn Cheetah.
Simple to add content (without editing HTML if possible): 7
The editor is ok, but some things are obscure. Add docs, and this will go up.
Support RSS for news section: 9
I must understand the code. Less code is better: 9
I like the code.
The plugin system is very powerful.
Reasonable permission system: 9
Good. There is a problem in staying logged, it seems. Maybe I am doing something wrong?
Maintained by someone else: 10
Yipee! Hurrah for Amir Salihefendic!
Bottom line: I like it.