-
Notifications
You must be signed in to change notification settings - Fork 1
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"); ?>
- Простота использования.
- Не нужно знать языков программирования.
- Стандартные теги Movable Type.
- Не нужно знать абсолютный путь на сервере.
- Не нужно указывать разный код для обычных и системных шаблонов.
- PHP
- [SHTML](http://ru.wikipedia.org/wiki/SSI_(программирование\))
- Active Server Pages (ASP)
- Java Server Pages (JSP)
Для использования модуля его необходимо активировать. Для этого перейдите к настройке публикации, а затем в пункте «Включение на стороне сервера» выберите тип включения.
После активации модуля, будет доступно для варианта использования:
- через параметры отдельного шаблона;
- через атрибут тега
<mt:Include/>
.
Этот метод наиболее простой.
- Откройте модульный шаблон, например, Navigation, а затем в его опциях активируйте «Включение на стороне сервера».
- После этого во всех остальных шаблонах, куда при помощи тега
<mt:Include/>
будет включаться Navigation, будет генерироваться похожий код:
<?php include("/home/user/axample.com/docs/includes_c/navigation.php"); ?>
На примере модуля «Navigation»:
- В необходимом месте ваших шаблонов добавьте тег
<mt:Include module="Navigation" ssi="php"/>
- Это сгенерирует необходимый код.
Если в значении атрибута «ssi» указать «0», то шаблон, наоборот, не будет обрабатываться как SSI.
Другие возможные значения атрибута ssi: php
, asp
, jsp
, shtml
.