Добавление страницы
POST /core/pages/items/add
Описание
Этот эндпоинт позволяет создать новую страницу с заданными параметрами, включая SEO-настройки и пользовательские поля. Ответ содержит данные созданной страницы.
Параметры запроса
Обязательные параметры:
- name — название страницы
- url — URL страницы
- fields — массив пользовательских полей
- seo — массив SEO-настроек
Пример:
POST
/core/pages/items/add
Отправляемы данные FormData:
1{
2 "name": "contacts",
3 "url": "contacts-page",
4 "title": "Contact Us",
5 "seo": [
6 {
7 "name": "title",
8 "type": "text",
9 "value": "Contact Us Page"
10 },
11 {
12 "name": "description",
13 "type": "text",
14 "value": "This is the contact us page description."
15 }
16 ],
17 "fields": [
18 {
19 "name": "background",
20 "type": "color",
21 "value": "#f0f0f0"
22 },
23 {
24 "name": "layout",
25 "type": "text",
26 "value": "default"
27 }
28 ],
29 "active": true
30}Ответ
Возвращается в формате JSON и содержит следующие ключевые поля:
- id — Уникальный идентификатор страницы (генерируется автоматически).
- name — Название страницы.
- url — URL страницы.
- title — Заголовок страницы.
- seo — Массив SEO-настроек страницы.
- fields — Массив пользовательских полей страницы.
- active — Статус активности страницы (true / false).
- hits — Количество обращений к странице.
- sort — Порядок сортировки страницы.
POST
/core/pages/items/add
При успешном запросе, ответ будет выглядеть так:
1{
2 "status": "success",
3 "payload": {
4 "id": 452,
5 "name": "about",
6 "url": "about-us",
7 "title": "About Us",
8 "seo": [
9 {
10 "name": "title",
11 "type": "text",
12 "value": "About Us Page"
13 },
14 {
15 "name": "description",
16 "type": "text",
17 "value": "Description of the about us page."
18 }
19 ],
20 "fields": [
21 {
22 "name": "layout",
23 "type": "text",
24 "value": "single-column"
25 },
26 {
27 "name": "backgroundColor",
28 "type": "color",
29 "value": "#ffffff"
30 }
31 ],
32 "active": true,
33 "hits": 10,
34 "sort": 50,
35 "createdAt": "2024-11-24T17:45:00.000Z",
36 "updatedAt": "2024-11-24T17:45:00.000Z"
37 }
38}Интерфейс
1interface IPages {
2 id: number | null;
3 name: string;
4 url: string;
5 title: string;
6 seo: any[];
7 fields: Fields;
8 active: boolean;
9 hits: number;
10 sort: number;
11}
12
13interface Fields {
14 [key: string]: {
15 type: string;
16 value: any;
17 };
18}