If I Was Going To Write A CMS...

Hooks for *everything* that can change stuff

OOP API - Doesn't need to create new tables for new content types - Doesn't require writing SQL to add new content types - Revision controlled content gets temp mirroed storage in main node tables, for easy querying

Revision controlled content

Easy to write plugins

Nice forms API like Drupal

Admin interface *OR* admin via the regular website

Flexible publishing - - public from x until y - public from x - published on - published only to certain users - published only to certain users until…

Commenting, commenting with approval by admin.

Use modules

Blogs with easily insertable: pictures, videos, links, etc.

Integrated support ticket system

Integrated customer tracking system, linked to support tickets

Native UTF-8 support

PHP based templates, but with a configurable $this→_($out) method to print values (which auto-escapes form values, etc.)

print($this->_('output'));
print($this->_input_text('name', $value)); 
print($this->_input_textarea('name', $value));
*OR*
{textarea name=my_name value=$value}      make more sense to do:   <textarea name="my_name" value="{$value|htmlspecialchars}" />
{$value}
cms.txt · Last modified: 2013/01/21 12:44 (external edit)