
<? include('header.php') ?>
<h1>Заголовок страницы</h1>
Контент страницы
<? include('footer.php') ?>
Выше представлена стандартная схема создания статических шаблонов с использованием php-функции include(). Думаю можно догадаться, что в файле header.php содержится весь код от <html>, вплоть до тега, открывающего блок основного контента сайта, а в footer.php — закрывающий тег блока основного контента и вся нижеследующая информация.
На примере скриншота выше, показано разделение шаблона сайта на три отдельных файла:
- header.php — верхняя часть, содержащая открывающую часть HTML документа от <html> до тега основного контента страницы <article>;
- index.php — главная страница сайта, не содержащая себе кода разметки основной сетки сайта. Содержит исключительно разметку статьи;
- footer.php — нижняя часть в иерархии, закрывающая основной контент сайта </article>, а также весь закрывающий код HTML страницы </body> и </html>;
Соответственно, шапка сайта, меню навигации и левый сайдбар находятся в файле header.php (отмечено диагональными линиями), а правый сайдбар и вся нижеследующая информация — в foter.php
(отмечено диагональными линиями в противоположном направлении).
Особенности верстки на php include()
Такой тип верстки дает массу преимуществ. Для начала рассмотрим пример верстки трех отдельных файлов, которые вместе составляют единую HTML страницу.
Верстка header.php
<html>
<head>
<title>Page title</title>
<meta parametres ..../>
<body>
<header>logotype and other</header>
<nav>site menu</nav>
<aside> <!-- тут содержимое бокового сайдбара слева --></aside>
<article>
<!-- На этом месте header.php заканчивается, к нему будет пристыкована HTML страница, например, index.php и для нее уже будет открыт тег <article> -->
Верстка index.php
<? include('header.php') ?>
<h1>Заголовок страницы</h1>
<figure><img src="#" />
<p>Текст на странице</p>
<p>Текст на странице</p>
<p>Текст на странице</p>
<!-- еще какой-то контент. Больше в таких файлах ничего нет -->
<? include('footer.php') ?>
Верстка footer.php
<!-- На этом месте index.php заканчивается, к нему будет пристыкован файл footer.php в котором также будет открыт тег <article>, который необходимо закрыть -->
</article>
<aside> <!-- тут содержимое бокового сайдбара справа--></aside>
<footer><!-- тут содержимое подвала сайта -->
</body>
</html>
Преимущества конструкции include()
- По сравнению с обычными HTML страницами, здесь используется один общий шаблон, сразу на всех страницах. Это значит, что изменив пункт меню сайта в шаблоне, изменения отобразятся сразу на всех страницах, будь то их 100 или 500;
- Позволяет легко оперировать дизайном сайта, подключать различные сторонние скрипты без изменения сотен страниц вашего сайта;
- Большой минус, которого нет в HTML страницах — отсутствие индивидуальных заголовков и мета тегов для каждой страницы . Ведь общий исходник не предусматривает отдельные куски кода, для каждой страницы.
Есть решение. Думал над ним не мало времени, когда активно использовал статических сайт. Думал и придумал — разделить верхушку сайта так, как показано ниже:
<? include ('headtop.php') ?>
<title>Заголовок страницы</title>
<meta name="description" content="слово1, слово2, слово3 "/>
<meta name="keywords" content="слово1, слово2, слово3 "/>
<? include ('header.php') ?>
<h1>Заголовок страницы</h1>
Контент страницы
<? include ('footer.php') ?>
Вот скриншот с блокнота одной из страниц моего тестового сайта!

Комментарии