Skip to content

Макеты и слоты тем ​

Макеты ​

mineproj требует 7 основных макетов. Каждый макет — это React-компонент, получающий LayoutProps.

Макет Home ​

Главная страница. Отображает избранные проекты, недавние проекты и информацию профиля.

Макет List ​

Показывает отфильтрованную/отсортированную сетку проектов. Используется маршрутом /projects/.

Макет Detail ​

Индивидуальная страница проекта по адресу /projects/<slug>/. Показывает полные детали проекта, содержимое body, скриншоты, видео, PDF-файлы и интерактивные демо.

Макет Tag ​

Выводит список проектов, отфильтрованных по тегу, по адресу /tags/<tag>/.

Макет Collection ​

Выводит список проектов в коллекции. Работает аналогично макету тега.

Макет About ​

Страница «Обо мне» по адресу /about/. Показывает информацию профиля.

Макет Not Found ​

Страница 404. Показывается, когда маршрут не найден.

Слоты ​

Слоты — это точки расширяемости, в которые плагины могут внедрять компоненты:

ts
// В плагине
export default definePlugin({
  name: 'my-plugin',
  hooks: {
    setup: (ctx) => {
      ctx.registerSlot('header', MyHeaderComponent);
    },
  },
});

Встроенные слоты обычно включают: header, footer, sidebar, editor-shell.

Поведение при откате ​

Если тема не предоставляет макет, mineproj использует макет темы по умолчанию и выводит предупреждение. Это гарантирует, что сайт всегда собирается, даже с неполной темой.

Реестр компонентов ​

Реестр компонентов разрешает компоненты в следующем порядке:

  1. Компоненты темы
  2. Компоненты плагинов
  3. Пользовательские переопределения (последний имеет приоритет)

Переопределения неизвестных компонентов вызывают предупреждение.

Released under the Apache-2.0 License.