DevCraft Документации
Справочник

SDK (DcApi) v200.1.1

Шпаргалка DcApi: фасады Schema, query, xfields. Код SDK — в DevCraft Admin, не в пакете DLE API.

DcApi — точка входа внутри того же PHP, что и сайт (не HTTP-клиент к /api/v2, без Bearer). Код лежит в DevCraft Admin (devcraft/src/sdk/dle/, namespace DevCraft\Dle\{Schema,Fluent,Xfield,Sdk}), пакет DLE API его только потребляет.

Пошаговые сценарии: гайд SDK. Выбор слоя: Слои данных Admin.

Грузится вместе с devcraft/init.php — отдельный bootstrap и установленный DLE API не нужны:

require_once DLEPlugins::Check(ROOT_DIR . '/devcraft/init.php');

Фасады

МетодНазначение
DcApi::news()Новость (post) + nested
DcApi::user()Пользователь
DcApi::comment()Комментарий
DcApi::conversation()Переписка
DcApi::plugin()Плагин
DcApi::file() / DcApi::file('images')Файлы / изображения
DcApi::staticPage()Статическая страница
DcApi::schema('banners')Builder по имени таблицы
DcApi::query('post')SELECT / фильтры
DcApi::xfield(…) / DcApi::modifyXfield('post')Доп. поля каталога

Минимальный пример:

DcApi::news()->withTitle('Заголовок')->withCategory([1, 2])->create();
DcApi::query('post')->where('category', '1')->fetchAll();

Мост в QueryBuilder

Equality-запрос переносится в generic-слой Admin и обратно:

DcApi::query('post')->where('approve', '1')->limit(10)->toQueryBuilder()->load();
DevCraft\Dle\Fluent\TableQuery::fromQueryBuilder(QueryBuilder::create('users')->withLimit(5))->fetchAll();

Ограничения и выбор слоя: Слои данных Admin.

См. также

На этой странице