Фронт-энд

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску

Фронт-энд — это страницы системы, отображаемые пользователям в процессе осуществления поиска, бронирования, оплаты, аннуляции и т.п. Фронт-энд не предоставляет пользователями возможностей изменения каких-либо настроек системы.

Макеты страниц в Nemo.Travel

Макет страницы — это некая сущность, определяющая, какие данные будут отображаться на странице фронт-энда, построенной на основе данного макета, также задает HTML-верстку для размещения этих данных путем назначения шаблона каждому макету страницы. Для редактирования макетов страниц используется раздел Управление сайтом → Nemo CMS → Макеты страниц.

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

Настройки макета страницы

  • Заголовок — заголовок макета страницы.
  • Описание — описание макета страницы.
  • Родитель — владелец страницы в иерархической структуре (используется для наследования элементов макетов страниц).
  • Шаблон — шаблон HTML с версткой данного макета страницы.
  • Режим создания элементов страницы — при формировании выходного потока во фронт-энд на основе макета страницы сперва загружаются элементы всех макетов, начиная с корневого и до текущего, кроме тех, у которых данный параметр установлен в значение «Не наследовать далее», и лишь после этого — элементы текущего макета.
  • Включено — включить или выключить макет страницы.

При нажатии на заголовок макета в структуре, отображается список элементов данного макета.

Шаблоны макетов страниц

Макет страницы отвечает за формирование выходного HTML-потока во фронт-энд. Для этого применяется шаблон, в ключевые места которого макет страницы может разместить HTML-поток какого-либо элемента страницы и/или блока элементов.

Для этого используются функции {cms_render_block id=ID блока} и {cms_render_element id=ID элемента}.

Пример шаблона макета страницы:

<table width="100%" >
<tr>
<td colspan="3">{cms_render_block id=1}</td>
</tr>
<tr>
<td>{cms_render_element id=1}</td>
<td>{cms_render_element id=2}</td>
<td>{cms_render_element id=3}</td>
</tr>
<tr>
<td colspan="3">{cms_render_block id=2}</td>
</tr>
</table>
Внимание! URL для доступа к фронт-энду из браузера имеет следующий формат: http://sitedomain/index.php?go=content&page=ID[&param1=&...&paramN=], где ID — идентификатор макета страницы, который должен быть отображен (если он не задан, то используется значение по умолчанию), sitedomain – домен, который задан в настройках агентства.

Переменные и выражения, доступные в шаблонах макета страницы

Имя переменной Значение
{$site} Настройки сайта
{$page} Настройки макета страницы
{$title} Заголовок макета страницы
{$page_path} Массив настроек макетов страниц от корневого до текущего
{$elements} Массив настроек элементов текущей страницы с учетом наследования
{$blocks} Массив настроек блоков элементов сайта
{foreach from=$data item=field key=key}{$key}={$field}
{/foreach}
Вывод элементов массива (в шаблоне макета страницы для вывода всех полей настроек соответствующего объекта вместо “data” могут применяться “site”, “page”)
Настройки сайта
{$site.site_title} Заголовок сайта
Настройки макета страницы
{$page.page_title} Заголовок шаблона страницы
{$page.page_description} Описание шаблона страницы
{$page.date_create} Дата создания
{$page.elements_count} Количество элементов
{$page.page_template} Шаблон
{$page.template_title} Заголовок шаблона
Имя переменной Значение
{$site} Настройки сайта
{$page} Настройки макета страницы
{$title} Заголовок макета страницы
{$page_path} Массив настроек макетов страниц от корневого до текущего
{$elements} Массив настроек элементов текущей страницы с учетом наследования
{$blocks} Массив настроек блоков элементов сайта
{foreach from=$data item=field key=key}{$key}={$field}<br>{/foreach} Вывод элементов массива (в шаблоне макета страницы для вывода всех полей настроек соответствующего объекта вместо “data” могут применяться “site”, “page”)
Настройки сайта
{$site.site_title} Заголовок сайта
Настройки макета страницы
{$page.page_title} Заголовок шаблона страницы
{$page.page_description} Описание шаблона страницы
{$page.date_create} Дата создания
{$page.elements_count} Количество элементов
{$page.page_template} Шаблон
{$page.template_title} Заголовок шаблона

См. также