Ну в расширяемой системе модули будут ит ак, только роль немножко другая. Вообщем идея такова:
Обычно в кмс информация индентифицируется по модулю, которому она принадлежит и эта классификация выражается в урле (сайт.ру/модульновостей/новостьномер6/ или сайт.ру/?module=news&news_id=6). Такой подход считается как бы стандартным и более простым. Но такая система более примитивна и немного избыточна. Я предлагаю выход (хорошо звучит, правда?

). Нужно ввести некую сущность которая будет классифицировать данные вместо модулей. На роль этой сущности на подойдёт поле в таблице. Что за таблица? Как что, мы же решили, что запретим модулям заниматься классификацией, соответственно в бд больше не будет табличек типа module_news_content или module_article_content. Теперь все записи должны хранится в одной таблице(назовём её content) вида id, pid, type, author, published, title, text (надеюсь ненужно говорить, что эта таблица ненормализована и хорошо бы древо документов(поля id, pid) вынести в другую таблицу). Сейчас для нас, ключевое поле - это type. Именно в нём будет хранится информация о типе документа(допустим у нас будут два типа - news_item и article).
Итак, как это будет работать?
Первым делом мы получаем урл вида сайт.ру/новость6 и выдёргиваем оттуда "новость6", далее делаем запрос к нашей таблице content вида select id, type from content where artitcle=mysql_real_escape_string("новость6"); и получаем айди и тип документа. Дальше нам нужно узнать, какой модуль обрабатывает документы типа news_item, для этого делаем запрос к таблице content_types(id, type_name, module_name) - select module_name from content_types where type='news_item'. Отлично, теперь мы знаем кто обработает наш документ - это будет модуль новостей (назовём его newser). Далее дело за малым - подключаем наш модуль (допустим он выполнен ввиде функции) и передаем ему айди документа: newser("id документа с title=новость6"). Newser загружает шаблон, пихает туда нашу новость и выводит пользователю. Ура.
З.Ы. Данный пост не является руководством к действию, а лишь показывает показывает схематичную реализацию идеи.