Jump to content

Плагины шаблонов

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

Синтаксис плагинов шаблонов:

{pluginkey="<value>" argument="..."}

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

Доступные плагины

{advertisement="$location"}
HTML для указанное местоположения рекламы.

Параметры
$location - допустимое расположение рекламного блока.

 

{datetime="$timestamp" dateonly="[boolean]" norelative="[boolean]" lowercase="[boolean]" short="[boolean]"}Отображает время, отформатированное в соответствии с локалью пользователя

Параметры
$timestamp - временная метка (timestamp), преобразованная в дату;
dateonly - отображает только дату (без времени);
norelative - по умолчанию,  будет использоваться относительное время (например 5 часов назад). Чтобы всегда показывалось абсолютная дата/время, установите значение в true;
lowercase - по умолчанию, строчка даты будет начинаться с заглавной буквы, где это необходимо (например, Вчера, 11:49). установка параметра в true приведёт к нижнему регистру, для использования в предложении;
short - использует очень короткий формат даты (для мобильных устройств).

 

{expression="$expression" raw="[boolean]"}
Позволяет вставлять результат произвольных PHP выражений в шаблоны. Выводится результат выражения.

Может быть использован в CSS файлах.

Параметры
$expression - действительное выражение PHP, которое обеспечивает вывод чего-то;
raw - по умолчанию, результат выражения экранирован. Установка данного параметра в значение true выводит исходный результат. Будьте осторожны! Это может представлять угрозу для безопасности.

 

{file="$file" extension="[string]"}
Выводит URL адрес файла, хранимого классом обработки файлов IPS4.

Может быть использован в CSS файлах.

Параметры
$file - любой экземпляр класса \IPS\File, или строка, представляющая хранимый URL адрес файла;
extension - расширение хранения файлов, используемое хранения оригинального файла, например calendar_Events. Если не указано, предполагается core_Attachment.

 

{filesize="$sizeInBytes" decimal="[boolean]"}
Форматирует указанный filesize и выводит соответствующую удобочитаемую форму.

Параметры
$sizeInBytes - целое число, представляющее размер файла в байтах, которое должно быть отформатировано;
decimal - должно ли filesize быть рассмотренным в КБ (то есть 1кб = 1024 байт) или 1 = 1000. Все значения всегда округляются до одного знака после запятой.

 

{insert="$filename"}
Включает файл PHP скрипта.

Параметры
$filename - Название файла PHP скрипта для вставки. Вывод файла буферизируется и отображается.

 

{lang="$languageKey" sprintf="[string]" htmlsprintf="[string]" pluralize="[string]" wordbreak="[boolean]" ucfirst="[boolean]"}
Вставляет фразу из языковой системы в выбранном пользователем языке.

Параметры
$languageKey - ключ языковой фразы для вставки;
sprintf - разделённый запятыми список значений для замены в языковой строке. Эти значения HTML экранизированы;
htmlsprintf - разделённый запятыми список значений для замены в языковой строке. Эти значение не HTML экранизированы. Будьте осторожны!
pluralize - разделённый запятыми список значений для передачи любых плюрализационных выражений в языковую строку;
wordbreak - если true, добавляет теги <wbr> к возвращаемой строке для предотвращения строк, нарушающих ширину страницы;
ucfirst - определяет, должен ли быть первый символ строки в верхнем регистре.

 

{member="$propertyToDisplay" id="[integer]" group="[boolean]" raw="[boolean]"}
Выводит свойство или результат метода, вызываемого в объекте пользователя.

Параметры
$propertyToDisplay - Одно из свойств или методов, доступных в объекте пользователя. Например: link() или name.
id - ID пользователя для загрузки и отображения. Если не указано, используется текущий пользователь.
group - Если true, данный тег работает вместо группы пользователя (и поэтому $propertyToDisplay должен быть свойств или методов группы).
raw - по умолчанию, возвращённый вывод HTML экранирован. Установка этого параметра в true подразумевает, что вывод не будет экранирован. Будьте осторожны с этим!

 

{number="$number"}

Форматирует число согласно локали пользователя (например, с помощью запятых или периодов).

Параметры
$number - число для форматирования.

 

{prefix="$CSSPropertyName" value="[string]"}
Короткий тег, который подставляет префикс к переданному CSS свойству.

Может быть использован в CSS файлах.

Параметры
$CSSPropertyName - название свойства для префикса. Поддерживаемые свойства: transition, transform, animation, animation-name, animation-duration, animation-fill-mode, animation-timing-function, user-select, box-sizing, background-size.
value - значение CSS свойства.

 

{request="$requestParameter" raw="[boolean]"}

Вставляет значение параметра запроса.

Параметры
$requestParameter - параметр из объекта запроса для вставки;
raw - по умолчанию, возвращаемое значение HTML экранировано. Если этот параметр установлен в true, вывод не будет HTML экранирован. Будьте осторожны с этим!

 

{resource="$path" app="[string]" location="[string]" noprotocol="[boolean]"}
Возвращает абсолютный URL адрес указанного ресурса.

Может быть использован в CSS файлах.

Параметры
$path - относительный путь к запрашиваемому ресурсу (пусть относительно директории /resource текущей темы);
app - приложение, к которому принадлежит ресурс;
location - Местоположение (front/admin/global);
noprotocol - делает результирующий URL адрес без протокола (то есть не включает http:// или https:// в начале, может быть полезен для ресурсов, которые не могут быть загружены по http или https протоколу).

 

{setting="$settingKey" escape="[boolean]"}
Вставляет значение настройки системы.

Может быть использован в CSS файлах.

Параметры
$settingKey - ключ настройки для вставки;
escape - по умолчанию выводится исходное значение. Если вам нужно получить HTML экранированное значение, передайте true для этого параметра.