Как создать свой RSS-канал (ленту новостей)

Любой вебмастер хочет, чтобы его сайт был популярен и посещаем. И использует для этого все возможные способы. Один из вариантов увеличения популярности своего ресурса – использование технологии RSS.

В двух словах о том, что это такое и как это работает. RSS предоставляет возможность пользователям, подписавшимся на RSS-канал, моментально получать сообщения о всех новых материалах, размещенных на вашем сайте. Если анонс вашей статьи окажется интересным, пользователю достаточно нажать на ссылку – и он окажется на вашем сайте. Таким образом, пользователь не забудет о вашем сайте, а будет регулярно получать напоминания о его существовании в виде анонсов статей.

Эта статья посвящена тому, как самому организовать RSS-канал для своего сайта. Итак, как уже было описано выше, в общем виде RSS – это краткое содержание новинок на вашем сайте, которое представляет из себя файл с расширением xml.

Как и все в этом мире, RSS имеет несколько модификаций (версий). Самыми популярными форматами RSS в настоящее время являются RSS 2.0 и Atom. В данном обзоре мы научимся создавать RSS-канал, совместимый с обоими форматами.

Приступим к созданию RSS-ленты. Создаем пустой файл с расширением txt, открываем его, например, Notepad’ом. Первые две строки будут такие:


В них мы указываем, что это документ xml, а лента поддерживает форматы RSS 2.0 и Atom одновременно.

Теперь необходимо указать полный путь, где будет храниться файл с RSS-контентом на вашем сайте. В моем случае это будет выглядеть так:


  1. http://сайт/feed/ - путь до файла на хостинге.
  2. rss.xml - это название файла, который будет хранить новости нашего сайта (который, собственно, мы сейчас и создаем).

Теперь указываем название нашего RSS-канала, ссылку на сайт и краткое описание канала:

Всё для вебмастера
http://сайт/


http://сайт/pic/rss.jpghttp://сайтRSS-канал

И дату, когда наш канал последний раз изменялся:

На эту строку кода надо обратить особое внимание. Каждый раз, когда вы будете добавлять новость, вам необходимо будет в этой строке менять число. Иначе программы для чтения RSS-каналов просто не будут знать, что новости обновились. Ведь они, заходя на ваш сайт, смотрят на дату в этой строке, сравнивают ее с датой последнего обновления в своей базе и, если они совпадают, то считывание информации не происходит.

Дату следут вводить на английском языке в следующей последовательности - День недели, Число, Месяц, Год, Время.

  • Sun – Воскресенье
  • Mon – Понедельник
  • Tue – Вторник
  • Wed – Среда
  • Thu – Четверг
  • Fri – Пятница
  • Sat - Суббота
Далее вам необходимо разместить сами новости, которые вы хотите донести до подписчиков вашего RSS-канала. Делается это так:


Как сделать свой RSS-канал?
http://сайт/info/09.shtml

Mon, 19 May 2008 01:29:14 GMT
http://сайт/info/09.shtml

  • ... - между этими тегами заключается весь новостной блок
  • ... - тут пишем заголовок новости
  • ... - ссылка на полную версию новости (статьи)
  • ... - краткое содержание новости
  • ... - дата публикации новости на сайте
  • ... - снова ссылка на полную версию новости (статьи)
  • Если вы размещаете сразу несколько новостей, то для каждой надо сделать такой блок.

    Когда все новости вписаны, в конце закрываем теги ленты новостей:

    Что получили в итоге:





    Всё для вебмастера
    http://сайт/
    Новости портала сайт – всё о создании и популяризации сайтов


    http://сайт/pic/rss.jpg
    http://сайт
    RSS-канал


    Как сделать свой RSS-канал?
    http://сайт/info/09.shtml
    В данном материале дана пошаговая инструкция создания RSS-ленты для своего сайта
    Mon, 19 May 2008 01:29:14 GMT
    http://сайт/info/09.shtml

    Теперь сохраняем файл, меняем его расширение с txt на xml и выкладываем на хостинг. Затем ставим на сайт кнопочку RSS (путь до которой мы прописали в файле) и делаем её ссылкой на нашу ленту новостей.

    RSS-летна, которую мы создали, может содержать только текстовую информацию. При желании мы можем создать более «продвинутый» RSS-канал – с возможностью размещения графической информации (проще говоря – картинок). Делается это на основе уже созданного нами RSS-канала с добавлением в него нового тега CDATA. Цветом я отметил новые вставки в старый код, которые и дают возможность нам создавать RSS-ленту с графикой:





    <!]>




    <!]>


    <!]>

    В данном материале дана пошаговая инструкция создания RSS-ленты для своего сайта]]>


    Как вы видите, теперь многие элементы кода просто включаются в теги , а в описание включена картинка

    Итак, вы создали файл с RSS-лентой (с графикой или без графики) и разместили его на своем хостинге. Теперь самое время убедиться, что все сделано правильно и RSS-канал корректно отображает информацию. Если вы пользуетесь браузерами Opera или Mozilla, то вам достаточно ввести в адресную строку браузера путь до вашей RSS-ленты на хостинге и посмотреть полученный результат. Если хотете потренироваться и посмотреть, как выглядят RSS-каналы с графикой и без, можете поглядеть мои RSS-ленты:

    • - лента с графикой (не обновляется)
    • - лента без графики

    Также будет не лишним проверить свой код на ошибки. Сделать это можно, например, тут - FEED Validator . Данный ресурс просканирует код вашей RSS-ленты и даст заключение о наличии или отстутвии ошибок.

    По материалам сайта http://www.jeder.ru/

    Я немного упоминал про RSS-ленту. Поэтому решил написать про нее отдельную статью. Знаю, что многие в курсе, что это такое, но все равно, найдутся люди, которым эта новость в новинку 🙂

    После создания RSS , сервис Feedburner дает возможность организовать подписку на новости с вашего блога. Так же предлагает html-код формы подписки для установки на сайт. Об этот я напишу ниже.

    В сегодняшней статье я расскажу Вам:

    1. Для чего нужна лента новостей?
    2. Как создать RSS-ленту?
    3. RSS VS SEO.

    1. Для чего нужна лента новостей?

    RSS-лента предназначена для трансляции новостей, анонсов статей, изменений в блогах и т. п.

    Существуют специальные сервисы типа Яндекс.Лента и Google Reader , в которых удобно собирать информацию с различных веб-ресурсов в формате RSS, благодаря которым любой пользователь может настроить в своей новостной ленте трансляцию интересующей его новостей с различных сайтов.

    RSS расшифровывается как Rich Site Summary или в переводе на русский язык — обогащённая сводка сайта.

    Благодаря возможности добавления ленты в соц.сеть Twitter , Яндекс.Лента можно заметно ускорить индексацию новых страниц сайта поисковыми роботами. Проверял на своих сайтах, индексация происходит очень быстро. Google вообще молниеносно индексирует 🙂

    2. Как создать RSS-ленту?

    Что бы создать свою информационную ленту для блога/сайта необходимо быть зарегистрированным в Google .

    Если у вас уже есть аккаунт в Гугле(вы уже зарегистрировались), то для начала создания RSS вам необходимо перейти по ссылке . Перед вами откроется окно в котором выполняя несложные шаги мы будем создавать свою ленту новостей.

    В первом окне необходимо ввести адрес своего сайта, после чего нажать кнопку Next .

    Во втором окне, в первом поле нам необходимо ввести название фида . К примеру у себя я назвал его » Авто-кликом по Рунету».

    В строке Адрес фида вы должны вписать любое имя по которому ваш фид можно будет найти, это как придумать имя домена:). Свой фид я обозвал как myworkpro. И теперь он выглядит так feeds.feedburner.com/myworkpro.

    После нажатия кнопки Next, Ваш фид готов. Можете перейти по адресу feeds.feedburner.com/ваше_имя и полюбоваться на то, что получилось.

    3. RSS VS SEO.

    Созданный фид вы можете добавить в специальные новостные каталоги и ленты, которых в нете, как «воды в океане». Как писал выше это может немного увеличить ваш трафик и скорость индексации страниц.

    Незабываем про то что Feedbuner предоставляет нам возможность установить на свой блог счетчик и форму подписки по электронной почте, что само собой дает сайту «халявный» трафик:), плюс собственная база подписчиков, которая имеет большую ценность в умелых руках.

    Внимание!!! RSS — лента может быть также вредна для вашего блога. Если в настройках стоит отображать новость полностью, то на сайтах, которых транслируется ваша лента, статьи могут индексироваться быстрее, плюс ко всему трастовый вес этих сайтов может быть больше вашего, из-за чего статья опубликованная на вашем блоге поисковиками будет считаться, как копия с RSS-каталогов. О последствиях вы уже догадались 🙂

    Форму подписки можно взять в панеле сервиса Feedbuner. Для этого кликаем на вкладку Publicize(п убликуй) и переходим в раздел Email Subcriptions (подписка по электронной почте). В появившемся окне выбираем русский язык и копируем html-форму подписки из окошка ниже.

    Вставляем эту форму на сайте в нужном для вас месте. Обычно на блогах располагают ее в сайдбаре и в конце статьи.

    Обратите внимание, что в стандартных настройках, текст формы подписки на английском языке. Разбираться никто не будет, что там за писанина, а просто закроют окно. Поэтому нужно зайти в раздел Communication Preferences настройки и вставить русский текст.

    В строке Confirmation Email Subject можете вписать к примеру: «Подтверждение подписки на Адрес_вашего_сайта»

    И в строке Confirmation Email Body пишите тело письма на русском. У меня к примеру написано следующее:

    Здравствуйте!

    Это письмо отправлено автоматически для подтверждения
    адреса электронной почты, который вы указали при регистрации.

    Благодарим вас за проявленный интерес к блогу.

    Если вы думаете, что письмо попало к вам по ошибке, просто удалите его.

    Внимание!
    Не отвечайте на это письмо, мы не сможем получить ответ.
    Если вам необходимо связаться с нами,
    воспользуйтесь формой контактов на нашем сайте.

    Ну все, на этом пока остановимся 🙂

    P.S. — Подписывайтесь на обновления моего блога, что бы быть в курсе последних обновлений и стать первым комментатором 🙂

    Материалы по теме:

    Защищаем контент Твиттером!

    Я хочу поговорить на тему Что такое Твиттер. Конечно, бОльшая часть читателей об этом знают. И не просто знают, а имеют в Твиттере аккаунты, а...

    Что такое CMS, а так же правила ее выбора

    Сейчас мы разберемся с вопросом: "Что такое CMS?". На самом деле тут все просто, CMS расшифровывается как "Content Management Software" ("программное обеспечение для управления...

    Даёт возможность оперативно транслировать новости и обновления читателям. Формат этот несколько устаревший, но аудитория пользователей всё ещё большая. Возможность организации RSS-лент заложена во многие популярные движки, такие как WordPress, Joomla, Drupal и многие другие. Где-то эта возможность является штатной, а где-то реализуется с помощью плагинов. Рассматривать процесс установки плагинов не имеет особого смысла, поэтому мы попробуем разобраться, как организовать RSS-ленту своими силами, не используя плагины.

    RSS-лента для статического сайта на html

    Для начала мы рассмотрим ручной способ, позволяющий реализовать трансляцию новостей на любом сайте, даже на статичном, построенном на голых html-страницах. Данный функционал будем создавать с помощью простого кода, который размещается в файле rss.xml в корне сайта:

    - в этой строке указывается кодировка <span>Новости с сайта Site.ru </span> - указываем название новостной ленты http://site.ru/rss.xml - указываем адрес ленты Новостная лента с сайта Site.ru - вводим описание нашей ленты Fri, 03 Jul 2015 17:51:00 +0300 - дата последнего обновления ленты - указываем заголовок новости http://site.ru/news1.html - указываем адрес страницы с полной новостью - вписываем краткое содержание новости

    При необходимости, в данном коде можно указать язык ленты, что необходимо при её регистрации в некоторых каталогах RSS-лент, а также добавить дополнительные элементы.

    Представленный код обновляется в ручном режиме. То есть, для внесения изменений необходимо открыть файл rss.xml и вписать в него новые данные. Нужно несколько новостей? Тогда редактируемый файл с лентой должен содержать в себе несколько конструкций следующего вида:

    <span>На нашем сайте открылся <a href="/kak-sozdat-novyi-razdel-na-zhestkom-diske-sozdat-razdel-na-zhestkom/">новый раздел</a> </span> http://site.ru/news1.html На нашем сайте открылся новый раздел, приглашаем всех желающих к ознакомлению с новой информацией

    Каждая такая конструкция – это отдельная новость, которая располагается между тегами item. По мере добавления новостей, старые записи можно удалять. Количество записей может быть любым, но прописывать больше 10 последних новостей не стоит – вряд ли кому-то понадобятся устаревшие записи.

    Автоматизируем создание RSS-ленты

    Предположим, что наш сайт создан на самописной CMS, либо на CMS, у которой RSS-лента отсутствует. В этом случае необходимо разобраться в структуре базы MySql, используемой для хранения данных, и выяснить, как производится хранение данных о заголовках страниц, их адресах и содержимом страниц с новостями. Разобравшись со структурой базы, необходимо несколько модернизировать файл с RSS-лентой. Для начала, дадим ему другое расширение, чтобы в нём мог исполняться php-код, необходимый для работы с базой MySql. В противном случае наша RSS-лента не заработает. Необходимо переработать и внутреннее содержимое файла:

    • Реализуем подключение к базе данных;
    • Делаем выборку нужных данных, установив ограничение на 10 последних записей;
    • Выводим в цикле содержимое полученных переменных;

    С первым пунктом всё понятно – нам нужно выполнить подключение к базе данных для забора оттуда информации. Второй пункт тоже понятен – нам нужно получить 10 дат, 10 id ссылок на страницы с новостями, 10 заголовков новостей и 10 тел новостей. В третьем тексте мы последовательно выводим всё то, что мы публиковали между тегами item в ручном формате нашей RSS-ленты. Таким образом, разобравшись в структуре базы данных, мы можем организовать RSS-ленту для любого ресурса. Такой подход хорош тем, что мы не касаемся исходного кода CMS и не создаём дополнительных нагрузок на хостинг – этим грешат некоторые плагины, нагружающие сайты километрами ненужного кода. Кроме того, наша методика позволит избавиться от возможных ошибок в функциональности действующего сайта на этапе внедрения RSS-ленты. Максимум, что может произойти, так это получение не тех данных, что нужны для формирования ленты на нашем сайте.

    Теперь рассмотрим сам код:

    Новости с сайта Site.ru http://site.ru/rss.php Новостная лента с сайта Site.ru"; $result=MYSQL_QUERY("SELECT id, title, text, date, FROM article ORDER BY date DESC LIMIT 10"); while ($row=MYSQL_FETCH_ARRAY($result)) { $id=$row["id"]; $title=$row["title"]; $text=$row["text"]; $date=$row["date"]; echo " $title ссылка на статью с указанием id $text $date "; } echo " "; ?>

    Первые строки данного кода схожи с вышеописанным ручным кодом и содержат в себе общую информацию о нашей новостной ленте – это название, описание и полный адрес ленты. Даты последнего обновления ленты нет, но её можно реализовать, модернизировав исходный код. Далее производится выборка необходимых данных из MySql-базы и запускается цикл формирования RSS-ленты.

    С датой новости, её текстом и заголовком всё понятно – они выводятся из переменных $title , $text и $date . Что касается ссылки на полную новость, то здесь берётся её id, после чего мы можем сформировать полную ссылку, опираясь на структуру формирования ссылок на нашем сайте. Например, ссылки могут иметь вид http://site.ru/news.php?id=48 . Здесь мы описываем лишь общий принцип формирования ссылок, поэтому при практической реализации в вышеуказанный код необходимо внести соответствующие изменения.

    Как только формирование файла rss.php будет готово, мы можем заливать его на хостинг и приступать к тестированию.

    Полезные советы
    Заходя на некоторые сайты, мы можем видеть в адресной строке браузера прямую ссылку на RSS-ленту этих сайтов. Для того чтобы не отставать от моды, проведём ещё одну модернизацию нашего сайта и добавим в него всего одну строчку кода:

    RSS - семейство XML-форматов, предназначенных для описания лент новостей, анонсов статей, изменений в блогах и т. п. Информация из различных источников, представленная в формате RSS, может быть собрана, обработана и представлена пользователю в удобном для него виде специальными программами-агрегаторами

    Wikipedia

    На многих сайтах можно увидеть кнопки или , что означает, что на этом сайте доступна лента новостей в формате RSS. Читателям сайта такой сервис удобен, поскольку при помощи Rss-агрегаторов, например, Yandex.Lenta или Kanban.ru можно собрать собственную новостную ленту и читать новости с разных сайтов в одном месте или получать их на свой e-mail при помощи сервиса Rss2Email . Подробнее об RSS читайте, например, в Компьтерре .

    В этой статье речь пойдет не об использовании RSS-лент и агрегаторов, а о том, как быстро сделать новостную ленту на сайте при помощи программы RSS.PHP и MySql.

    Начальные условия

    Итак, у вас есть сайт, на котором есть поддержка PHP и работает база данных MySql (кстати, очень распространенное сочетание). Из базы, в которой хранятся тексты вашего блога или анонсы новостей и будем получать данные для нашей ленты. Лента будет строиться динамически, непосредственно при запросе, так что нужен только соответствующий скрипт. Вы можете написать его сами, но можете взять уже готовый

    Немного теории

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

    Элемент Описание
    title Заголовок канала.
    link Ссылка на главную страницу сайта.
    description Описание канала.
    language Язык, на котором написан канал. Например, ru - русский
    copyright Копирайт
    managingEditor Электронная почта редактора канала.
    webMaster Электронная почта веб-мастера.
    pubDate Дата публикации информации в канале.
    lastBuildDate Время последнего изменения канала.
    category Определяет категорию, к которой принадлежит канал.
    Item Собственно содержимое канала. Должен быть хотя бы один элемент.

    Item

    Элемент Описание
    title Заголовок
    link Ссылка на полный текст
    description Аннотация
    category Категория
    pubDate Дата публикации статьи. Некоторые агрегаторы не будут отображать статью, если указанная дата еще не настала. Но далеко не все.

    Поскольку RSS - это подмножество XML, то мы должны получить в итоге примерно следующее: Если будете что-то менять в скрипте, то проверяйте его на соответствие стандарту на сервисах Feed Validator или RSS Validator


    Запуск программы

    Программа состоит из следующих файлов: rss.php - файл запуска, rss.inc - включаемый файл с описанием класса, conn.inc - файл с описанием параметров соединения с базой данных.

    Для запуска программы измените данные о соединении с БД в файле conn.inс, измените параметры ленты в файле rss.php и спишите в любой удобный каталог на Вашем web сервере, хоть в корневой. Не забудьте проверить структуру данных базы MySql, для программы можно использовать например, такую:

    CREATE TABLE BLOG (ID int(11) NOT NULL default "0", title varchar(50) default NULL, description text default NULL, link varchar(200) default NULL, date date default NULL, category varchar(100) NOT NULL default "", ab varchar(10) NOT NULL default "", PRIMARY KEY (ID)) TYPE=MyISAM;

    после этого у вас будет лента с адресом

    Что дальше?

    А теперь не забудьте поставить на видном месте кнопку , и добавить в страницы вашего сайта код между тегами :
    , чтобы браузеры понимали, что у вас есть лента. И, конечно же, зарегистрировать ленту в поисковой машине, например, http://blogs.yandex.ru/add.xml и в каталоге http://blogs.yandex.ru/add-catalogue.xml

    Бесплатно скачать программу для создания RSS-ленты, Rss.php (3 Кб) можно