К тексту статьи
bit&pix Медиацех

Как работают статьи: пример с Markdown, изображением и общим баннером

Пошаговый пример работы с CMS статей: черновик, предпросмотр, изображение, общий баннер, ревизии и выход.

Что показывает этот пример

Это черновик, а не опубликованная статья. Он показывает путь материала в CMS: от входа в кабинет до предпросмотра, изображения, общего баннера, сохранения и команд публикации. Публичного адреса у примера нет, пока владелец отдельно не опубликует его.

Это демонстрационный черновик: на этой странице видно, как Markdown превращается в готовый текст с изображением и общим баннером.

1. Открыть админку из кабинета

Вход один: https://app.bitandpix.ru. В боковом меню откройте раздел "Статьи". Ссылка откроет новую вкладку https://bitandpix.ru/article-admin/.

Переход выполняется один раз: кабинет выпускает SSO-сессию, и повторно вводить пароль на основном домене не нужно. Если сессии кабинета нет, откроется его обычный вход. Обычная роль без прав редактора получит на основном домене отказ, а не интерфейс статей.

2. Написать черновик

Создайте статью и заполните заголовок, описание и текст. Новая статья всегда начинается как черновик.

В тексте работают заголовки разделов, списки, выделение, ссылки, код и изображения. Например:

## Раздел статьи
- первый пункт
- второй пункт

**Важное** и `код` остаются в тексте.

Заголовок H1 шаблон статьи добавляет сам, поэтому в теле начинайте с H2 и H3.

3. Добавить изображение

В панели "Медиа" загрузите файл JPEG, PNG или WebP до 20 МБ и вставьте его в текст. Ссылка на файл появится в Markdown.

В этом черновике вместо URL стоит заглушка. После загрузки в CMS её нужно заменить на настоящий URL файла. Схема показывает цепочку работы со статьёй:

Схема: Markdown, предпросмотр и публикация

4. Вставить общий баннер

Баннеры живут в отдельном каталоге. В текст вставляется только имя баннера, а картинка, ссылка и alt хранятся в каталоге.

Открыть основной сайт

Если изменить картинку или ссылку баннера в каталоге, он обновится во всех статьях, где вставлен, без пересохранения этих статей. Выключенный баннер просто перестаёт показываться.

5. Проверить и сохранить

Вкладка "Предпросмотр" показывает сохранённую версию статьи. Если в редакторе есть несохранённые правки, предпросмотр честно об этом предупреждает.

Каждое сохранение увеличивает revision. Сохранение отправляется с той ревизией, которую вы открыли. Если статью успели изменить в другой сессии:

  • сервер вернёт 409 и текущую ревизию;
  • текст в редакторе не потеряется;
  • нужно перечитать актуальную версию и перенести свою правку;
  • повторять тот же запрос вслепую нельзя, иначе можно затереть чужой текст.

6. Публикация и снятие

Публикация выполняется отдельной командой, когда владелец её разрешил. Дата может быть сегодняшней или прошлой, но не будущей: расписания и отложенной публикации нет.

После ответа API статья и sitemap обновляются без пересборки сайта и деплоя. Внешние поисковики могут приходить со своей задержкой, мгновенный индекс никто не обещает.

Снятие с публикации возвращает 404 на страницу статьи и убирает адрес из sitemap. Запись, история ревизий и медиа при этом остаются в базе.

Этот пример остаётся черновиком: дата публикации и публичный URL здесь не заданы.

7. Выход и доступ

Выход общий для одной family: он завершает сессию статей и сессию кабинета на этом устройстве. На других устройствах остаются их собственные сессии.

Bearer-токен для CLI не является веб-сессией: выход из браузера его не отзывает. Токен выдаётся отдельно и действует только в своих scopes.

Полная инструкция для редактора и нейросети лежит в файле docs/runbooks/articles-publishing.md на рабочей машине.

Что не входит в пример

Здесь нет AI-генератора текста, расписания публикаций, аналитики кликов и автоматической публикации. Статья создаётся и публикуется явной командой человека.