rewrite: Vite+React → Astro 5 + Content Collections
Some checks failed
deploy / deploy (push) Failing after 12s
Some checks failed
deploy / deploy (push) Failing after 12s
- Бэкап старой версии на ветке vite-react-backup - Stack: Astro 5 + nginx:alpine runtime, образ ~50 МБ (был ~600 МБ) - @astrojs/rss заменён ручным buildRss() — гарантия CDATA в content:encoded для IPB Importer - @astrojs/sitemap → sitemap-index.xml + sitemap.txt - 152-ФЗ cookie consent + privacy.astro + Analytics с gating - AI-файлы: robots.txt с явным allow для AI-краулеров, ai.txt, llms.txt - Гибридный визуал: фото-фон шапки (аэрофото Пушкино) + PT Serif + IBM Plex Sans - Иерархия: hero "Главная история" с рамкой + "Ещё из истории" + "Хроника" - Категория "main" (псевдо) скрыта из плашек и из Рубрик в сайдбаре - hideFromList: true для технических постов - featuredImage в frontmatter для постов без хорошей первой <img> - WP resized-URL (-WxH.ext) автоматически → оригинал - CI/CD: .gitea/workflows/deploy.yml (push → SSH-build) - Внешние RSS: scripts/pull-external-rss.mjs пишет news.json в bind-mount, фронт фетчит client-side
This commit is contained in:
36
src/components/Footer.astro
Normal file
36
src/components/Footer.astro
Normal file
@@ -0,0 +1,36 @@
|
||||
---
|
||||
import { SITE_FOUNDED, FORUM_URL } from '../consts';
|
||||
const year = new Date().getFullYear();
|
||||
---
|
||||
|
||||
<footer class="site-footer">
|
||||
<div class="container footer-inner">
|
||||
<div>© {SITE_FOUNDED}–{year} pushkinohistory.ru</div>
|
||||
<div class="footer-nav">
|
||||
<a href="/feed.xml">RSS</a>
|
||||
<a href="/sitemap-index.xml">Карта сайта</a>
|
||||
<a href={FORUM_URL} target="_blank" rel="noopener noreferrer">Форум ↗</a>
|
||||
<a href="/privacy/">Политика</a>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
<style>
|
||||
.site-footer {
|
||||
border-top: 1px solid var(--rule);
|
||||
margin-top: 3rem;
|
||||
padding: 1.25rem 0;
|
||||
background: rgba(255, 252, 244, 0.4);
|
||||
}
|
||||
.footer-inner {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.5rem;
|
||||
font-size: 0.82rem;
|
||||
color: var(--muted);
|
||||
}
|
||||
.footer-nav { display: flex; gap: 1.25rem; }
|
||||
.footer-nav a { color: var(--muted); text-decoration: none; }
|
||||
.footer-nav a:hover { color: var(--accent); }
|
||||
</style>
|
||||
Reference in New Issue
Block a user