Свежее на сайте:

Вопросы (FAQ)

СТАТЬИ Administrator 17098 Hits
Популярные вопросы от новичков

О графическом редакторе Adobe Photoshop CS6

СТАТЬИ Administrator 27376 Hits 1 Comments
ВСЯ ПРАВДА О ADOBE PHOTOSHOP CS6 Краткое описаниеПрежде, чем мы начнем описание, хотелось бы отметить, что…
показать все

Создание простого канала RSS

E-mail

Close

Создание простого канала RSS
Если вы являетесь владельцем сайта и до сих пор не знаете, что такое RSS, то эта статья создана для вас. Мы живём в мире скоростей и огромного потока информации. Умение правильно ориентироваться в ней и уметь выбрать главное — это не очень просто.

Зачастую чтобы найти нужную информацию, мы обходим кучу сайтов, пересматриваем десятки и сотни страниц, теряем много времени и трафика при этом. А ведь можно получить эту информацию напрямую в свой компьютер или на свой сайт. Для этого была разработана технология RSS. Что это такое?

RSS — это специальная категория XML формата для передачи (трансляции) анонсов новостей, статей, изменений и прочей оперативной информации с сайта. Обычно информация транслируется в укороченном виде со ссылкой на страницу первоисточника. Длина передачи устанавливается произвольно владельцем сайта. Источник называется RSS каналом, RSS фидом или RSS лентой.

В чём преимущества RSS? Во-первых, пользователь очень существенно экономит трафик и время, так как информация скачивается только самая последняя и нужная. Это очень важно, не правда ли? Зачем загружать страницу новостного портала, которая изобильно нагружена графикой, скриптами и flash анимацией, когда можно скачать всего несколько килобайт нужной информации. А теперь представьте, что вам необходимо получить самую свежую информацию с нескольких десятков сайтов. Сколько времени это займёт у вас? А с помощью RSS вы сможете получить её в единое целое в течение нескольких секунд. Во-вторых, RSS ленты можно транслировать на другие сайты, расширяя диапазон основного сайта и повышая тем самым его аудиторию.

На компьютере RSS ленты можно читать с помощью современных браузеров, которые поддерживают RSS формат. К ним относятся Mozilla Firefox, Opera и так далее. А можно использовать и специальные программы — RSS агрегаторы, которые собирают сами информацию из заданных RSS лент и предоставляют её пользователю в очень удобном виде. Как вариант можно ещё использовать и онлайн агрегаторы. Это специальные сайты, где пользователи могут также выбирать популярные RSS ленты и читать их. Как видите, выбор очень богат и эта технология стремительными темпами набирает популярность в Интернете благодаря своей оперативности и удобству. Поэтому она и называется RSS — Really Simple Syndication или По-настоящему Простое Получение Информации. В настоящее время последней версией RSS является версия RSS 2.0.

Как читать RSS вроде бы уже вам понятно, а как сделать RSS ленту у себя на сайте? Да очень просто. Необходимо создать специальную страницу в стандарте XML 1.0 и расположить её у себя на сайте. Можно рассмотреть это на примере, подразумевая, что сайт сделан на языке PHP и имеет базу данных MySQL для хранения новостей или статей.

Сначала рассмотрим структуру простого канала RSS.

<?xml version="1.0"?> <rss version="2.0"> <channel> <title>Здесь название канала</title> <link>Здесь ссылка на сайт http://www.oqbo.ru</link> <description>Здесь краткое описание данного канала</description> <lastBuildDate>Здесь дата последнего изменения в канале (RFC 2822)</lastBuildDate>  <item> <title>Заголовок статьи1 или новости1</title> <link>Ссылка на эту статью или новость</link> <description>Текст статьи или новости в произвольном объёме</description> <pubDate>Дата опубликования данной статьи или новости</pubDate> </item>  <item> <title>Заголовок статьи2 или новости2</title> <link>Ссылка на эту статью или новость</link> <description>Текст статьи или новости в произвольном объёме</description> <pubDate>Дата опубликования данной статьи или новости</pubDate> </item>  <item> <title>Заголовок статьи3 или новости3</title> <link>Ссылка на эту статью или новость</link> <description>Текст статьи или новости в произвольном объёме</description> <pubDate>Дата опубликования данной статьи или новости</pubDate> </item>  </channel> </rss>

То есть основные параметры RSS ленты задаются в верхней части. Сначала указывается, что это XML документ формата XML 1.0 и что это к тому же RSS 2.0. Затем указываются название ленты, ссылка на главную страницу сайта, краткое описание содержимого и дата последнего изменения в ленте. Затем идёт цикл самих статей или новостей в тегах <item>.

Даты все указываются в формате RFC 2822. Если дата в вашей базе данных хранится в другом формате, то её можно конвертировать с помощью функции PHP date();

$upldt = date("r",$yourdatefromdb);
(например, 2007-09-17 конвертируется в Mon, 17 Sep 2007 00:00:01 GMT)

Теперь попробуем это реализовать!

Файл index.php

<?php header("content-type: application/rss+xml"); include "func.php"; echo " <?xml version=\"1.0\" encoding=\"windows-1251\"?> <rss version=\"2.0\"> <channel> <title>Название ленты</title> <link>http://www.oqbo.ru</link> <description>Описание ленты</description> <language>ru</language>";  $result = dbquery("SELECT news_date FROM news ORDER BY news_date DESC LIMIT 0,1"); $data = dbarray($result); $lnd = $data['news_date']; $upldt = date("r",$lnd); // конвертация даты в формат RFC 2822 echo "<lastBuildDate>$upldt</lastBuildDate> ";  $result = dbquery("SELECT * FROM news ORDER BY news_id DESC LIMIT 0,10"); while ($data = dbarray($result)) { echo "<item> "; echo "<title>".$data['news_name']."</title> "; echo "<link>http://www.oqbo.ru/read.php?block=".$data['news_id']."</link> "; echo "<description>".$data['news_anons']."</description> ";  $nd = $data['news_date']; $updt = date("r",$nd); echo "<pubDate>$updt</pubDate> "; echo "<guid>http://www.oqbo.ru/read.php?block=".$data['news_id']."</guid> "; echo "</item> "; }  echo "</channel> </rss>"; ?>

Файл func.php — для настроек связи с базой данных БД.

<?php // установки для связи с базой данных $db_host=""; // localhost скорее всего $db_user=""; // имя пользователя БД $db_pass=""; // пароль пользователя БД $db_name=""; // имя БД  function dbconnect($db_host, $db_user, $db_pass, $db_name) { $db_connect = @mysql_connect($db_host, $db_user, $db_pass); $db_select = @mysql_select_db($db_name); if (!$db_connect) { die("Не могу установить связь с MySQL ".mysql_errno()." : ".mysql_error().""); } elseif (!$db_select) { die("Не могу выбрать базу данных MySQL ".mysql_errno()." : ".mysql_error().""); } }  function dbquery($query) { $result = @mysql_query($query); if (!$result) { echo mysql_error(); return false; } else { return $result; } }  function dbarray($query) { $result = @mysql_fetch_assoc($query); if (!$result) { echo mysql_error(); return false; } else { return $result; } }  dbconnect($db_host, $db_user, $db_pass, $db_name); ?>

Вот и всё. Теперь заливаем оба файла в директорию rss, которую можно создать для этих целей. Ставим ссылку http://www.site.ru/rss/ в виде символа RSS и наша лента готова.


Успехов вам!

Комментарии:

У Вас недостаточно прав для добавления комментариев.
Возможно, Вам необходимо зарегистрироваться на сайте или пройти авторизацию.

КОММЕНТАРИИ

You are here СТАТЬИ - Создание простого канала RSS
Бытовая техника с доставкой - интернет магазин бытовой техники. Сайты под ключ качественно.