API: Универсальный модуль
Метод module позволяет получить список модулей.
Параметры запроса: нет параметров.
Пример вызова:
$this->smartriver->module();
Пример ответа:
Array
(
[status] => ok
[message] => success
[response] => Array
(
[0] => Array
(
[id] => 1
[name] => Галерея
[link] => gallery
[sort] => 1
[active] => 1
)
[1] => Array
(
[id] => 2
[name] => Блог
[link] => blog
[sort] => 2
[active] => 1
)
)
)
Метод module_item позволяет получить страницы модуля.
Параметры запроса (передаются в массиве):
module |
ID модуля, по которому идет выборка. ID можно получить с помощью метода module либо в админ. панели SE4 |
Тип |
integer |
Значение по умолчанию
|
нет |
where |
условия для выборки из БД |
Тип |
array |
Возможные значения |
любой допустимый набор пар ключ-значение для корректного sql запроса, например array('id' => 1) будет соответствовать записи "WHERE id=1" |
Значение по умолчанию |
нет |
where_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его возможные значения для построения запроса вида WHERE catalog.id IN (10, 20, 30). |
Значение по умолчанию |
нет |
where_not_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE NOT IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его исключенные значения для построения запроса вида WHERE catalog.id NOT IN (10, 20, 30). |
Значение по умолчанию |
нет |
limit |
ограничение по количеству вывода данных
|
Тип |
integer |
Значение по умолчанию |
нет |
offset |
сдвиг для построения пагинации |
Тип |
integer |
Значение по умолчанию |
нет |
order |
порядок вывода данных (сортировка) |
Тип |
string |
Возможные значения |
любая допустимая сортировка согласно БД, например 'name asc' будет соответствовать сортировке по имени от А до Я. Для сортировки по взрастанию используется asc, по убыванию - desc |
Значение по умолчанию |
нет |
extra |
дополнительные данные, которые необходимо получить |
Тип |
array |
Возможные значения |
массив с максимальным набором данных выглядит следующим образом array('part', 'params'), где part - разделы, params - значения доп. параметров данной страницы |
Значение по умолчанию |
нет |
Внимание! Для использования параметров where и order, а также для корректной обработки ответа, необходимо знать структуру таблицы, соответствующей данному методу. Для просмотра информации перейдите по ссылке.
Пример простейшего вызова:
$this->smartriver->module_item(['module' => 1]);
Пример вызова с параметрами:
$this->smartriver->module_item(['module' => 2, 'where' => ['id_part' => 4, 'active' => 1], 'extra' => ['part', 'params']]);
Пример ответа:
Array
(
[status] => ok
[message] => success
[response] => Array
(
[0] => Array
(
[id] => 10
[id_part] => 4
[id_module] => 2
[id_tpl] => 54
[name] => Тестирование модуля
[desc_short] =>
[desc_full] =>
[link] => testirovanie_modulya
[image] =>
[seo_title] =>
[seo_keywords] =>
[seo_description] =>
[sort] => 0
[active] => 1
[photo] => Array
(
)
[module] => Array
(
[id] => 2
[name] => Блог
[link] => blog
)
[part] => Array
(
[0] => Array
(
[id] => 4
[id_parent] => 2
[id_tpl] => 54
[name] => Тестовый раздел
[announce] =>
[description] =>
[link] => testovy_razdel
[image] =>
[sort] => 0
[active] => 1
)
)
[params] => Array
(
[0] => Array
(
[id] => 1
[key] => test
[name] => Тест
[type] => text
[section] => all
[sort] => 1
[active] => 1
[value] => 123
)
[1] => Array
(
[id] => 5
[key] => test_2
[name] => Тест 2
[type] => boolean
[section] => item
[sort] => 2
[active] => 1
[value] => 1
)
)
)
)
[settings] => Array
(
[default_photo] => /images/module/p4XIpAZ677tXB1D6AH1Y.jpg
[watermark] => /images/watermark/UUjIJD0uYeoTwBsf69U7.png
)
)
Помимо основных данных, выгружаются фото (photo) и данные модуля (module) для каждой страницы, а также, список настроек модуля (settings) в общем массиве данных (даже если выборка содержит 0 совпадений).
Настройки модуля содержат следующие параметры:
default_photo |
фото, которое используется по умолчанию, если фото к странице или разделу не было загружено |
watermark
|
водяной знак, который автоматически накладывается при загрузке фото через админ. панель SE4 |
Метод module_part позволяет получить разделы модуля.
Параметры запроса (передаются в массиве):
module |
ID модуля, по которому идет выборка. ID можно получить с помощью метода module либо в админ. панели SE4
|
Тип |
integer |
Значение по умолчанию |
нет |
where |
условия для выборки из БД
|
Тип |
array |
Возможные значения |
любой допустимый набор пар ключ-значение для корректного sql запроса, например array('id' => 1) будет соответствовать записи "WHERE id=1" |
Значение по умолчанию |
нет |
where_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его возможные значения для построения запроса вида WHERE catalog.id IN (10, 20, 30). |
Значение по умолчанию |
нет |
where_not_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE NOT IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его исключенные значения для построения запроса вида WHERE catalog.id NOT IN (10, 20, 30). |
Значение по умолчанию |
нет |
limit |
ограничение по количеству вывода данных
|
Тип |
integer |
Значение по умолчанию |
нет |
offset |
сдвиг для построения пагинации
|
Тип |
integer |
Значение по умолчанию |
нет |
order |
порядок вывода данных (сортировка)
|
Тип |
string |
Возможные значения |
возможные значения - любая допустимая сортировка согласно БД, например 'name asc' будет соответствовать сортировке по имени от А до Я. Для сортировки по взрастанию используется asc, по убыванию - desc |
Значение по умолчанию |
нет |
extra |
дополнительные данные, которые необходимо получить
|
Тип |
array |
Возможные значения |
массив с максимальным набором данных выглядит следующим образом array('params'), где params - значения доп. параметров данного раздела |
Значение по умолчанию |
нет |
Внимание! Для использования параметров where и order, а также для корректной обработки ответа, необходимо знать структуру таблицы, соответствующей данному методу. Для просмотра информации перейдите по ссылке.
Пример простейшего вызова:
$this->smartriver->module_part(['module' => 1]);
Пример вызова с параметрами:
$this->smartriver->module_part(['module' => 2, 'where' => ['active' => 1], 'extra' => ['params']]);
Пример ответа:
Array
(
[status] => ok
[message] => success
[response] => Array
(
[0] => Array
(
[id] => 1
[id_parent] => 0
[id_module] => 2
[id_tpl] => 32
[name] => Раздел блога
[announce] =>
[description] =>
[link] => razdel_bloga
[image] =>
[seo_title] =>
[seo_keywords] =>
[seo_description] =>
[sort] => 1
[active] => 1
[photo] => Array
(
)
[params] => Array
(
[0] => Array
(
[id] => 1
[key] => test
[name] => Тест
[type] => text
[section] => all
[sort] => 1
[active] => 1
[value] =>
)
)
)
)
)
Метод module_item_count позволяет подсчитать количество страниц модуля по заданной выборке для построения пагинации.
Параметры запроса (передаются в массиве):
module |
ID модуля, по которому идет выборка. ID можно получить с помощью метода module либо в админ. панели SE4 |
Тип |
integer |
Значение по умолчанию |
нет |
where |
условия для выборки из БД |
Тип |
array |
Возможные значения |
любой допустимый набор пар ключ-значение для корректного sql запроса, например array('id' => 1) будет соответствовать записи "WHERE id=1" |
Значение по умолчанию |
нет |
where_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его возможные значения для построения запроса вида WHERE catalog.id IN (10, 20, 30). |
Значение по умолчанию |
нет |
where_not_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE NOT IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его исключенные значения для построения запроса вида WHERE catalog.id NOT IN (10, 20, 30). |
Значение по умолчанию |
нет |
Внимание! Для использования параметра where необходимо знать структуру таблицы, соответствующей данному методу. Для просмотра информации перейдите по ссылке.
Пример простейшего вызова:
$this->smartriver->module_item_count(['module' => 1]);
Пример вызова с параметрами:
$this->smartriver->module_item_count(['module' => 2, 'where' => ['id_part' => 4, 'active' => 1]]);
Пример ответа:
Array
(
[status] => ok
[message] => success
[response] => 3
)
Метод module_part_count позволяет подсчитать количество разделов модуля по заданной выборке для построения пагинации.
Параметры запроса:
module |
ID модуля, по которому идет выборка. ID можно получить с помощью метода module либо в админ. панели SE4 |
Тип |
integer |
Значение по умолчанию |
нет |
where |
условия для выборки из БД |
Тип |
array |
Возможные значения |
любой допустимый набор пар ключ-значение для корректного sql запроса, например array('active' => 1) будет соответствовать записи "WHERE active=1" |
Значение по умолчанию |
нет |
where_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его возможные значения для построения запроса вида WHERE catalog.id IN (10, 20, 30). |
Значение по умолчанию |
нет |
where_not_in |
условия для выборки из БД (аналог SQL синтаксиса WHERE NOT IN) |
Тип |
array |
Возможные значения |
принимается массив из 2х значений, где первое - поле в таблице, а второе - его исключенные значения для построения запроса вида WHERE catalog.id NOT IN (10, 20, 30). |
Значение по умолчанию |
нет |
Внимание! Для использования параметра where необходимо знать структуру таблицы, соответствующей данному методу. Для просмотра информации перейдите по ссылке.
Пример простейшего вызова:
$this->smartriver->module_part_count(['module' => 1]);
Пример вызова с параметрами:
$this->smartriver->module_part_count(['module' => 2, 'where' => ['id_parent' => 0, 'active' => 1]]);
Пример ответа:
Array
(
[status] => ok
[message] => success
[response] => 2
)