Управление сайтом
Автор: Lion
Эта статья, возможно,
поможет и облегчит вам создание и поддержку вашего сайта. Изменив всего
несколько файлов вы сможете быстро сменить дизайн вашего творения. В
качестве введения предлагаю вам почитать эту статью.
Итак, что нам нужно:
Хостинг поддерживающий php, либо веб-сервер на локалхосте (типа TopServer).
Текстовой редактор.
Для начала предлагаю вам
создать все необходимые файлы на вашем компьютере, и уже потом загрузить
их на сервер.
Создадим файл index.php, это
будет основа вашего сайта:
<?php
if (!isset($page)) $page=0;
$data=file("config.php");
$max=count($data);
if ($page >$max)
$page=0;
if
(ereg("[[:alpha:]]",$page)) $page=0;
$data=explode("|",$data[$page]);
echo
"<html><head>$data[1]</head><body>";
include("header.php");
include("$data[0]");
include("footer.php");
echo
"</body></html>";
?>
Теперь создадим файл
config.php, его формат:
адрес_главной_страницы|мета-теги
адрес_n-ой_страницы|мета-теги
первая строчка – для главной
страницы. Под мета-тегами я подразумеваю, то что будет вставляться в
<head></head> страницы. Пример:
main.html|<title>Главная страница</title>
about.html|<title>О
Фирме</title>
works.html|<title>Работы</title>
contacts.html|<title>Контакты</title>
Разумеется, страницы
main.html и т.д. нужно создать и разместить в них вашу информацию, это то,
что будет включаться в середину страниц отдаваемых скриптом.
Теперь создадим файл
header.php, в нем разместим тот html код, который будет вверху всех
страниц, например, это может быть навигация, ваш логотип, баннеры и т.д.
Создадим файл footer.php, в
нем разместит html код, который будет вставляться вниз всех страниц.
Например, это могут быть счетчики.
Конечно же, файлы header.php
и/или footer.php можно создать пустыми, или вообще отключить их включение
в страницы, отдаваемые скриптом, удалив из файлы index.php строки
include("header.php"); и include("footer.php");
А теперь о том, как
пользоваться скриптом.
Закачайте все файлы на
сервер. Главную страницу вызывайте просто обратившись к скрипту, например
http://xonix.ru/site/index.php. Это вызовет страницу вашего сайта, которая
указана в первой строчке файла config.php.
Все адреса страниц указанные
в файле config.php, ниже первой строчки вы можете вызвать с помощью
скрипта, например так: http://xonix.ru/site/index.php?page=1 – это
приведет к вставке в середину страницы содержания файла указанного во
второй строке файла config.php; http://xonix.ru/site/index.php?page=2 - к
использованию третьей строчки из файла config.php.
Для того, что бы вам было
легче разобраться, предлагаю скачать http://xonix.ru/data/scripts/site.zip
пример, установленный на
http://xonix.ru/site.
А теперь описание скрипта...
if (!isset($page)) $page=0;
Это строка проверяет и если
переменная $page не определена, ей присваивается значение 0.
$data=file("config.php");
В этой строчке скрипт
открывает файл config.php и он построчно заносится в массив $data.
$max=count($data);
Определяем размер массива,
т.е. получаем индекс самого большого элемента содержащегося в нем и
заносим его в переменную $max. В данном случае результатом будет
количество строк содержащихся в файле config.php.
if ($page >$max) $page=0;
Если число $page больше
количества строк содержащихся в массиве, то $page=0.
Другими словами, если скрипт
вызывается с параметром $page, больше возможного, то скрипт будет отдавать
главную страницу.
if (ereg("[[:alpha:]]",$page)) $page=0;
Здесь, используя регулярные
выражения. Мы проверяем не содержит ли переменная $page букв, и если они в
ней имеются, то $page=0, результат – скрипт будет отдавать главную
страницу.
$data=explode("|",$data[$page]);
В данный момент массив $data
содержит строки из файла config.php, как вы помните, в $page содержится
номер строчки из config.php, которая должна быть обработана скриптом. В
результате выполнения этой строчки, из массива $data берется строка с
индексом $page. Explode разбивает ее используя символ “|” в качестве
разделителя и записывает уже новое значение в массив $data. После этого в
$data[0] будет содержаться адрес страницы, которая должна вставляться
скриптом, а в $data[1] мета-теги для этой страницы.
echo
"<html><head>$data[1]</head><body>";
Эта строчка выводит теги
<html><head>, далее вставляются мета-теги из $data[1] и
выводится закрывающий тег </head>. Дальше идет тег тела страницы
<body>.
include("header.php");
Эта строчка просто вставляет
вместо себя содержимое файла header.php, который содержит верхнюю часть,
вставляемую во все страницы.
include("$data[0]");
Здесь мы вставляем
содержание старинцы, ее адрес берется из $data[0].
include("footer.php");
Здесь вставляет содержимое
файлы footer.php, который содержит нижнюю часть вставляемую во все
страницы.
echo
"</body></html>"; Здесь выводятся закрывающие теги
</body> и </html>.