Ниже приведен код, с помощью добавления которого к новостному шаблону, можно создать RSS канал новостей. Этот код отличается от обычного кода шаблонов только тем, что вместо HTML применяется XML. Кроме того, в атрибутах элементов применяются двойные кавычки, поэтому в конструкции echo стоят кавычки одинарные.
news.tpl<?php ################################ RSS feed ################################ if ($_GET['src']) { echo '<?xml version="1.0" encoding="utf-8"?> <rss version="2.0"> <channel> <title>Новости с сайта</title> <link>http://blox.ru</link> <description>Система управления сайтом</description> <language>ru-ru</language> <copyright>Владислав Аливанов</copyright> <image> <url>http://blox.ru/xfiles/logo.png</url> <title>Владислав Аливанов</title> <link>http://blox.ru/?page='.$page.'</link> </image> '; foreach ($tab as $dat) { echo ' <item> <title>'.htmlspecialchars($dat[2]).'</title> <link>http://blox.ru/?page='.$page.'&block=77&single='.$dat['rec'].'</link> <description>'.htmlspecialchars(Text::shortenText($dat[3], 200, false, $isShortened)).'</description> <pubDate>'.date("r",$dat[1]).'</pubDate> <guid>http://blox.ru/?page='.$page.'&block=77&single='.$dat['rec'].'</guid> </item> '; } echo ' </channel> </rss> '; } ######################## Обычный вывод новостей на сайте ######################## else { # Кнопка RSS подписки (ссылка на RSS канал) echo '<a href="?src='.$block.'" target="_blank"><img src="templates/images/rss.png" /></a>'; // См. статью "Вывод отдельного блока"** . . . } ?>news.tdd
<?php
$titles = [
1 => 'Дата',
2 => 'Заголовок новости',
3 => 'Текст новости',
];
$types = [
1 => 'date',
2 => 'varchar(255)',
3 => 'text',
];
$defaults[1] = date('Y-m-d');
$params['multi-record'] = true;
$params['backward'] = true;
$params['part']['limit'] = 5;
?>
Согласно настройкам в дескрипторе, данный фид отдает пять последних новостей в обратном порядке
RSS — формат представления данных в формате XML, предназначенный для лент новостей, анонсов статей, изменений в блогах и т. п. Он широко используется для получения информации с сайта без необходимости его посещения (синдикация web-контента).
Любой посетитель может подписаться на такую ленту (фид), и как только на вашем сайте появится новая информация, подписчик сразу получит текст сводки новостей или статей. Эти фиды полезны и поисковым роботам, так как информация здесь четко структурирована.