zar
12:50 20-03-2003 cms
Кто-нибудь занимался разработкой CMS(Систем управления контентом) на PHP?
Комментарии:
alcoholic
14:00 20-03-2003
что именно интересует? я занимался
zar
14:36 20-03-2003
незнаю, правильно ли я обозвал свою систему, правильно ли сформировал идею, но всё же.

предположим сайт собирается из подключаемых разделов(новостных лент, каталогов, статистики и т.д.).

никак до конца не могу продумать, как построить универсальную систему. чтобы структура страниц разделов не была Header-Footer подобная и не была привязана к какой-то стандартной нарезке.
есть задумка применить макетный подход к созданию структуры. макет представляет собой html шаблон с вставками, указывающими положение динамических областей и места вставки переменных. при добавлении нового раздела к нему привязывается макет.

генерация страницы происходит примерно так: ядро системы, получив параметры, берет макет, выполняет в определенном заданом в макете порядке функции, отвечающие за генерацию контента динамических областей, затем проставляет значения переменных(подразумевается что скрипты присвоят эти значения в ходе работы). имена функций прописываются в макете.

этот метод предпологает, что создавать структуру нового сайта будет человек, знакомый с архитектурой системы, но, как мне кажется, это позволит обеспечить независимость от дизайна и т.п. т.е. один раз настроив и установив структуру сайта, вы можете быть привлечены только для добавления новых разделов.

меня интересует, в чём отрицательные моменты моей структуры и есть ли другие идеи реализации?

отредактировано: 20-03-2003 14:38 - zar

Коза
14:52 20-03-2003
Это для меня??? (;
zar
14:55 20-03-2003
что для тебя?
alcoholic
17:37 21-03-2003
zar
сложно ты, конечно все объяснил. можно сказать, я ничего не понял
обычное дело, отделение дизайна от макета. для каждой страницы контента свои отдельные данные, юлок заголовка страницы, сам текст, блок меню. если оно контекстнозависимое, допблоки, если нужны. или я вопроса не понял?
zar
17:48 21-03-2003
в твоем описании страница разбивается на стандартные куски - шапка, меню и т.д.
я же говорил про пути представить всё это универсально, как бы разбить макет на отдельные области, а частный случай этой области - меню, подблок и т.п.

пример: http://remontauto.ru
там мной применены макеты собираемые на основе стандартных элементов: шапка, 2 полоски ссылок, 2 колонки блоков, центральная часть. все сайты, работающие по этому принципу будут иметь одинаковую структуру.
я же хочу процесс размещения этих элементов на макете тоже сделать универсальным.
alcoholic
18:09 21-03-2003
zar
про универсальность поподробнее пожалуйста
zar
18:19 21-03-2003
универсальность в том, что есть набор модулей, элементов и само ядро технологии. при создании нового сайта делается дизайн, потом на основе шаблонов дизайна делаются макеты с вставками элементов(где будет меню или подблоки и т.п.). всё это делается например так:
<html><head><title><variable name=title /></title></head>
<body><block name=menu order=1 /><br />
<block name=main order=0 /></body></html>

все вставки <variable> и <block> интерпретируются ядром.
alcoholic
18:47 21-03-2003
zar
что-то по объяснениям твоим что блочный, что не блочный вариант одно и тоже.
но если я правильно понимаю, тебе нужно что-то типа парсера шаблонов.
<title>{title}</title>
<body>{menu}<br />{content}......

скрипт или ядро читает файл шаблонов и заменяет его переменными, и потом выводит его.
ядро и дизайн в данном случае независимы друг от друга совершенно, нужен только список переменных ( типа {title}) что выводить.
zar
18:54 21-03-2003
угу.
ладно, о теории говорить трудно, как перейду больше к практике, вернусь к обсуждению. так легче будет сформулировать задуманное.
alcoholic
18:59 21-03-2003
zar
если что, ася - 13163448 ...
zar
19:00 21-03-2003
ок
pakt
02:24 07-06-2003
А чем вас не устраивают уже готовые системы? -) pivot, post-nuke, mamba, xoops... мало что ли?
zar
09:53 07-06-2003
задача такая была поставлена . да и самому было интересно.

в принципе всё о чём я писал уже реализовано в несколько переработаной форме. сильно переработаной . сейчас идёт процесс тестирования.