Совсем недавно меня заинтересовало как можно на своем собственном сайте сделать RSS канал. Поковырявшись по великим просторам интернеров я нашел пару мануалов и стандартов, которые помогли мне в этом. Движок сайта у меня самописный, поэтому и RSS пришлось писать ручками. В большинстве готовых CMS, RSS канал уже встроен или встраивается как дополнение. Но мы не ищем легких путей. Поэтому поехали.
Для начала я создал файл rss.php, который будет генерировать ленту новостей. Поскольку RSS является подмножеством XML, то и PHP файлом отдавать ленту как-тоне солидно, поэтому в файле .htaccess мы дали понять серверу, что наш файл должен работать как rss.xml. То есть, реально файл работает под именем rss.php, а вызывается под дополнительным псевдонимом rss.xml.
Для того, чтобы у нас не только имя файла было XML, но и сервер отдавал его клиенту как XML файл, мы напишем в наш файл rss.php строчку волшебную.
Теперь наш RSS поток будет выглядеть точно, как XML файл. Далее по пунктам опишем наш код.
Объявляем и описываем стандарты XML. Нам это не интересно.
Всё что между тегами <channel> и <image> относится к названию Вашего будущего канала, Тег <title> содержит заголовок Вашей RSS-рассылки. Он может повторять название сайта; <link> — ссылка на главную страницу Вашего сайта; <description> — краткое описание рассылки; <language> — язык; <copyright> — соответственно Ваши копирайты (»все права защищены» и тому подобное); <author> — автор, то есть Вы. От <image> до </image> сведения о логотипе Вашего сайта: <url> — ссылка на логотип; <title> — альтернативный текст у логотипа; <link> — адрес страницы, на которую перейдёт получатель рассылки, щёлкнув по логотипу. Предпочтительный размер логотипа 88*31 точку — как у стандартного счётчика, максимальный — 144*400. Тип файла картинки — GIF, JPEG или PNG. Этот логотип будет отображаться в читалке у получателей Вашей рассылки и им будет легче вспомнить, кому же она принадлежит. Если у Вас пока нет логотипа такого размера — можете просто смело выкинуть весь блок от <image> до </image>, и добавить его потом, когда нарисуете такой логотип.
Далее, информация между тегами <item> и </item> — это и есть новости. Большинство тегов идентичны разобранным выше, с той разницей, что они относятся уже не ко всему каналу, а к конкретной новости: <title> — заголовок новости. Чем сочнее он будет, тем больше вероятность, что новость прочитают и по заголовку кликнут; <link> — ссылка на страницу, которую описывает новость; <description> — собственно, сама новость. Она должна убеждать, что её не зря прочитали, и ещё больше стимулировать нажать на ссылку; <guid> — идентификатор новости, нужный, чтобы отличить одну новость от другой. Сюда лучше всего записать тот же адрес, что и в теге <link>; <dc:creator> — автор новости, не обязательно. Все остальные теги можно не трогать. И естественно, XML файл нужно закрыть закрывающими тегами.
Как видите, ничего сложного здесь нет. Дальше вам необходиом отладить скрипт и разместить его в корне или не в корне вашего сайта. У меня в корне лежит файл rss.php, а вызывается он http://www.freee.su/rss.xml и http://www.freee.su/rss.php. |