SantaFox: Пользовательские функции

CMS SantaFox имеет возможность вызывать функции из шаблона.
Допустим у нас есть php-функция возвращающая значение из GET массива по ключу:

Для того, чтобы вызвать эту функцию необходимо прописать в шаблоне конструкцию следующего вида:

Для функции v_get() это будет выглядеть так:

Данная конструкция после обработки шаблона будет заменится на значение элемента $_GET[“itemid”], если оно существует.

Для того, чтобы функцию можно было вызывать из шаблона, необходимо описать её в одном из файлов в каталоге /user_function. Ограничение на количество файлов в данном каталоге и на количество функций в одном файле в движке не накладываются.

Пользовательские функции обрабатываются в самую последнюю очередь — после работы всех модулей и постпроцессоров.

Функции можно передать только один параметр! Для передачи нескольких параметров используйте какие-нибудь разделители, по которым потом будете делить строку. Например, функция сложения двух чисел:

В качестве разделителя используется «,».

Теперь, чтобы вызвать эту функцию необходимо в шаблоне написать:

SF-user_function_1

На странице будет отображено следующее:

SF-user_function_2

А теперь для более наглядной демонстрации гибкости, можно объединить выше описанные две функции:

В результате, если перейти по адресу c GET параметрами a=17.5 и b=-33, будет следующий результат:

SF-user_function_3

 

Если у кого-то есть вопросы по SantaFox буду рад ответить на них или даже написать статью. Являюсь одним из разработчиков данной CMS (логирование, редиректы, пользовательские функции).