Генератор RSS

RSS-ленты по сути представляют собой определенный набор XML-данных. Минимальный их набор:

<?xml version="1.0" encoding="UTF-8" ?>
 <rss version="2.0">
 <channel>
 <title>Название ленты</title>
 <link>http://site.ru/rss_url</link>
 <item>
 <title>Новость 1</title>
 <link>http://site.ru/news/1</link>
 <description>Описание новости</description>
 <pubDate>01.01.2010</pubDate>
 </item>
 </channel>
 </rss>


В тегах title и link (строка 4 и 5) находится информация о Вашей RSS-ленте, а именно ее название и URL-адрес. За ними в тегах item идут данные о записях.
Каждая запись должна содержать следующие данные:
1. заголовок записи (в теге title, строка 7);
2. ссылка на запись (в теге link, строка 8);
3. описание записи или ее содержание (в теге description, строка 9);
4. Дата публикации (в теге pubDate, строка 10).

Ниже представлен пример PHP-скрипта, генерирующего RSS-ленту из хранящихся в базе данных статей:

 $content = '<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
 <title>'. $config['site_name'] .'</title>
 <link>http://site.ru/rss</link>';

 // Выбираем и отображаем последние записи
 $topics = mysql_query("SELECT *" .
			 "FROM articles LIMIT 10");
 while ($article = mysql_fetch_array($topics)){
	$content .= '
 <item>
 <title>' . $article['name']. '</title>
 <link>http://site.ru/article/' . $article['id'].'</link>
 <description>'. $article['text'] .'</description>
 <pubDate>'. $article['date'] .'</pubDate>
 </item>';
 }
 $content .= '</channel></rss>';
 echo $content;

Поблагодарить автора

2 Responses to Генератор RSS

  1. Спасибо автору, скрипт нужный. Замучился в dle править rss-экспорт. Одна версия движка не хавает свой-же высер.

  2. Спасибо, нужный скрипт. Теперь хоть в rss-экспорте dle разберусь. А то движок свой-же высер не понимает.

Оставить комментарий

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>