Настройки сайта
Настройки — это единый интерфейс для управления параметрами сайта: главной страницей, закрытием сайта, языками и счётчиками аналитики. Все настройки отдаёт один запрос GET /data/settings, а каждую меняет PUT /data/settings/{поле}. Подробнее о каждой настройке — в соответствующих разделах.
Во всех примерах API — https://onpress.pro/api/v2, SITE — id сайта (SITE_ID), OP_TOKEN — токен op_XXXX. Полный перечень эндпоинтов — в справочнике API.
Прочитать
GET /data/settings отдаёт все настройки сайта разом, а GET /data/settings/{поле} — одну. Например:
curl -s "$API/site/$SITE/data/settings" -H "Authorization: Bearer $OP_TOKEN"
| Поле | Что это | Подробно |
|---|---|---|
front_page | главная страница | ниже |
closed | сайт закрыт | ниже |
name, icon | название и иконка сайта | SEO |
languages | языки сайта, только чтение | Языки и переводы |
metrika, ga, gsc, webmaster | счётчики и вебмастера | Аналитика |
Изменить
PUT /data/settings/{поле} меняет одну настройку: новое значение передайте в value. Например, закрыть сайт:
curl -s -X PUT "$API/site/$SITE/data/settings/closed" \
-H "Authorization: Bearer $OP_TOKEN" -H 'Content-Type: application/json' \
-d '{"value": true}'
Главная страница
В консоли. Откройте раздел «Страницы» в консоли (/dashboard/) и сделайте нужную страницу главной.
Через API. PUT /data/site.front_page ставит в корень сайта опубликованную страницу: в page передайте её id или путь. На многоязычном сайте вместе с ней меняются главные остальных языков — ими становятся её переводы. Например:
curl -s -X PUT "$API/site/$SITE/data/site.front_page" \
-H "Authorization: Bearer $OP_TOKEN" -H 'Content-Type: application/json' \
-d '{"page": "/home/"}'
Закрыть сайт
Закрытый сайт остаётся на месте, но посетители видят заглушку, а поисковики его не индексируют. Вы, войдя в консоль, видите сайт как обычно. Это удобно, пока сайт готовится к запуску.
В консоли. Откройте раздел «SEO» в консоли (/dashboard/) и нажмите «Закрыть сайт». Открыть его обратно можно там же.
Через API. Запишите true в PUT /data/settings/closed, а чтобы открыть сайт — false. Например:
curl -s -X PUT "$API/site/$SITE/data/settings/closed" \
-H "Authorization: Bearer $OP_TOKEN" -H 'Content-Type: application/json' \
-d '{"value": true}'
Вопросы и ответы
Почему главную не удаётся поменять?
Главной может стать только опубликованная страница. На многоязычном сайте у неё должен быть перевод на основной язык, иначе API ответит 409 no_default_translation: сначала свяжите переводы.
Чем закрытый сайт отличается от удалённого?
Закрытый сайт остаётся на месте и виден вам в консоли, а посетители видят заглушку. Удалённый сайт уходит в корзину и не открывается никому — подробно на странице Сайты и домены.
Где коды ошибок?
В справочнике API. Ответ с ошибкой сам называет причину и нужный эндпоинт.