Динамическая навигация на PHP

Превращение неупорядоченных списков в элегантные системы навигации уже давно стало излюбленным развлечением многих веб-разработчиков. Несмотря на это, добавление уникальных id или class'ов для отображения элемента меню, отражающего текущую страницу пользователя, может стать весьма трудоемким. Даже если вместо этого вы используете атрибуты id в body, как то делается на ALA, трудности будут возникать все равно. Да и к тому же легко наделать много ошибок. Но благодаря PHP эту работу можно автоматизировать.

Я рассматриваю это руководство как объединение статей Кристофера Робинса "Управление контентом с помощью PHP" и "Укрощение списков" Марка Ньюхауза. Отпрыском, полученным от такого слияния, будет отдельный документ - navigation.php. Используя PHP мы включим наше навигационное меню в каждую страницу нашего сайта. В отличие от других вариантов навигации, наш будет знать на какой странице находится пользователь в данный момент и соответственно изменит индикатор в меню.

Функция PHP include() предоставляет удобный способ вызвать посторонний файл с сервера. Мне больше нравится хранить все мои подключаемые файлы в одной папке с названием phpincludes.

Вам также придется добавлять уникальный идентификатор в верхнюю часть каждой страницы, которую будет распознавать PHP (лучше всего до HTML тэга). Для этого создайте переменную $thisPage и присвойте ей значение, которое описанием и уникально для каждой страницы.

Называйте документы проще. Если вы работаете над страницей "О нас", присвойте переменной значение "About Us". Как показано далее:

Так как PHP язык, работающий на стороне сервера, сервер возьмет на себя обработку документа и включения в него файла navigation.php еще до того, как файл будет отправлен в браузер. Все что нам осталось - это добавить немного PHP в файл навигации. Объединение

Если вы еще не совсем поняли, текущая страница определяется интерпретатором PHP на основании значения переменной $thisPage. Когда мы присвоили уникальное значение переменной $thisPage XHTML файлу (в самом начале то тэга ), мы можем создать систему навигации, которая будет автоматически добавлять id="currentpage" ссылке текущей страницы в меню еще до того, как страница будет отправлена пользователю.