Я бежал всю гамму «делать сайты» и не серьезно с верхним/нижним колонтитулом до Я начал использовать фреймворк WordPress. И это было после ручного кодирования двух CMS и собственного набора электронной коммерции. : \ Мне нравится ответ @ mariobgr, это отличный первый шаг к чему-то модульному построению сайта.
Что я думаю, что вы ищете, скорее является ответом для страницы/контейнера/контента. header.php
классически относятся к заголовкам HTML, проверке URL/POST/GET и безопасности. Иногда там работает javascript. Обычно header.php
не будет иметь <body>
или <HTML>
теги, это больше. Теперь, когда вы открываете эту концепцию, я предлагаю вам подготовиться к CMS; например wordpress: индивидуальный контент находится в базе данных MySql, а затем у вас есть несколько файлов для обработки разнообразных функциональных ролей на страницах вашего сайта.
Тип несвязанного, но еще одного примера включает в себя: Мое последнее неофициальное «фреймворк» предназначалось для довольно значительного инструмента генератора отчетов о продажах.Вот пример иерархии; отступы в каждой include
:
index.php
db.php // connects to database
inc.js.php // everything that's in <script> tags
inc.container.php // isn't actually a page, is 1/3 page wide
class.dates.php // meh, should be miraculously built in
inc.post.php // POST processing to prefill form variables
inc.controls.php // Form w/buttons to change report info
inc.query.php // epic MySql query
inc.report.php // Churns the query data and spits out tables
inc.graph.php // graphs data from above via CSS backround
css/ // this is for jQuery
js/ // this is for jQuery
reports.css // this is for me
В действительности то, что начиналось как одна страница/index.php
inc.container.php
стали, а затем я изменил index.php
так, чтобы он мог иметь несколько отчетов «страниц» на одной веб-странице.
Я не очень ООП, поэтому я включаю все, что мне нужно, в index.php
или container.php
, хотя инк включает более глубокие уровни. Несколько ключевых переменных находятся в глобальной области, но container.php
имеет машину состояний, которая управляет логикой. Это в основном «страница», хотя я отформатировал печатный носитель CSS, чтобы сделать 3 на две строки.
jQuery/Ajax может динамически добавлять и удалять больше контейнеров через элементы управления в каждом контейнере, так что это красиво. Это позволяет легко сравнивать аналогичные периоды времени или отчет за месяцы, кварталы и т. Д. Трюк к этому увеличил глобальную переменную javascript, чтобы jQuery знал, какой идентификатор div добавить или убить.
Итак, как выглядит ваша текущая структура и код? –
Это путь. Я всегда использую Smarty, потому что мне нравится его система с использованием блоков шаблонов и расширения макетов. [Smarty {block}] (http://www.smarty.net/docs/en/language.function.block.tpl) –
Могу заставить меня звучать ослепляюще глупо, но в основном я закодировал всю домашнюю страницу этого сайта, в просто HTML и CSS по существу - только сейчас я смотрю на разделение верхних и нижних колонтитулов. –