Руководство по использованию PXLR CMS

Создание постов

23 июля 2025 г.
PXLR Teme
1 тег

📝 Создание постов

Через админ-панель

  1. Откройте админ-панель: http://localhost:5173

  2. Перейдите к созданию поста:

    • Нажмите "Создать пост" в sidebar
    • Или перейдите в "Все посты" → "Создать пост"
  3. Заполните форму:

    • Заголовок: Название вашего поста
    • Slug: URL-адрес (автогенерируется из заголовка)
    • Описание: Краткое описание поста
    • Автор: Имя автора (опционально)
    • Теги: Разделенные запятыми теги (опционально)
    • Содержимое: Основной текст в Markdown формате
    • Черновик: Включите для сохранения как черновик
  4. Сохраните пост: Нажмите "Создать пост"

Через API

curl -X POST http://localhost:3333/api/posts \
  -H "Content-Type: application/json" \
  -d '{
    "filename": "my-post.mdx",
    "content": "---\ntitle: \"Мой пост\"\ndescription: \"Описание поста\"\n---\n\n# Заголовок\n\nСодержимое поста..."
  }'

📁 Структура файлов

Backend (Хранение)

backend/content/
├── welcome.mdx          # Демо пост
├── test-post.mdx        # Тестовый пост
└── your-post.mdx        # Ваши посты

Frontend (Синхронизация)

frontend/content/        # Будет синхронизироваться с backend
├── welcome.mdx
├── test-post.mdx
└── your-post.mdx

📋 Формат MDX файлов

---
title: "Заголовок поста"
description: "Описание поста"
date: "2024-01-20T10:00:00.000Z"
author: "Имя автора"
tags: ["тег1", "тег2"]
draft: false
---

# Основной заголовок

Содержимое поста в **Markdown** формате.

## Подзаголовок

- Список
- Элементов

### Код

\`\`\`javascript
console.log('Hello World!');
\`\`\`

🛠️ Управление постами

Просмотр постов

  • Все посты: http://localhost:5173/posts
  • Дашборд: http://localhost:5173/ (последние 5 постов)

Редактирование

  1. Перейдите в "Все посты"
  2. Нажмите "Редактировать" у нужного поста
  3. Внесите изменения и сохраните

Удаление

  1. Перейдите в "Все посты"
  2. Нажмите на меню "⋯" у поста
  3. Выберите "Удалить"
  4. Подтвердите удаление

Предпросмотр

  • Нажмите "Посмотреть на сайте" в меню поста
  • Откроется frontend версия поста

🔗 API Endpoints

Получить все посты

GET http://localhost:3333/api/posts

Получить пост по slug

GET http://localhost:3333/api/posts/{slug}

Создать пост

POST http://localhost:3333/api/posts
Content-Type: application/json

{
  "filename": "post-slug.mdx",
  "content": "MDX содержимое с frontmatter"
}

Обновить пост

PUT http://localhost:3333/api/posts/{slug}
Content-Type: application/json

{
  "content": "Обновленное MDX содержимое"
}

Удалить пост

DELETE http://localhost:3333/api/posts/{slug}

🚀 Workflow

  1. Создайте пост в админке или через API
  2. Файл сохраняется в backend/content/
  3. Синхронизируется с frontend/content/ (автоматически)
  4. Доступен на frontend сайте

🔧 Валидация

Форма автоматически проверяет:

  • ✅ Заголовок (1-100 символов)
  • ✅ Описание (1-300 символов)
  • ✅ Slug (1-50 символов, только a-z, 0-9, -)
  • ✅ Содержимое (минимум 10 символов)
  • ✅ Уникальность slug

📱 Возможности

  • Автогенерация slug из заголовка
  • Валидация форм с zod
  • Предпросмотр постов
  • Режим черновика
  • Теги и метаданные
  • Markdown поддержка
  • Responsive дизайн

Похожие посты

PXLR CMS теперь включает мощный блочный редактор, который позволяет создавать контент используя различные типы блоков вместо традиционного текстового редактора.