Помогите организовать структуру сайта?

bobroff

Новичок
Помогите организовать структуру сайта?

Здравствуйте.

Оговорю сразу, я новичок в php. Есть идея и интерес создать сайт, проект не коммерческий, потому сам все изучаю. Книжки и форум читал, возникло несколько вопросов по организации структуры сайта.

Хочу создать сайт по следующему шаблону:



1. В Header и Footer будет отображаться всегда одна и таже информация, не зависимо от страницы.
2. В Main Menu буду разделы сайта (новости, статьи и т.п.).
3. Secondary Menu - подменю выбранного раздела. Изменяется с выбором главного пункта в меню.
4. В Сontent соответственно выводится информация, в зависимости от выбранного пункта меню и подменю.

Все элементы (header, footer и т.п.) хочу реализовать в виде подключаемых блоков.

Мои мысли как это сделать:
1. Можно для каждого элемента меню написать отдельный php файл, и выводить его в зависимости от выбранного элемента меню. Минус этого способа, как я понимаю, что в каждом файле придется описывать одинаковую структуру шаблона страницы, т.к. он един для всего сайта.
2. Можно создать index.php и в "?page=" передавать тип страницы зависимости от выбранного элемента меню. Минус этого способа, как я понимаю, в том, что если сайт разрастется, по довольно сложно будет отследить передаваемые параметры, будет длинное url, повышает вероятность появления ошибок.

Подскажите, как более грамотно реализовать такую структуру сайта.
 

Фанат

oncle terrible
Команда форума
в каждом файле придется описывать одинаковую структуру шаблона страницы
не придется. [m]include[/m]

-~{}~ 03.03.09 23:35:

довольно сложно будет отследить передаваемые параметры
не сложно. каждый скрипт отслеживает свои параметры. индекс - для индекса, новости - для новостей.
 

bobroff

Новичок
Автор оригинала: *****
не придется. [m]include[/m]

Придется же писать в каждом файле, типа этого:
include(header.php);
include(mainmenu.php);
include(secondarymenu.php);
Т.е. по сути, повторяется один и тот же текст. Может можно как-то упростить?
 

Фанат

oncle terrible
Команда форума
и чо? сколько у тебя этих файлов будет, что прям руки отвалятся написать?
 

bobroff

Новичок
Автор оригинала: *****
и чо? сколько у тебя этих файлов будет, что прям руки отвалятся написать?
Конечно руки не отвалятся. Просто я в php пока не очень хорошо разбираюсь, вот и спрашиваю, может есть более элегантное решение.
 

Фанат

oncle terrible
Команда форума
А остальной код тебя не пугает тем, что его надо писать? Почему именно эти две строчки тебя так сильно озаботили?
В каждом скрипте у тебя наверняка встречается по несколько ифов, обращений к базе данных, ПРИНТОВ - десятками. Все эти команды почему не требуют более элегантного решения?

Почему команда, которая выполняет в положенном месте положенную ей функцию, тебя так сильно напрягает?

-~{}~ 04.03.09 12:01:

Все твои проблемы оттого, что ты думаешь, будто главное на сайте - это рюшечки с менюшечками. И пхп придумали для того, чтобы весь этот дизайн появлялся автоматически.
А это не так. Главное на сайте - это код, программная структура. А то, что ты называешь структурой сайта - это мелочь, незначительный кусок архитектуры сайта, о котором и думать не надо.

Структура любого сайта должна быть такая:
- Сайт состоит из скриптов.
- Скрипты разделяются по функциональности. Новости показывает скрипт новостей, форум - скрипт форума, отдельные страницы - скрипт показа отдельных страниц.
- Каждый скрипт состоит из двух частей:
1. Обработка введенных пользователем данных и подготовка на их основе информации к выводу.
2. Собственно вывод.

И все твои меню с субменю начинаются только в этом, самом последнем пункте.

Кто именно будет запускать операцию вывода - сам скрипт или общий индекс - разница не принципиальная. Важно то, чтобы вывод был именно там, где он должен быть. То есть, его надо явно прописать. А не мечтать об "элегантном" автоматическом решении.

-~{}~ 04.03.09 12:08:

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

bobroff

Новичок
Спасибо, очень подробный ответ. Все понял.

-~{}~ 10.03.09 16:08:

Подскажите еще ,пожалуйста, где можно посмотреть (скачать) исходники примера сайта на php, с меню ,навигацией и т.п.? Все что я искал и находил содержало только титульную страницу с рисунками и 1 css файлом.
 
Сверху