Шаблонизатор упрощает работу с кодом
Для удобства работы с исходным кодом страниц используется шаблонизатор Simpla!, который представляет собой упрощенную версию известного шаблонизатора Smarty.
{$var} - переменная
{$ar.title} - элемент массива
{$var|red} - переменная с модификатором (подсвечивает красным цветом)
{assign var="name" value="Ivan"} - создает переменную name со значением Ivan
{foreach key="k" value="v" from=$array}
{$k}:{$v}
{/foreach}
{if empty($v)}
Пустая переменная
{else}
Переменная есть: {$v}
{/if}
Функция вывода изображения. С помощью этой функции можно вывести изображения произвольного размера, указав нужный размер в параметрах. При выводе проверяется наличие изображения в заданном размере, а если его нет в кэше, то оно создается и сохраняется.
Изображения по умолчанию сохраняются в папке /upload/images/. Можно один из размеров указать = 0, тогда этот размер будет пропорционально рассчитан в зависимости от другого.
Важно, путь к файлу нужно указывать относительно пути от корня сайта, без домена. Например, используя в массиве значение $file.11.path
{img url=$file.11.path width=300 height=200}
Параметры, передаваемые в функцию
url - путь до изображения
width - ширина
height - высота
folder - папка, если надо изменить стандартную (по умолчанию используется /upload/images/)
rewrite - если требуется переписать изображение в кэше
quality - от 0 до 100, по умолчанию 60
webp_quality - качество изображения webp, по умолчанию 70
assign - название получаемого массива (по умолчанию $img)
Получаемый массив данных
src - ссылка на изображение от корня сайта (без домена)
path - полный путь к файлу изображения
width - ширина
height - высота
mime - миме-тип
sizes - описание размера
webp_path - путь до изображения webp
webp_src - ссылка на изображение от корня сайта
Для работы функции требуется последняя версия файла /module/list_photos.php, библиотека обработки изображений /module/resize/, а также функция шаблонизатора function.img.php.
В случае возникновения сбоев в работе - проверить активирована ли функция imagewebp() в серверной версии PHP. Если трудность с удалением-обновлением файлов, то проверить под какими правами создаются файлы. Должны создаваться под правами пользователя.
Функцией lang можно выводить в шаблоне значения из подключаемых языковых файлов. Простейший пример, вывод элемента массива, можно указать от 1 до 3-х элементов, перечислив их в шаблоне - key1, key2, key3.
{lang key1="admin" key2="user" key3="edit"}
Для склонения существительного с числительным нужно создать переменную, указав формы слова с числами 1, 4 и 5. В языковом файле пишем:
$lang['comment'] = array('Отзыв', 'Отзыва', 'Отзывов');
В шаблоне вывод осуществляется так:
{lang word="comment" qty=$page.list_comments|@count}
Другие функции:
array_pop
array_shift
counter
cycle
in_array
math
popup
Примеры: {counter start=0 skip=2 print=false assign="cnt"} { cycle values="#eeeeee,#d0d0d0" } { math equation="x + y" x=4.4444 y=5.0000 format="%.2f" assign="summ"}
Подсвечивает красным цветом переменную, добавляя <span></span>
Возвращает строку, в которой все буквенные символы переведены в верхний регистр
Возвращает строку, в которой все буквенные символы переведены в нижний регистр
Проверяет наличие переменной в массиве и возвращает в переменную значение.
{ in_array array=$array match=$id returnvalue="CHECKED" assign="ch"}
Если в массиве $array этого примера будет найдено значение $id, то переменная $ch пример значение CHECKED. В противном случае она будет пуста.
Выводит название месяца буквами. Можно указать язык, задать регистр выводимых букв - строчные, прописные или только первая буква заглавная (lower, upper или ucfirst). Модификатор months выводит месяц в родительном падеже, а month - в именительном. Так, {2|months:"ru"} выведет - февраля, а {2|month:"ru"} - февраль.
{$str|months:"ru" }
{$str|months:"ru":"ucfirst" }
{$str|month:"ru":"upper" }
Возвращает строку, в которой первый символ каждого слова переведен в верхний регистр, если этот символ является буквой
Преобразует дату в заданный вид.
Можно использовать текущую дату для форматирования, например, { $simpla[NOW]|date:"Y" } - текущий год.
Обрезает строку. Можно задать длину строки для обрезания, чем заканчивается обрезанная часть и обрезать ли слова. По умолчанию обрезается строка более 80 символов.
{$str|truncate }
{$str|truncate:50:"..." }
{$str|truncate:50:"...":true }
Возвращает последний ключ массива. Удобно использовать для поиска в массиве последнего элемента. Пример использования: {$array|@lastkey}
Форматирует строку $str, разбивая ее на фрагменты $length и вставляя между ними символ $delimiter {$str:4:"-"}
Задает цвет {$var|color:'#cccccc;'}
Сравнивает переменную со значением и возвращает первое, если равно и второе, если нет - {$value.type|compare:"int":"OK":"---"}. Второе можно опустить, тогда ничего не возвращает.
Передает для замены строку или массив (значения через запятую). Если на что менять не задано, то просто удаляет совпадения
Форматирует число. 1024 -> 1Kb; 1059000 -> 1,5Mb и т.д.
Аналог функции number_format, выводит отформатированное число. Дополнительно можно указать 3 значения:
Вид рубля
Вид евро
Вид доллара США
bitrix (3) шаблон (3) mobile (2) pagespeed (2) simpla (2) блоки (2) переменные (2) cms (1) email (1) google merchant center (1) hosting (1) seo (1) wordpress (1) валюты (1) константы (1) мобильная версия (1) платежи (1) посетители (1) рассылка (1) сравнение (1) теги (1) фильтр (1) шаблоны (1) яндекс маркет (1)