14. Шаблоны

Шаблон, по определению энциклопедического словаря, — это образец или штамп для подражания. Подобное толкование несет заметный оттенок недоброкачественности или вторичности. В области Web-дизайна и предпечатной подготовки к шаблонам относятся иначе. Это вполне доброкачественный инструмент, свободное владение которым можно рассматривать как один из признаков мастерства и профессиональной зрелости дизайнера.

Шаблон — это матрица, способная к неограниченному воспроизводству клонов — документов. Документы, созданные по шаблону, наследуют все его признаки форматирования, стили, планировку страниц, внедренные объекты и многое другое. Кроме того, они сохраняют связь с родительским объектом. Изменения, внесенные в шаблон, влекут за собой обновление дизайна всех порожденных документов. Подобная индукция не всегда выгодна. Программа Dreamweaver располагает специальными средствами, которые позволяют разорвать “пуповину”, связывающую шаблон и созданные на его основе документы.

При разработке шаблона следует определить блокированные (закрытые) и редактируемые (открытые) части документа. Это деление относится только к порожденным документам. Их блокированные части недоступны для внесения изменений; работа с открытыми областями ничем не отличается от обычных гипертекстовых страниц. Сами шаблоны — это полностью открытые объекты, доступные для редактирования средствами программы Dreamweaver.

Какие цели преследует такое разделение? Часто периодические сетевые издания или виртуальные проекты коллективной разработки можно разделить на постоянную и переменную части. Постоянная часть повторяется в каждом отдельном документе и является носителем фирменного стиля или единой структуры проекта. Например, таковы рубрикация сетевого периодического журнала или фирменный логотип на страницах технического руководства. Подобные фрагменты целесообразно включать в шаблоны и объявлять областями, закрытыми для внесения редакторских изменений Открытые области страниц хранят переменную информацию, то есть сведения, которые отличаются высокой динамикой изменений. Создание контента таких областей выполняется обычными средствами.

Страницы, созданные на основе шаблона, сохраняют связь с родительским объектом после завершения разработки и даже после публикации. Изменения, внесенные в блокированные области шаблона, переносятся на все порожденные гипертекстовые страницы. Эту связь можно разорвать. Программа располагает специальной командой, которая “отчуждает” гипертекстовую страницу от шаблона и превращает их в совершенно независимые объекты.

Шаблоны — это не единственное средство поддержки согласованного дизайна и коллективной разработки больших проектов. Сходные задачи решают библиотеки и включения стороны сервера, которые часто в изданиях на русском языке именуются английской аббревиатурой SSI (Server-Side Include).

Работа с библиотеками рассмотрена в предыдущей главе достаточно подробно. Несколько дополнительных слов о технологии включений стороны сервера. Эта идея не нова для информатики; так, многие языки программирования располагают средствами, позволяющими включать в состав исходных текстов программ содержимое внешних файлов.

Включения стороны сервера SSI представляют собой специальный язык и технологию, которая позволяет Web-серверу включать в текст страниц HTML содержимое других источников, текстовое или гипертекстовое. Окончательная сборка документа выполняется сервером непосредственно перед отправлением страницы HTML броузеру пользователя. Все монтажные операции абсолютно закрыты от конечного потребителя; он может даже не подозревать, что обозреваемая им страница содержит вставки или заимствования.

Гибкость и большие возможности повторного использования практически любого гипертекстового кода, которые дает разработчику технология включений стороны сервера, имеют свою оборотную сторону. С точки зрения информационной безопасности, объекты SSI часто представляют собой потенциально уязвимое место вычислительной системы. Многие провайдеры даже запрещают использование этих объектов на своих серверах. Кроме того, включения стороны сервера не могут обрабатываться программами просмотра. Нее операции по сборке документа, содержащего включения SSI, должны выполняться сервером.

Библиотечные объекты обладают высокой гибкостью, могут обрабатываться броузерами, но запрет на включение в состав библиотечных разделов кода заголовочной части существенно ограничивает универсальность этого средства.

В шаблонах удачно объединены универсальность и большие выразительные возможности включений стороны сервера и гибкость библиотек объектов.

14.1. Создание шаблонов

Новый шаблон можно создать на основе существующего гипертекстового документа или разработать “с нуля”. Программа Dreamweaver хранит шаблоны в файлах с расширением .DWT в специально отведенной для этих целей папке Templates, вложенной в корневую папку сайта. Эта папка автоматически создается программой, как только разработан и сохранен первый такой документ.

Папку с шаблонами нельзя переименовывать или перемещать в другой родительский каталог. Более того, в этот раздел файловой системы запрещается записывать файлы иного типа. Подобные действия способны вызвать ошибки на страницах документов, использующих форматирование по шаблону.

Дополнительную информацию о шаблоне можно сохранить в комментариях разработчика, которые связываются только с ним и не наследуются порожденными документами. Большинство операций по созданию планировки и информационному наполнению шаблонов выполняется в режиме Design View (Режим планировки). Наиболее типичной причиной недоступности нужных команд при работе с такими объектами является неправильный режим отображения страниц.

Несколько замечаний по поводу тактики создания шаблонов. Если на обычных гипертекстовых страницах графические и текстовые “заглушки” — это временная мера, допустимая только на определенных стадиях разработки, то для шаблонов их применение не только целесообразно, но часто и необходимо. Макеты текстовых фрагментов и графических образов позволяет сохранить планировку документа, они также служат напоминанием о необходимости включения на данные позиции постоянных объектов определенного типа.

Элементы дизайна, повторяющиеся на нескольких страницах проекта, следует включать в состав шаблона.

Одним из типов повторяющейся служебной информации являются метадескрипторы, которые позволяют выполнить индексацию страницы поисковыми машинами. Несмотря на то что эти сведения располагаются в разделе заголовков документа, их можно объявить составной частью шаблона.

Когда гипертекстовый документ сохраняется в формате шаблона, его заголовочная часть блокируется, то есть становится защищенной от внесения изменений. Часть кода иерархических стилевых спецификаций и динамических сценариев располагается в области действия дескриптора <head> Коли на порожденных страницах предполагается использовать эти возможности динамического HTML, то все необходимые описания следует заранее внести в раздел заголовков шаблона.

Создание шаблона

Любой существующий гипертекстовый документ можно превратить в шаблон. Эта технически простая операция выполняется следующим образом.

  1. Откройте документ командой File > Open (Файл > Открыть).
  2. Внесите в документ необходимые правки.
  3. Дайте команду File > Save as Template (Файл > Сохранить как шаблон).
  4. Откроется диалоговое окно (рис. 14.1), в котором надо выбрать Web узел и название нового шаблона.

Рис. 14.1. Создание шаблона

  1. Щелкните на кнопке Save (Сохранить).

Если документ, принятый за образец, связан с уже существующим шаблоном, то перед сохранением его в качестве нового шаблона требуется дать команду, разрывающую эту связь.

После сохранения документа в виде шаблона программа Dreamweaver вставляет в строку заголовка пометку “Template”, которая напоминает о роли документа.

“С чистого листа” шаблоны создаются несколько иначе.

  1. Дайте команду Windows > Templates (Окно > Шаблоны). На экране появится палитра Assets (Ресурсы) с активным разделом Templates (Шаблоны).
  2. Дайте на палитре команду New Template (Новый шаблон). Эта команда – один из пунктов меню, открываемого щелчком на треугольной кнопке справа.
  3. В центральной части палитры появится значок нового шаблона с именем, которое программа присвоит ему по умолчанию. Для него можно сразу же ввести содержательное наименование.
  4. Откройте новый пустой шаблон двойным щелчком на его имени в палитре Assets (Ресурсы).

Изменение шаблона

Шаблоны, как и любые другие объекты, созданные средствами программы Dreamweaver, можно редактировать. К сожалению, авторам программы не удалось добиться единообразия команд для основных операций редактирования шаблонов. Они распределены по нескольким разделам строки меню программы и меню палитры ресурсов.

Чтобы изменить шаблон, на котором основывается открытый документ, надо дать команду Modify > Templates > Open Attached Template (Изменить > Шаблоны > Открыть присоединенный шаблон).

Файл шаблона можно открыть так.

  1. Откройте палитру Assets (Ресурсы) и перейдите в ее раздел Templates (Шаблоны). Для этого проще всего дать команду Window > Templates (Окно > Шаблоны).
  2. Палитра представляет имена всех шаблонов текущего узла и показывает эскиз выбранного документа. Выберите имя нужного шаблона.
  3. Загрузите выбранный шаблон в окно документа для редактирования. Существует, по крайней мере, четыре способа это сделать:

Большая часть ресурсов программы применяется и при редактировании шаблонов. После внесения в документ необходимых изменений надо сохранить новую версию шаблона. Для этого надо дать штатную команду программы File > Save (Файл > Сохранить).

При сохранении шаблона, не содержащего ни одной редактируемой области, программа выводит окно с предупреждением. Это не является препятствием к сохранению, но полезность такого шаблона можно поставить под сомнение. Документы, созданные на его основе, полностью закрыты для правки. Сам шаблон доступен для внесения редакторских изменений.

Переименование шаблона выполняется следующим образом.

    1. Откройте палитру Assets (Ресурсы) и перейдите в раздел Templates (Шаблоны).
    2. Выберите имя шаблона в палитре и после некоторой паузы щелкните на имени второй раз.
    3. Введите новое имя.
    4. Подтвердите операцию нажатием клавиши ENTER.
    5. Программа Dreamweaver выведет запрос на обновление связанных с шаблоном документов.
      • Чтобы обновить все документы, созданные на основе шаблона, надо щелкнуть на кнопке Update (Обновить).
      • Если процедуру обновления следует отложить, щелкните на кнопке Don't Update (He обновлять). В этом случае каждую страницу, связанную с шаблоном, можно обновить в индивидуальном порядке при помощи команды Modify > Templates > Update (Изменить > Шаблоны > Обновить).

Удаление отработанных шаблонов выполняется следующим образом.

  1. Выберите имя шаблона в палитре Assets (Ресурсы).
  2. Дайте команду Delete (Удалить). Эта команда представлена в меню палитры и в контекстном меню. Ей также соответствует командная кнопка в нижней части палитры ресурсов.

После удаления шаблона документы, созданные на его основе, не претерпят никаких изменений ни по виду, ни по сути. Они сохраняют даже заданное родительским шаблоном деление на блокированные и редактируемые области. Чтобы перевести такие документы в обычную форму HTML, надо дать команду разъединения с шаблоном: Modify > Templates > Detach from Template (Изменить > Шаблоны > Разорвать связь с шаблоном).

14.2. Редактирование шаблонов

Любой вновь созданный шаблон является полностью открытым объектом — при применении операций форматирования и информационного наполнения он ведет себя подобно обычной странице HTML Гипертекстовые документы, созданные на его основе, наследуют все свойства родительского объекта, кроме заголовка, то есть содержимого парного дескриптора <title>.

Создание редактируемых областей

По умолчанию принимается соглашение, согласно которому документы, порожденные новым шаблоном, состоят из одной блокированной рабочей области. Программа разрешает сохранять и такие шаблоны, но их практическое значение невелико. Ценные шаблоны должны иметь не только тщательно отработанный дизайн, но и продуманное и устойчивое деление на блокированные и редактируемые области.

Объявить область шаблона редактируемой можно так.

  1. Загрузите шаблон в окно программы и выберите в нем область, которую требуется открыть для редактирования.
  2. Дайте нужную команду. Как и большую часть технических действий в программе, эту команду можно выполнить несколькими разными способами. Перечислим их:
  3. Откроется диалоговое окно New Editable Region (Новая редактируемая область), в котором надо ввести имя новой области и подтвердить операцию щелчком на кнопке ОК.

В именах редактируемых областей допускается использовать пробелы, но запрещаются следующие специальные символы: ? (вопросительный знак), “(двойная кавычка)," (апостроф), < и > (угловые скобки).

Редактируемые области шаблона выделяются специальным прямоугольником, охватывающим все внутренние объекты. Кроме того, каждая область имеет уникальное имя, которое выводится на специальном ярлычке в верхнем левом углу этого прямоугольника (рис. 14.2).

Рис. 14.2. Шаблон с двумя редактируемыми областями

Существует общее правило расположения областей, согласно которому редактируемый фрагмент должен представлять собой часть документа, ограниченную парными дескрипторами. Например, это может быть вся таблица (<table> </table>) или ячейка таблицы (<td> </td>). Программа Dreamweaver не различает выбора ячейки таблицы или содержимого ячейки. Такой выбор считается эквивалентным.

Слои и их наполнение — это разные объекты. Объявить открытым слой – значит, дать возможность менять его положение в пределах документа; открыть содержимое слоя — значит, сделать все объекты, расположенные на нем, доступными для изменений.

Имена всех созданных редактируемых областей шаблона отображаются в меню, которое открывается командой Modify > Templates (Изменить > Шаблоны). Эти имена представляют команды перехода в редактируемые области документа.

Можно не только объявить открытой выделенную область шаблона, но и вставить новую, первоначально пустую, область, свободную для наполнения и форматирования.

  1. Откройте шаблон и поместите текстовый курсор в позицию вставки.
  2. Дайте команду Modify > Templates > New Editable Region (Изменить > Шаблоны > Новая редактируемая область).
  3. В одноименном диалоговом окне введите имя новой области.
  4. Подтвердите создание области щелчком на кнопке ОК. В позиции текстового курсора появится пустая область, которая первоначально представлена именем, заключенным в фигурные скобки. И в шаблоне, и во всех документах, созданных на его основе, это символическое обозначение можно заменить надлежащим контентом: текстом или графикой. На рисунке 14.2 показана одна пустая область; она называется Empty.

Любой документ, сохраненный в формате шаблона, автоматически получает одну открытую область под названием doctitle. Это область хранения заголовка шаблона. Чтобы изменить предлагаемый по умолчанию заголовок Untitled Document надо, например, открыть диалоговое окно настроек страницы (CTRL+J) и в поле Title (Заголовок) ввести нужное название.

Операция создания открытой области обратима. Заблокировать открытую область шаблона можно следующим образом.

  1. Откройте шаблон.
  2. Дайте команду Modify > Templates > Remove Editable Region (Изменить > Шаблоны > Удалить редактируемую область).
  3. Откроется одноименное диалоговое окно, в котором надо выбрать имя области и подтвердить операцию щелчком на кнопке ОК. Эта операция удаляет все признаки редактируемой области, оставляя неизменным ее содержимое.

Следует отметить одну техническую деталь операции блокировании Ранее отмечалось, что любая пустая редактируемая область помечается в рабочем поле шаблона именем, заключенным в фигурные скобки. Команда Remove Editable Region (Удалить редактируемую область) успешно работает с такими областями: она удаляет все признаки редактируемой области, но оставляет имя, которое становится просто частью текста. На шаблоне это имя можно убрать вручную. Чтобы исключить его из всех порожденных шаблоном документов, следует выполнить команду обновления.

Информационное наполнение

Для заполнения шаблона можно применить весь арсенал средств проектирования, которым располагает программа Dreamweaver. Существующие ограничения связаны, главным образом, не с созданием планировки шаблона или его форматированием, а с применением разработанного проекта к гипертекстовым документам.

Приведем описание процедуры, которая позволяет обойти немногочисленные запреты на применение средств форматирования к шаблону. Ее основная идея состоит в том, что созданная на основе шаблона новая страница отделяется от родительского образца. Разрыв связи делает страницу автономным образованием и, тем самым, снимает все ограничения на применение средств и инструментов программы. Страница с завершенным дизайном объявляется новым шаблоном и заменяет старый образец.

Следует отметить, что прибегать к этой громоздкой и небезопасной процедуре целесообразно только в крайних случаях. Большая часть задач по разработке дизайна шаблона и его планировке имеет в программе Dreamweaver прямое решение.

Эта процедура описывается следующей последовательностью действий.

  1. Дайте команду File > New from Template (Файл > Создать на основе шаблона) и создайте страницу, дублирующую дизайн шаблона, подлежащего изменению. Сохраните страницу под любым именем в виде обычного документа.
  2. Разорвите связь страницы с родительским шаблоном. Для этого дайте команду Modify > Templates > Detach from Template (Изменить > Шаблоны > Разорвать связь с шаблоном). После этого шага у нас есть точная копия шаблона без ограничений на применение редакторских операций.
  3. Внесите в страницу все необходимые изменения.
  4. Сохраните готовую страницу в формате шаблона Dreamweaver. Для этого дайте команду File > Save as Template (Файл > Сохранить как шаблон). В принципе можно сразу выбрать для нового шаблона то же имя, что было у старого. Но это решение необратимо: оно способно привести к краху всего проекта, если в новом шаблоне окажутся ошибки или даже мелкие несогласованности. Поэтому имеет смысл сохранить шаблон под другим именем, например my_template_new.dwt, если имя старого шаблона было my_template.dwt.
  5. Создайте на новом шаблоне редактируемые области. Их расположение и имена должны быть такими же, как на старом образце. Эту задачу решает команда Modify > Templates > New Editable Region (Изменить > Шаблоны > Новая редактируемая область). Очень важно, чтобы количество и названия редактируемых областей нового шаблона в точности совпадали со старым образцом. Операции переформатирования документов при назначении нового шаблона базируются на соответствии открытых областей. По завершению этих операций сохраните шаблон и выйдите из программы Dreamweaver.
  6. Средствами операционной системы найдите папку, содержащую оба шаблона, и переименуйте их. Старый можно, например, назвать my_template_backup.dwt, а новый должен получить имя my_template.dwt вместо my_template_new.dwt. Такое переименование позволяет осуществить замену старого шаблона новым.
  7. Запустите программу Dreamweaver и откройте новую редакцию шаблона — my_template_new.dwt. Дайте команду Modify > Templates > Update Pages (Изменить > Шаблоны > Обновить страницы), которая актуализирует все страницы, связанные с данным образцом.

Если в процессе обновления страниц произошла ошибка или выявились несогласованности планировки или форматирования, то, имея резервную копию старого шаблона (my_template_backup.dwt), можно выполнить откат и вернуться предыдущему варианту оформления всех или только избранных страниц.

Вставка динамических сценариев

Динамические сценарии (behaviors) — это очень удобное средство создания динамических эффектов на гипертекстовых страницах. Динамическое поведение, которое требуется сообщить текстовому или графическому объекту, программируется на языке JavaScript или VBScript. Эти короткие программы должны быть написаны и отработаны заранее и внедрены в исходный текст гипертекстового документа. Для записи текста программ может быть использовано тело документа или раздел заголовков. Если документ создан на основе шаблона, то его раздел заголовков закрыт для редактирования. Исключением является короткий фрагмент doctitle, хранящий заголовок документа. Логично предположить, что запись программных кодов в блокированную часть раздела заголовков может окончиться неудачей.

Это обоснованное теоретическое суждение требует практической корректировки. В состав программы Dreamweaver входит несколько стандартных, предустановленных сценариев, которые, по замыслу разработчиков программы, нашли наибольшее применение в проектной практике Web-дизайнеров. Эти тщательно отработанные динамические сценарии обладают максимальной совместимостью со старыми версиями программ просмотра, Многие из них требуют вставки обширных фрагментов кода в раздел заголовков страницы. Все подобные включения выполняются совершенно безболезненно и не требуют проведения каких-либо дополнительных мероприятий.

В свободном обращении в Сети находятся многие сотни сценариев, разработанных разными фирмами и программистами-одиночками. Программа Dreamweaver обладает всеми необходимыми инструментами для включения программных кодов сторонних разработчиков в состав гипертекстового документа.

Чтобы гарантировать безболезненную “имплантацию” кодовых фрагментов в закрытый раздел заголовков документа, требуется внести правки в родительский шаблон. В чем они заключаются? В раздел заголовков шаблона вводится дополнительная открытая область для хранения кодовых последовательностей динамических сценариев. Эта операция выполняется следующим образом.

  1. Откройте шаблон.
  2. Откройте окно Инспектор кода. Для этого можно воспользоваться командой Window > Code Inspector (Окно > Инспектор кода) или клавишей F10.
  3. Поместите текстовый курсор непосредственно перед закрывающим дескриптором </head>.
  4. Введите с клавиатуры следующий фрагмент кода.

    <mm:editable>

    <script> </script>

    </mm:edilable>

    <mm:editable>

    <!—Любой комментарий, который будет

    уничтожен программой —>

</mm:editable>

  1. Сохраните изменения в шаблоне и подтвердите обновление связанных страниц.

После этого динамические сценарии могут быть добавлены как к самому шаблону, так и к документам, созданным на его основе, без риска потерять программную часть, ассоциированную со сценарием.

Ссылки на шаблонах

Гипертекстовые ссылки, размещенные на страницах шаблона, наследуются порожденными документами, как и другие объекты и коды разметки. Однако процедура создания таких ссылок имеет несколько особенностей.

Напомним способы построения гипертекстовых адресов, принятые в программе. Существует два принципиально различных подхода к целеуказанию объектов: абсолютная и относительная адресация. При абсолютной адресации местоположение объекта задается его полным адресом, которым, в зависимости от ситуации, может быть адрес URL или полный путь поиска файла. Метод относительной адресации использует для целеуказания некоторую точку отсчета в файловой системе — своеобразное начало координат. Программа Dreamweaver разрешает отсчет относительных адресов от положения текущего документа или от корневой папки Web-узла. В зависимости от выбранной точки отсчета, относительные адреса делятся на две группы. В сопроводительной документации на программу они называются document-relative (относительно документа) и root-relative (относительно корневой папки). Точный перевод этих терминов на русский язык весьма громоздок, хотя и часто употребляется в технической литературе. Будем называть метод root-relative корневой адресацией, a document-relative —относительной адресацией. Такое упрощение имеет под собой достаточно серьезные основания. Задание адресов ссылочных объектов от положения текущего документа — это наименее жесткий и самый неустойчивый способ адресации, поэтому есть все основания именовать его относительным.

Напомним кратко основные особенности каждого из методов адресации. Создать ссылку на внешний объект или ресурс, не принадлежащий данному локальному или удаленному сайту, можно только записав его полный абсолютный адрес URL. В этой области такой способ не имеет альтернатив, поэтому остается только принять все издержки, связанные с его применением

Для целеуказания объектов, принадлежащих локальному узлу, можно использовать как относительную, так и корневую адресацию. В разделе, посвященном созданию ссылок в программе Dreamweaver, обсуждались стратегические достоинства и недостатки каждого из этих способов. К этому анализу добавим лишь несколько фактов.

Обязательным условием применения относительной адресации является сохранение файлов источника и ссылки в системе папок, вложенных в корневой каталог локального узла. Программы просмотра, по крайней мере самые популярные из них — Internet Explorer и Netscape Navigator, не могут работать с корневыми адресами. Документ, в котором гипертекстовые связи заданы от корня, можно просмотреть только после загрузки его на удаленный сервер. Программа Dreamweaver использует специальную подстановку адресов, чтобы разрешить просмотр таких документов в броузерах. Область действия этой подстановки — один гипертекстовый переход. Перемещение по цепочке связей, заданных при помощи корневого способа адресации, способно привести к ошибке.

И на шаблонах, и на порожденных документах пользователь может использовать тот метод адресации, который представляется ему предпочтительным в данной проектной ситуации. Следует помнить о том, что шаблон и документы, созданные на его основе, в общем случае могут быть расположены в разных частях системы папок, подчиненной корневой папке узла. Все шаблоны размещаются в папке Templates, вложенной непосредственно в корневую. Документы, порожденные шаблоном, могут иметь любую “прописку” в пределах узла.

Для абсолютных и корневых адресов “смена прописки” источника не имеет значения, поскольку первые вообще не имеют точки отсчета, а для вторых эти функции выполняет корневая папка узла, которая своего положения не меняла. Относительные адреса записываются от положения документа-источника и являются чувствительными к изменению его положения. Программа Dreamweaver отслеживает перемещения документов, созданных на основе шаблона, и автоматически меняет все относительные адреса в соответствии с текущим положением документа.

Программа располагает несколькими техническими приемами создания гипертекстовой ссылки. Все они подробно рассмотрены в главе, посвященной ссылкам. При задании ссылок на шаблонах следует использовать ссылочный маркер-указатель палитры Property Inspector (Инспектор свойств) или задавать их при помощи диалогового окна Select File (Выбор файла). Напомним, что оба эти средства управления располагаются на палитре в разделе Link (Ссылка).

Маркер представляется в виде кружка с перекрестием. Для создания ссылки его надо просто перетащить его на целевой файл в окне Диспетчера узла. Диалоговое окно Select File (Выбор файла) вызывается щелчком по значку папки.

Почему эта техника предпочтительнее всех остальных приемов создания гипертекстовых ссылок? Предположим, мы создаем шаблон на основе существующего документа с заданными гипертекстовыми ссылками. При сохранении документа в формате шаблона программа следит за тем, чтобы все ссылки указывали на заданные ранее объекты. Поскольку шаблоны хранятся в специальной папке Templates, программа самостоятельно преобразует все ссылки, заданные от текущего документа. Когда на основе этого шаблона создаются и сохраняются новые документы, то все ссылки, заданные от документа, автоматически обновляются программой в соответствии с новым положением документа-источника.

Палитра Property Inspector (Инспектор свойств) разрешает вводить любые адреса вручную. Однако этот способ слишком обязывающий: он требует от пользователя, во-первых, аккуратности, а во-вторых, точного представления о расположении всех составляющих гиперссылки (шаблона, документа-источника, целевого файла) в файловой системе. Для узла с разветвленной системой папок и их глубоким вложением такой способ легко может привести к ошибке. Создание гиперсвязей при помощи тех простых полуавтоматических средств целеуказания, которыми располагает программа, страхует пользователя от любых неожиданностей.

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

14.3. Визуализация шаблонов и документов

Шаблоны и документы, созданные на их основе, отличаются от обычных гипертекстовых страниц не только способами обработки, но и внешним видом.

Систематизируем все сказанное о способах визуализации этих объектов. Редактируемые области шаблонов и шаблонных документов выделяются при помощи прямоугольной рамки с ярлычком в левом верхнем углу. На ярлычке отображается имя области. Щелчок на нем позволяет выбрать всю область целиком. По умолчанию рамка окрашена в светло-синий цвет. Как-либо выделять блокированные области нет необходимости. В шаблонах это обычные гипертекстовые фрагменты, которые не обладают какими-то экстраординарными свойствами. В документах такие области недоступны — текстовый курсор принимает над ними вид запрещающего знака, что служит лучшим признаком блокированной области. Все рабочее поле документа, созданного на основе шаблона, охватывается желтым прямоугольником с именем родительского объекта справа.

Все перечисленные методы визуализации действуют только в режиме планировки страницы. Исходный текст документа-шаблона размечается по-другому. В режиме отображения кодов все блокированные кодовые области выделяются светло-желтым фоном. Фрагменты, свободные для внесения изменений, не имеют особой маркировки — это обычные кодовые последовательности гипертекстового документа.

Программа не запрещает вводить дополнительные коды в заблокированные области исходного текста. Но все такие фрагменты текста она просто игнорирует. Это значит, что они не отображаются в режиме планировки страницы и не сохраняются вместе с документом.

Открытые области кода заключаются программой внутрь специальных дескрипторных скобок, которые с точки зрения языка гипертекстовой разметки представляют собой комментарии. Следующий фрагмент дает пример оформления пустой редактируемой области из примера, приведенного на рис. 14.2:

<!— #BeginEditable “Empty” —>{Empty}<!— #EndEditable —>

Цвета служебной разметки шаблонов, установленные по умолчанию, можно изменить.

  1. Дайте команду Edit > Preferences (Правка > Настройки), которая открывает доступ к базовым настройкам программы.
  2. В диалоговом окне Preferences (Настройки) перейдите в раздел Highlighting (Выделение).
  3. Установите необходимые цвета в разделах Editable Regions (Редактируемые области) и Locked Regions (Заблокированные области).
  4. Завершите процедуру щелчком на кнопке ОК.

Служебная разметка шаблонов отображается на экране только при выполнении двух условий. Во-первых, в диалоговом окне настроек программы должны быть установлены флажки Editable Regions (Редактируемые области) и Locked Regions (Заблокированные области). Во-вторых, надо разрешить отображение вспомогательных элементов макета страницы. Это можно сделать с помощью команды View > Visual Aids > Invisible Elements (Вид > Служебная разметка > Скрытые элементы).

14.4. Создание документов по шаблонам

Программа Dreamweaver поддерживает различные стратегии использования шаблонов как образцов для оформления гипертекстовых документов. Так, шаблон можно выбрать в качестве стартовой точки для нового документа или применить его к созданному документу.

Техническая сторона процедуры создания нового документа не представляет каких-либо сложностей. Самая серьезная проблема, которую предстоит решить автору нового документа, — это вопрос о целесообразности сохранения связи с родительским шаблоном. При этом следует принять во внимание множество факторов: цель проекта, условия эксплуатации Web-узла, частота обновления страниц, функции документа и многое другое.

Рассмотрим имеющиеся альтернативы. Если эту связь сохранить, то изменения шаблона переносятся на все документы, созданные на его основе. Данный режим установлен в программе по умолчанию. Если связь разорвать, то новые документы создаются как простые копии шаблонного образца. Они не делятся на блокированные и редактируемые области, не получают служебной разметки и нечувствительны к изменениям родительского образца.

Механизм связи с шаблоном определяется флажком Update Page when Template Changes (Обновлять страницу при изменении шаблона). Этот флажок расположен в диалоговом окне, которое программа отображает при создании нового документа.

Создать новый документ на основе разработанного шаблона можно следующим образом.

  1. Дайте команду File > New From Templates (Файл > Создать документ на основе шаблона). По этой команде отображается диалоговое окно Select Template
  2. (Выбор шаблона) (рис. 14.3), в котором следует выполнить все необходимые настройки. Рассмотрим их.

  3. Щелкните на кнопке Select (Выбрать) или нажмите клавишу ENTER.

Puc. 14.3. Диалоговое окно создания нового документа

Есть и иной способ решения этой задачи. Можно создать новый документ, например командой File > New (Файл > Создать), а затем применить к нему один из шаблонов палитры Assets (Ресурсы).

Применить разработанный шаблон к существующему документу можно следующим образом.

  1. Откройте документ.
  2. Дайте команду применения шаблона. Это можно сделать несколькими способами.

Что происходит с документом после применения к нему шаблона? Проще всего предвидеть последствия шаблонного форматирования пустого документа. Эта операция превращает его в почти точную копию родительского образца. Небольшая разница состоит в том, что открытые и закрытые области, которые в шаблоне имели этот статус номинально, действительно превращаются в редактируемые и блокированные фрагменты отформатированного документа.

Ситуация немного осложняется при применении шаблона к документу с непустым содержимым. В этом случае он наследует дизайн и планировку выбранного образца, а его прежнее информационное наполнение конвертируется в общую редактируемую область. Программа предлагает выбрать одну из существующих областей шаблона для сохранения исходного контента. Для этого отображается диалоговое окно Choose Editable Region for Orphaned Content (Выбрать редактируемую область для непривязанного содержимого), в котором перечислены имена всех редактируемых областей. Пользователь может выбрать любую их них  или отказаться от сохранения контента, выбрав пункт (попе) (Нет).

Самые большие проблемы возникают при применении шаблона к документу, созданному на основе другого шаблона. Правила трансляции строятся на соответствии редактируемых областей документа и нового образца. Все открытые области документа получают новое оформление, заимствованное от “одноименных источников” шаблона. Области, для которых не нашлось подобных аналогов, считаются потерянными (orphaned). Программа предлагает записать их содержимое в одну из редактируемых областей нового шаблона. Заблокированные области документа удаляются, а к документу добавляются все закрытые зоны нового образца. Новые открытые области, которые не имеют аналогов в рабочей области документа, добавляются без каких-либо изменений.

Переформатирование больших документов по новому шаблону — это рискованная процедура. Вероятность ошибки резко возрастает с увеличением числа редактируемых областей и усложнением дизайна. Если применение нового образца не привело к ожидаемым результатам, то процедуру можно отменить командой Edit > Undo Apply Templates (Правка > Отменить применение шаблона) или при помощи стандартной клавиатурной комбинации CTRL+Z.

Все открытые области документа, которые не имеют одноименных аналогов на новом шаблоне, записываются в одну редактируемую область. Имя этой области надо выбрать в диалоговом окне Choose Editable Region for Orphaned Content (Выбрать редактируемую область для не привязанного содержимого), показанном на рис. 14.4. Если требуется оформить по новому образцу документ с развитой системой редактируемых областей и богатым форматированием, целесообразно ввести в состав шаблона специальную область для хранения всех потерянных областей.

Можно назвать типичной ситуацию, когда все попытки внести изменения в редактируемую область документа оканчиваются неудачей. Самой вероятной причиной этого является некорректное определение в шаблоне границ открытой области. Так, область станет недоступной, если определить ее границы по невидимым дескрипторам: <font>, <img> и пр.

14.5. Обновление документов

Ранее неоднократно отмечалось, что изменения шаблона влекут за собой согласованные изменения документов, созданных на его основе. Изменения шаблона вступают в действие после сохранения новой версии. После этой операции программа предложит выполнить обновление связанных страниц. Для настройки процедуры обновления выводится диалоговое окно Update Pages (Обновление страниц), показанное на рис. 14.1. Работа с этим окном рассматривалась в начале этой главы в разделе “Создание шаблонов”.

Шаблоны можно открывать как обычные гипертекстовые документы командой File > Open (Файл > Открыть). Кроме того, программа располагает специализированной командой открытия шаблонов. Чтобы загрузить в окно документа шаблон текущей страницы, следует дать команду Modify > Templates > Open Attached Template (Изменить > Шаблоны > Открыть присоединенный шаблон).

В любой момент работы с гипертекстовым документом можно применить те изменения, которые внесены в шаблон, но по каким-то причинам не распространены на Web-страницу. Для этого следует дать команду Modify > Templates > Update Pages (Изменить > Шаблоны >> Обновить страницы) или Modify > Templates > Update Current Page (Изменить > Шаблоны > Обновить текущую страницу).

Эти способы обновления отличаются от описанных в начале данного раздела только одной деталью. Процедуру обновления надо запустить щелчком по кнопке Start (Начать) в диалоговом окне Update Pages (Обновление страниц).

Гипертекстовые страницы, которые создаются командой File > New (Файл > Создать) — это пустые документы, полностью лишенные каких-либо элементов декоративного оформления. Применительно к этим объектам представление о форматировании по шаблону кажется лишенным оснований. На самом деле такие страницы создаются на основе единого образца, которым является шаблон с именем Default.htm. Он расположен в папке Configuration\Templates, вложенной в папку, в которую установлена программа. Этот документ можно открыть обычным для программы Dreamweaver способом и внести в него необходимые коррективы. Сделанные правки переносятся на все новые страницы.

Hosted by uCoz