$ опубликовано 2026-03-07 | обновлено 2026-10-03 | ~3 мин чтения
Контекст: Изображения, теги, оглавление, поиск и публикация ссылок. →

Руководство 2: Статьи и организация контента

Изображения, теги, оглавление, поиск и публикация ссылок.


Вывод
оценка задержки ~194 ms уверенность ~0.89

Создать статью

npm run new-post -- my-first-post
# --locales en,pt-br

Только русский: npm run new-post – my-first-post –locales ru. Slug содержит строчные латинские буквы, цифры и дефисы. src/content/blog/ru/my-first-post.md создаёт /ru/blog/my-first-post/. Существующие файлы сохраняются. –locales создаёт файлы, но не включает язык.

Переводы используют одинаковый slug. Если перевода нет, меню ведёт в список статей выбранного языка; hreflang не выдаёт список за перевод статьи.

Заполнить frontmatter

---
title: 'My first post'
description: 'My notes and projects'
pubDate: '2026-10-03'
tags: ['astro', 'notes']
---

Обязательны title, description и pubDate. subtitle, updatedDate и author необязательны; по умолчанию используется автор сайта. Сортировка идёт по pubDate. Фильтра черновиков и отложенной публикации нет: draft: true и будущие даты ничего не скрывают. Храните незавершённые тексты вне src/content/blog/.

heroImage: ./cover.jpg берёт изображение рядом со статьёй. При наличии файлов в src/assets/blog/default-covers/ команда выбирает постоянную обложку. Загрузки изображений из сети нет. Время чтения и показатели приблизительные. readMinutes, wordCount, tokenCount, aiLatencyMs и aiConfidence позволяют задать свои значения, не подключая сервис ИИ.

Оглавление и теги

Используйте заголовки Markdown ## и ###. Оглавление появляется справа на широком экране и перед текстом на узком. Без заголовков оно скрыто. toc: false отключает его для статьи; toc: true имеет приоритет над настройкой сайта. Заголовки внутри компонентов MDX и HTML автоматически не собираются.

tags: [‘astro’, ‘notes’] создаёт страницы в /ru/tags/. Регистр значим; пробелы по краям и повторы удаляются. Для нелатинских названий используются кодированные URL. Переименование меняет ссылку. theme.tags.enabled: false отключает ссылки и страницы тегов.

Изображения и код

Используйте ![Описание](./photo.jpg) либо ![Описание](/images/photo.jpg), добавив соответствующий файл. Обычные изображения открываются по клику или Enter/Пробелу, закрываются Escape, кнопкой или фоном. Обложки и изображения внутри ссылок и кнопок исключены. Просмотр использует выбранный браузером файл, не загружая увеличенный оригинал.

Блоки кода Markdown с тройными обратными кавычками получают кнопку копирования. Отступы и переносы сохраняются. Нужен HTTPS или localhost; при ошибке копируйте вручную.

Поиск

Выполните npm run build и npm run preview. Поиск работает по заголовкам и тексту текущего языка. В dev показывается только уведомление. search: false исключает статью из индекса, но не скрывает её из списков или по прямой ссылке. theme.search.enabled: false отключает поиск и индекс. После изменения статей нужна сборка.

Изображения для ссылок

Без ogImage сборка создаёт PNG 1200×630 с заголовком, автором и названием сайта. heroImage остаётся отдельной обложкой. Свой файл: ogImage: ./share.png либо /images/share.png; HTTPS также поддерживается. Отсутствующий локальный файл вызывает ошибку; внешний зависит от сервиса.

Автоматические карточки используют встроенный фон с дождём кода, терминалами и неоновой сетью, сохраняя ваше название сайта, заголовок и автора. Небольшая подпись Theme by Anglefeint справа внизу зависит от theme.footer.showCredits (по умолчанию true); false скрывает подписи и в подвале, и на изображении. После изменения пересоберите и опубликуйте сайт. Собственные файлы ogImage не изменяются. Фон работает офлайн и не добавляет JavaScript в браузер.

Явный ogImage имеет приоритет. theme.socialImage.enabled: false отключает только генерацию; иначе используется обложка или стандартное изображение. Проверяйте og:image в HTML и dist/_social/. Платформы могут кешировать старые превью. Не гарантируются все эмодзи и системы письма.

Отдельные страницы

npm run new-page – projects –theme cyber создаёт src/pages/[lang]/projects.astro. Отредактируйте содержимое самостоятельно; перевод и пункт навигации не добавляются. Темы: base, ai, cyber, hacker и matrix. Допускаются пути вроде projects/labs. Если файл существует, команда завершается ошибкой.

488 слов · 634 токенов