95% of all projects I work on require the following
- A simple admin-interface that allows one user to edit/add/remove predefined contents specified by me. (each content can contain multiple input-fields, wysiwyg, radiobuttons, images etc)
- Possibilities to display one or multiple of these contents on a page. Preferably using a templatinglanguage.
- Some minor helper-stuff, such as pagination, forgotten password etc.
Doing research, I find really complex solutions(wordpress etc), frameworks(django, drupal) and a myraid of superlightweight cms:es that only support static pages(get-simple etc).
Normally I would not recommend Drupal because I’ve had some bad experience with it in the past, but it does solve your problem (CCK & Views). Yes, it’s indeed complex, but you could disable the modules that you do not need and give editors access to what they need.
Btw, Drupal is a CMS. As a framework, it sucks compared to Django.
Edit:
Regarding the complexity: not only it is complex, but your project could possibly grow more and more complex making the whole thing impossible to maintain. You can make it a rule to keep things simple – ask yourself twice before making a decision such as installing a new module because it implements “cool feature X” or “nice to have feature Y”. If your answer is not 100% “yes”, stay away from it 🙂
Edit 2:
WordPress – those themes that mix HTML with SQL queries make it a ’90s platform. I would chose Drupal over WordPress, it has a better design imho and the framework underneath doesn’t make you stupid (unless you are able to understand “the [infamous] loop“)
Edit 3:
If you can create those content types programmatically, my advice is to build some custom CMS on Django. If you need to create them from a web interface, Drupal will get you there in no time.
So: