RSS
ساخت فید RSS برای سایت با XML — قالب استاندارد انتشار محتوا
RSS چیست؟
RSS (Really Simple Syndication) قالبی XMLی برای انتشار منظم محتوای سایت است. فید RSS به خبرخوانها (RSS Readers) اجازه میدهد بدون مراجعه به سایت، آخرین مطالب را دنبال کنند.
ساختار فید RSS 2.0
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<!-- اطلاعات کلی سایت -->
<title>وبلاگ لرنینگ سیتی</title>
<link>https://example.com/blog</link>
<description>آموزش برنامهنویسی به فارسی</description>
<language>fa-ir</language>
<lastBuildDate>Thu, 14 Aug 2026 09:00:00 +0330</lastBuildDate>
<!-- هر مطلب یک item -->
<item>
<title>آموزش XML منتشر شد!</title>
<link>https://example.com/blog/xml-tutorial</link>
<description>آموزش جامع XML از صفر...</description>
<pubDate>Thu, 14 Aug 2026 09:00:00 +0330</pubDate>
<guid>https://example.com/blog/xml-tutorial</guid>
</item>
</channel>
</rss>
عناصر channel
| عنصر | توضیح | اجباری؟ |
|---|---|---|
title | نام سایت/کانال | ✅ |
link | آدرس سایت | ✅ |
description | توضیح کانال | ✅ |
language | زبان (مثل fa-ir) | — |
lastBuildDate | آخرین زمان بهروزرسانی | — |
عناصر item
| عنصر | توضیح |
|---|---|
title | عنوان مطلب |
link | آدرس مطلب |
description | خلاصه یا متن کامل |
pubDate | تاریخ انتشار (فرمت RFC 822) |
guid | شناسه یکتای مطلب (معمولاً همان لینک) |
category | دستهبندی |
author | ایمیل نویسنده |
فرمت تاریخ pubDate
تاریخها باید در قالب RFC 822 باشند:
Thu, 14 Aug 2026 09:00:00 +0330
در PHP:
echo date("D, d M Y H:i:s O", strtotime($post->created_at));
تولید RSS با PHP
<?php
header("Content-Type: application/rss+xml; charset=UTF-8");
$posts = $db->query("SELECT * FROM posts ORDER BY created_at DESC LIMIT 20");
echo '<?xml version="1.0" encoding="UTF-8"?>' . "\n";
?>
<rss version="2.0">
<channel>
<title>وبلاگ من</title>
<link>https://example.com</link>
<description>آموزش برنامهنویسی</description>
<?php foreach ($posts as $post): ?>
<item>
<title><?= htmlspecialchars($post['title']) ?></title>
<link><?= htmlspecialchars($post['url']) ?></link>
<description><?= htmlspecialchars($post['excerpt']) ?></description>
<pubDate><?= date("D, d M Y H:i:s O", strtotime($post['created_at'])) ?></pubDate>
<guid><?= htmlspecialchars($post['url']) ?></guid>
</item>
<?php endforeach; ?>
</channel>
</rss>
معرفی فید به مرورگر
در بخش <head> سایت این خط را بگذارید تا مرورگر و خبرخوانها فید را پیدا کنند:
<link rel="alternate" type="application/rss+xml"
title="RSS وبلاگ"
href="https://example.com/feed.xml">
RSS یکی از بهترین نمونههای کاربرد واقعی XML است: ساده، استاندارد و بین همه سایتها و ابزارها مشترک. پادکستها هم دقیقاً با همین ساختار منتشر میشوند (فقط عنصر
enclosure برای فایل صوتی اضافه میکنند)!این مبحث بخشی از دوره آموزش کامل XML است.