Files
ruseemrooz/src/pages/posts/index.astro
mrfelfel dfb0e857f1 fix
2026-07-18 19:41:33 +03:30

28 lines
1.1 KiB
Plaintext

---
import PostCard from '../../components/PostCard.astro';
import Pagination from '../../components/Pagination.astro';
import BaseLayout from '../../layouts/BaseLayout.astro';
import { getApprovedPosts, getPaginatedPosts, readCms } from '../../lib/cms';
const cms = await readCms();
const pageParam = Number(Astro.url.searchParams.get('page') ?? '1');
const requestedPage = Number.isFinite(pageParam) ? pageParam : 1;
const { currentPage, totalPages, posts } = getPaginatedPosts(requestedPage, 4, getApprovedPosts(cms));
---
<BaseLayout title="همه اخبار | روس امروز">
<main class="max-w-7xl mx-auto px-4 lg:px-8 py-8">
<div class="mb-6">
<span class="text-brand text-sm font-bold">آرشیو</span>
<h1 class="text-2xl font-black mt-1">همه اخبار</h1>
<p class="text-gray-500 text-sm mt-2">لیست کامل نوشته‌ها و خبرهای منتشر شده در روس امروز</p>
</div>
<div class="grid grid-cols-1 lg:grid-cols-2 gap-4">
{posts.map((post) => <PostCard post={post} />)}
</div>
<Pagination currentPage={currentPage} totalPages={totalPages} />
</main>
</BaseLayout>