Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Несколько страничек с одинаковой навигационной частью

12K
06 января 2007 года
Шмель
20 / / 20.04.2006
Здравствуйте!
Подскажите, пожалуйста, идеологию создания сайта (написания страничек), когда на разных страницах есть повторяющиеся элементы: тутульная часть, подвал и навигационная панель.
Допустим после клика в меню на навигационной панели, мы переходим на новую страничку, на которой присутствует такая же навигация как и на предыдущей. О фреймах многие говорят забыть, т.к. не соответсвуют идеологии, сложности сохранения и индексации страничек целиком, ну и как мне кажется меньше баннеров покажешь, т.к. меняется только лишь часть странички.
Если не использовать фреймы, то страничка загружается полностью. Но разве нет способа облегчить сохранения повторяющейся части допустим в кэше (как это происходит с "css")? Чтобы при открытии новой странички не тянуть лишний траффик.
А как должен поступать верстальщик страничек? Просто копировать старую страничку и заменять часть информации?
Заранее спасибо!

PS: Совсем новичок.
244
06 января 2007 года
UAS
2.0K / / 19.07.2006
Как альтернатива: система простых шаблонов на PHP

Имеем дизайн странички, потом разбиваем его на куски. Например будут файлы:
0) carcas.html (содержит каркас страницы)
1) header.html
2) navigation.html
3) bottom.html

Код:
<!-- carcas.html -->
<table>
 <tr>
  <td>{HEADER}</td>
 </tr>
 <tr>
  <td>{NAVIGATION}</td>
  <td>{CONTENT} <!-- Здесь текст, контент --></td>
 </tr>
 <tr>
  <td>{BOTTOM}</td>
 </tr>
</table>


Далее пишем простенько на php
Код:
$content="Some text";
$tpl=array(); // содержит шаблоны
$tpl["header"]=file_get_contents("header.html");
$tpl["navigation"]=file_get_contents("navigation.html");
$tpl["bottom"]=file_get_contents("bottom.html");
$tpl["carcas"]=file_get_contents("carcas.html");

$tpl["carcas"]=str_replace("{HEADER}",$tpl["header"],$tpl["carcas"]);
$tpl["carcas"]=str_replace("{NAVIGATION}",$tpl["navigation"],$tpl["carcas"]);
$tpl["carcas"]=str_replace("{BOTTOM}",$tpl["bottom"],$tpl["carcas"]);
$tpl["carcas"]=str_replace("{CONTENT}",$content,$tpl["carcas"]);

die($tpl["carcas"]); // выводим на экран


Вот тебе простенький, написанный на скорую руку, шаблонизатор))
337
06 января 2007 года
shine
719 / / 09.06.2006
Цитата: Шмель
Здравствуйте!
Подскажите, пожалуйста, идеологию создания сайта (написания страничек), когда на разных страницах есть повторяющиеся элементы: тутульная часть, подвал и навигационная панель.



Такое можно сделать на Ajax. Теория такая: создаешь какой-нибудь div в котором у тебя будет изменяющаяся информация. Меню делаешь не ссылками, а вешаешь на каждый пункт меню JavaScript обработчик. В самой функции обработки с помощью Ajax подгружаешь с сервера информацию и засовываешь ее в div с контентом. В этом случае у тебя будет обновлятся только контент, а шапка, меню и подвал будут оставаться старыми.
Сразу должен предупредить, что сайты сделаные таким образом очень не любят поисковики.

15
06 января 2007 года
shaelf
2.7K / / 04.05.2005
Конечно не любят, т.к. глобально AJAX это JavaScript, который в свою очередь поисковики не понимают.
21K
06 января 2007 года
kerdan
18 / / 27.12.2006
Не хочешь юзать Ajax, то сделай так:
напиши во внешнем js-файле ф-и для генерирования
на ходу html основных обрамляющих панелей или чего-то подобного
(меню, подвал...). И просто вызывай эти ф-и там где надо в обычных
скрипт-вставках. Этот js будет закеширован, сэкономиться хороший
процент.

Я так раньше делал, но теперь все-таки Ajax юзаю.
256
07 января 2007 года
foxweb
1.0K / / 27.07.2005
Кто нибудь мне объяснит, откуда у новичков (а также у преподавателей вузов, содержащих собственные homepage) такое маниакальное стремление "избавиться от повторяющихся фрагментов страниц"? В последнее время прямо тенденция какая-то... Выводи полностью и всё. Шаблонизаторов сейчас море. Любую книгу по PHP купи, там будет дан пример. Зачем что-то изобретать, городить какие-то там фреймы, потом ещё штук 50 вопросов в стиле "а как при помощи фреймов сделать..."
Рекомендую начинать с http://www.webscript.ru/stories/37 ну и дальше мозг включаем (а он ещё не включён?)

В любом случае только не фреймы. На самом деле новички правильно пытаются прийти к какой-то структуре, отделить одно от другого, но не понимают, что вместо фреймоф и прочей дребедени им нужен простой шаблонный движок (см. ссылку).

Прошу прощения за эмоции.
337
07 января 2007 года
shine
719 / / 09.06.2006
foxweb, не понимаю причин твоего возмущения. Люди пытаются экпериментировать и искать новые подходы к сайтостроительству. Что же в этом плохого? Имхо, это только приветствовать можно.
Использвание шаблонизаторов и Ajax - это просто разные методики. Каждая из них имеет как достоинства так и недостатки. Чем лучше человек будет знаком с этоми особенностями каждого подхода, тем легче ему будет понять что и где лучше использовать.
256
07 января 2007 года
foxweb
1.0K / / 27.07.2005
Цитата: shine
foxweb, не понимаю причин твоего возмущения.



Всё хорошо, полностью согласен! Люди учатся - хорошо. Возмущают - фреймы ;)

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог