Skip to content
Andrey Serebryakov edited this page Jun 16, 2011 · 3 revisions

Подключение сгенерированных шаблонов (Server Side Includes)

SSI (Server Side Includes) в представлении Movable Type — это возможность использовать в шаблонах стандартные теги MT, которые при публикации преобразуются в язык, указанный в атрибутах или настройках модуля. Проще всего будет понять на примере.

Примечание: все примеры в этой статье рассматриваются с использованием PHP. Но для всех языков программирования принцип работы один и тот же.

Пример

Предположим, у вас есть модульный шаблон Navigation, который должен присутствовать на каждой странице сайта. Так как, обычно, в навигации содержится множество данных, то их получение требует определённых затрат. При публикации множества страниц это может быть заметно. К тому же, сгенерированная таких образом навигация может отличаться на разных страницах. Поэтому желательно сгенерировать шаблон один раз, а затем включать его «на лету» в другие шаблоны.

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

<?php include("/home/user/example.com/docs/includes/navigation.php"); ?>
<mt:Include file="/home/user/example.com/docs/includes/navigation.php"/>

А с использованием SSI код в шаблоне будет выглядеть так:

<mt:Include module="Navigation"/>

Результат, который будет во всех шаблонах (кроме системных):

<?php include("/home/user/axample.com/docs/includes_c/navigation.php"); ?>

Плюсы SSI:

  • Простота использования.
  • Не нужно знать языков программирования.
  • Стандартные теги Movable Type.
  • Не нужно знать абсолютный путь на сервере.
  • Не нужно указывать разный код для обычных и системных шаблонов.

Поддерживаемые языки

Использование модуля

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

SSI

После активации модуля, будет доступно для варианта использования:

  • через параметры отдельного шаблона;
  • через атрибут тега <mt:Include/>.

Работа с SSI через параметры шаблона

Этот метод наиболее простой.

  • Откройте модульный шаблон, например, Navigation, а затем в его опциях активируйте «Включение на стороне сервера».
  • После этого во всех остальных шаблонах, куда при помощи тега <mt:Include/> будет включаться Navigation, будет генерироваться похожий код:
<?php include("/home/user/axample.com/docs/includes_c/navigation.php"); ?>

Работа с SSI через атрибут тега <mt:Include/>

На примере модуля «Navigation»:

  • В необходимом месте ваших шаблонов добавьте тег <mt:Include module="Navigation" ssi="php"/>
  • Это сгенерирует необходимый код.

Если в значении атрибута «ssi» указать «0», то шаблон, наоборот, не будет обрабатываться как SSI. Другие возможные значения атрибута ssi: php, asp, jsp, shtml.

Clone this wiki locally