Алексей Годовник
Наряду с неоспоримыми достоинствами бесплатного хостинга, есть и
существенные недостатки. Больше всего меня раздражает отсутствие SSI. Если и вас
тоже, сообщаю: выход есть! И довольно простой, как в поговорке про все
гениальное.
Для тех, кто не в курсе, поясняю. Вам наверняка хоть раз в жизни
приходилось собирать мозаику. Ну, или хотя бы соединять вместе несколько частей
в одно целое. В этом и заключается идея SSI - собирать свой сайт из
HTML-фрагментов. Для чего это нужно? Как правило, на каждом сайте некоторые
детали присутствуют на всех страничках сайта. У меня, например, таким является
оглавление слева. И web-мастеры при создании новых документов просто
переписывают их туда. А если вдруг захочется изменить внешний вид, приходится
вносить изменения во все файлы. А если сайт содержит много информации, то
реконструкция сайта превращается в тягомотину. Можно, конечно, использовать
фреймы (про них рассказано в "HTML за полчаса", но
у них есть свои недостатки.
Предлагаемый мною способ, конечно, далек от совершенства, но он
лучше, чем ничего, да и не так уж плох (на мой субъективный взгляд).
Итак, все дело в следующем: как вы знаете (а если не знаете, то я
с удовольствием вас информирую), в HTML документ можно встраивать скрипты,
написанные на различных языках. Один из них - JavaScript - довольно прост и
имеет то преимущество, что его понимают все браузеры, а для выполнения
используются ресурсы компьютеров ваших посетителей.
Так вот, скрипт на JavaScript не обязательно встраивать в HTML
документ, что бы там ни было написано в инструкции по его использованию. Он
может располагаться в отдельном файле, следовательно, на него можно ставить
ссылку/сноску из любого другого документа, следовательно, его можно написать
только один раз и использовать в неограниченном количестве документов.
Наши файлы-кусочки будут иметь содержание
document.write('ваш HTML-код'); или
document.write("ваш HTML-код"); количество
таких записей не ограничено, внутри кавычек/апострофов вы пишете строчку с вашим
HTML. Естественно, что если вам надо использовать кавычки, вы берете первый
вариант, а если апострофы, то второй. Файл с кусочком встраиваемого HTML
сохраняете в виде name.js, где вместо name используете любую
комбинацию цифр и латинских букв.
Когда вы написали все фрагменты, начинаем их склеивать. В том
месте, где должен быть нужный элемент, пишем <script
language="JavaScript" src=source></script>, где
source - адрес этого фрагмента.
Таким образом, ваша страничка (в идеальном варианте) будет иметь
следующий вид
По-моему, вполне элегантно.
Только старайтесь, чтобы ваши кусочки были осмысленными,
самостоятельными и логически законченными. Потому что если написать какой-нибудь
открывающий тег в одном, а закрывающий в другом фрагменте, скорее всего не
сработает.
Не бойтесь того, что общий размер странички увеличивается из-за
многократного повторения document.write. Так как страничка состоит из
нескольких кусочков, ее загрузка будет происходить даже немного быстрее.
Если захотите что-либо уточнить, пишите. НО!!! Я не буду отвечать
на вопросы типа "я все сделал так как написано, но ничего не
работает". Значит, не совсем так. Шевелите извилинами и ищите ошибки. Самая
распространенная - многие забывают, что в адресах и в JavaScript большие и
маленькие буквы РаЗлИчАюТсЯ.
Пример использования можно посмотреть здесь
Литература по SSI
|