Одна из главных фишек новой админки, это удобная и проста интеграция с другими плагинами.
Теперь плагины могут встраивать свой интерфейс прямо внутрь админки.
Рассмотрим основные технические моменты. Есть два варианта интеграции:
- Визуальное управление конфигом плагина
- Встраивание функционала в интерфейс админки (для более сложных плагинов)
Визуальное управление конфигом плагина
Все что нужно сделать, это описать так называемую схему конфига. Она состоит из двух частей — описание всех параметров конфига и описание групп/разделов параметров, которые формируют визуальную группировку на странице редактирование параметров.
Описание всех параметров задается в конфиге плагина в специальном ключе
$config_scheme$, например
$config['$config_scheme$'] = array(
'per_page' => array(
/*
* тип: integer, string, array, boolean, float
*/
'type' => 'integer',
/*
* отображаемое имя параметра, ключ языкового файла относительно плагина, или просто текст
*/
'name' => 'Количество элементов на страницу',
/*
* отображаемое описание параметра, ключ языкового файла относительно плагина, или просто текст
*/
'description' => 'config.per_page.description',
/*
* валидатор (не обязательно)
*/
'validator' => array(
/*
* тип валидатора, существующие типы валидаторов движка:
* Boolean, Compare, Date, Email, Number, Regexp, Required, String, Tags, Type, Url, + Array (специальный валидатор, см. документацию)
*/
'type' => 'Number',
/*
* параметры, которые будут переданы в валидатор
*/
'params' => array(
'min' => 1,
'max' => 20,
/*
* разрешить только целое число
*/
'integerOnly' => true,
/*
* не допускать пустое значение
*/
'allowEmpty' => false,
),
),
),
'param_string_1' => array(
'type' => 'string',
'name' => 'config.param_string_1.name',
'description' => 'config.param_string_1.description',
'validator' => array(
'type' => 'String',
'params' => array(
'min' => 5,
'max' => 50,
'allowEmpty' => true,
),
),
),
);
Читать дальше →