Специальные переменные
Материал из Документация NGCMS
$template - Переменная содержит в себе массив. Используется для вывода или скрытия данных в шаблоне main.tpl.
- $template['vars']['ТЕГ_ВЫВОДИМЫЙ_В_ШАБЛОН']
- $template['regx']['РЕГ_ВЫРАЖЕНИЕ']
Требует объявления как глобальный: global $template; Пример: Если нужно вывести.
if (!defined('NGCMS')) { die ('HAL'); } add_act('index', 'primer'); function primer() {global $template; $template['vars']['plugins_primer'] = 'Пример плагина'; }
И теперь если добавить тег {plugins_primer} в main.tpl он выведет: Пример плагина.
Скрыть что либо:
if (!defined('NGCMS')) { die ('HAL'); } add_act('index', 'primer'); function primer() {global $template; if(in_array($userROW)) $template['regx']['/\[plugin_primer\](.*?)\[\/plugin_primer\]/si'] = '$1'; else $template['regx']['/\[plugin_primer\](.*?)\[\/plugin_primer\]/si'] = ''; }
Помещаем в шаблон main.tpl [plugin_primer]То что здесь видит только автоматизироваться пользователь[/plugin_primer]
$mysql - Инстанс класса mysql, предназначен для работы с БД.
Требует объявления как глобальный: global $mysql;
$mysql->select('SQL_ЗАПРОС');
Array ( [0] => Array ( [0] => Данные [row] => Данные [1] => Данные_2 [row_2] => Данные_2 ) [1] => Array ( [0] => Данные [row] => Данные [1] => Данные_2 [row_2] => Данные_2 ) )
Доступен второй аргумент:
- 0 - массив, состоящий как из ассоциативных индексов, так и из численных.
- -1 - массив, состоящий только из числовых индексов.
- 1 - массив, состоящий только из ассоциативного соответствия.
$mysql->record('SQL_ЗАПРОС');
Array ( [0] => Данные [row] => Данные [1] => Данные_2 [row_2] => Данные_2 )
Доступен второй аргумент:
- 0 - массив, состоящий как из ассоциативных индексов, так и из численных.
- -1 - массив, состоящий только из числовых индексов.
- 1 - массив, состоящий только из ассоциативного соответствия.
$mysql->result('SQL_ЗАПРОС'); возвращает значение одной ячейки результата запроса.
$mysql->lastid('ИМЯ_ТАБЛИЦЫ'); возвращает ID, сгенерированный колонкой с AUTO_INCREMENT последним запросом INSERT к серверу.
$parse - Инстанс класса parse, предназначен для обработки BB кодов.
- $parse->bbcodes('ТЕКСТ') - Обрабатывает bb коды.
Требует объявления как глобальный: global $parse;
$lang - массив с загруженными переменными из языковых файлов. Требует объявления как глобальный: global $lang;
$SUPRESS_TEMPLATE_SHOW - флаг, при установке двиг не показывает шаблон, но показывает значение переменной $template[‘vars’][‘mainblock’] (основной блок данных). Требует объявления как глобальный: Требует объявления как глобальный: global $SUPRESS_TEMPLATE_SHOW;
$SUPRESS_MAINBLOCK_SHOW - флаг, при котором двиг не показывает основной блок данных. Установка обоих переменных используется в плагинах, которые полностью генерируют содержимое страницы. К примеру, плагин rss_show. Требует объявления как глобальный: global $SUPRESS_MAINBLOCK_SHOW;
$catz - Массив с категориями, в качестве ключа – альт. Имя категории, в качестве значения – вся SQL строка по данной категории (в виде массива ‘поле’ => ‘значение’). Требует объявления как глобальный: global $catz;
$catmap - Массив для более быстрого поиска по массиву $catz, данные хранятся в виде ‘ID категории’ => ‘альт. Имя категории’). Требует объявления как глобальный: global $catmap;
$userROW - Переменная, содержащая строку данных из SQL по текущему пользователю (если пользователь залогинен). Для проверки залогинен ли текущий пользователь можно использовать конструкцию if (is_array($userROW)) { print “Logged”; } else { print “Not logged”; }
Требует объявления как глобальный: global $userROW;
$SYSTEM_FLAGS - Внутренняя переменная движка, содержит массив системных флагов. Пользователю доступны следющие элементы:
- $SYSTEM_FLAGS['info']['title']['group'] - название группы.
- $SYSTEM_FLAGS['info']['title']['item '] - название элемента.
- $SYSTEM_FLAGS['meta']['description'] - Вывод описание в <meta name="description" content="ВАШЕ_ОПИСАНИЕ" />
- $SYSTEM_FLAGS['meta']['keywords'] - Выводит ключевые слова в <meta name="keywords" content="КЛЮЧЕВЫЕ_СЛОВА" />.
- $SYSTEM_FLAGS['template.main.name'] - Дает возможность подменить основной шаблон main.tpl на свой. Название шаблона указывается без расширения.
Требует объявления как глобальный: global $SYSTEM_FLAGS;
$ip - IP адрес пользователя.
Требует объявления как глобальный: global $ip;
$EXTRA_CSS - Внутренняя переменная системы.
Требует объявления как глобальный: global $EXTRA_CSS;
register_stylesheet($url) - Зарегистрировать таблицу стилей (CSS), она будет отображаться на каждой странице двига в шаблоне main.tpl в переменной {htmlvars} Функция – сокращённый способ вызова функции register_htmlvar(‘css’, $url).
register_htmlvar($type, $data) - Зарегистрировать (для отображения) HTML переменную. Доступные типы ($type):
- css – регистрация таблицы стилей, в качестве $data передаётся URL
- js – регистрация JS кода, в качестве $data передаётся URL
- rss – регистрация ссылки-указателя на RSS ленту для страницы, в качестве $data передаётся URL
- plain – прямой вывод значения из $data в HTML поток, применяется в случаях, когда необходимо вставить переменную с контентом, отличающимся от указанного выше набора (css/js/rss).
LoadPluginLang($plugin, $file, $group = , $prefix = , $delimiter = '_') - Загрузить языковой файл плагина. Языковой файл ищется в каталоге плагина в подкаталоге lang/ТЕКУЩИЙ_ЯЗЫК/
- $plugin – идентификатор плагина
- $file – имя файла (файл должен иметь расширение .ini, в функции указывается имя файла без расширения)
- $group – группа, в которой хранится необходимый языковой файл. Фактически – подкаталог относительно текущего каталога с языковыми файлами
- $prefix – префикс, добавляемый к переменным из языкового файла. Необходим для того, чтобы исключить пересечения с переменными движка или других плагинов. По умолчанию – идентификатор плагина
- $delimiter – разделитель между префиксом и именем переменной, по умолчанию – ‘_’

