deniz bektaş

This commit is contained in:
2026-04-03 16:20:51 +03:00
parent d0cd1c7ee3
commit fb6933edd0
53 changed files with 4742 additions and 98 deletions

42
app/api/rss/all/route.ts Normal file
View File

@@ -0,0 +1,42 @@
import { NextResponse } from "next/server";
import { getAllPosts } from "@/lib/posts";
const SITE_URL = "https://denizbektas.com.tr";
export async function GET() {
const posts = getAllPosts();
const items = posts
.map(
(post) => `
<item>
<title><![CDATA[${post.title}]]></title>
<link>${SITE_URL}/${post.category}/${post.slug}</link>
<guid>${SITE_URL}/${post.category}/${post.slug}</guid>
<pubDate>${new Date(post.date).toUTCString()}</pubDate>
<description><![CDATA[${post.excerpt}]]></description>
<category>${post.category}</category>
</item>`
)
.join("\n");
const xml = `<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Deniz Bektaş — Tüm İçerikler</title>
<link>${SITE_URL}</link>
<description>Siber güvenlik, red team ve kişisel yazılar</description>
<language>tr</language>
<atom:link href="${SITE_URL}/api/rss/all" rel="self" type="application/rss+xml"/>
<lastBuildDate>${new Date().toUTCString()}</lastBuildDate>
${items}
</channel>
</rss>`;
return new NextResponse(xml, {
headers: {
"Content-Type": "application/xml; charset=utf-8",
"Cache-Control": "public, max-age=3600",
},
});
}