RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса

MODX (читается «мо́дэкс») — это бесплатная профессиональная система управления содержимым (CMS) и фреймворк для веб-приложений, предназначенная для обеспечения и организации совместного процесса создания, редактирования и управления контентом сайтов.
Ответить
Аватара пользователя
berdck
Сообщения: 884
Зарегистрирован: 11 апр 2013, 09:44
Родной город: Бердск
Откуда: Регион 54
Контактная информация:

RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса

Сообщение berdck »

RSS-фид - это xml файл, который описывает последние новости, анонсы, посты блога и другую информацию для различных агрегаторов (сборщиков).

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

Для чего можно использовать RSS ленту?

RSS-ленту, можно использовать для создания Яндекс-виджетов, для оформления подписки через feedburner.google.com и для быстрой подписки через, например, такое расширением - RSS Subscription Extension (от Google) Если вы установите данное расширение и зайдёте на сайт, содержащий rss-ленту, то около URL сайта в адресной строке появиться соответствующий значек RSS

На самом деле турбо-страницы Яндекса по своей структуре очень похожи на данные формируемые для RSS.

Поэтому рассмотрим их в одном топике, но в разных сообщениях.


Изначально меня интересовал вариант создать именно турбо-страницы, но RSS тоже оказался полезен в частности для того, чтоб скормить страницы поисковику BING (оказалось он умеет обходить сайт не только через sitemap, но и через rss ленты)

Нам понадобиться getResources - установите, если он не установлен!!!
Если Вам понравилось :roll:, то не забывайте нажимать кнопочки ПОДЕЛИТЬСЯ... в социальных сетях :idea: Мне будет очень приятно ;)
А если копируете к себе в блог или на сайт, не скупитесь поставить ссылочку или пару на источник :!: - YaDumau.RU
Аватара пользователя
berdck
Сообщения: 884
Зарегистрирован: 11 апр 2013, 09:44
Родной город: Бердск
Откуда: Регион 54
Контактная информация:

Re: RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса

Сообщение berdck »

:arrow: Формируем RSSленту

Создайте ресурс с произвольным именем - поле ЗАГОЛОВОК. Назначьте ПСЕВДОНИМ - адрес страницы по которой будет доступен RSS feed. Скройте вывод данного ресурса от главного меню выставив галочку в чекбоксе - СКРЫТЬ ИЗ МЕНЮ и галочку ОПУБЛИКОВАТЬ. Назначьте пустой шаблон для данного ресурса.
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX

перейдите на вторую вкладку Настройки (Settings) ресурса.
Выставите там тип содержимого RSS и снимите галочку в чекбоксе ИСПОЛЬЗОВАТЬ HTML РЕДАКТОР и сохраните ресурс.
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX

В поле СОДЕРЖИМОЕ добавляем следующий код и сохраняем изменения:

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>[[*longtitle]]</title>
    <link>[[~[[*id]]? &scheme=`full`]]</link>
    <description>[[*introtext:cdata]]</description>
    <language>[[++cultureKey]]</language>
    <ttl>120</ttl>
    <atom:link href="[[~[[*id]]? &scheme=`full`]]" rel="self" type="application/rss+xml" />
    [[!getResources?
      &tpl=`rssItem`
      &parents=`1,2,4`
      &resources=`-3,-206,-207,-209,-210`
	  &depth=`7`
      &limit=`15`
      &includeContent=`1`
      &includeTVs=`1`
      &showHidden=`1`
      &hideContainers=`1`
    ]]
</channel>
</rss>
Вывод мы сделали, теперь нужно настроить шаблон вывода данных. Для этого переходим в раздел ЭЛЕМЕНТЫ левого меню и создаем ЧАНК (я создал чанк с НАЗВАНИЕМ -rssItem) В данный чанк добавляем следующий код:

Код: Выделить всё

<item>
<title>[[+pagetitle:cdata]]</title>
<link>[[++site_url]][[~[[+id]]]]</link>
<description>
[[+content:notags:ellipsis=`200`:cdata]]
</description>
<pubDate>[[+publishedon:strtotime:date=`%a, %d %b %Y %R:%S`]] +0800</pubDate>
<guid isPermaLink="false">[[++site_url]][[~[[+id]]]]</guid>
<dc:creator>
Author: Berdck.org
</dc:creator>
</item>
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX
RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса на MODX
как видно в чанке я задал время +0800 (Иркутское время GMT +0800, для Москвы GMT +0400). RSS-лента сайта готова!

Осталось только добавить информацию о ленте на сайт. Для этого вставьте следующий код в блок head вашего шаблона

Код: Выделить всё

<link rel="alternate" type="application/rss+xml" title="RSS-лента [[++site_name]]" href="[[~id]]">
где id - идентификатор вашего ресурса - rss-ленты, посмотреть его можно в списке ресурсов рядом с именем
Если Вам понравилось :roll:, то не забывайте нажимать кнопочки ПОДЕЛИТЬСЯ... в социальных сетях :idea: Мне будет очень приятно ;)
А если копируете к себе в блог или на сайт, не скупитесь поставить ссылочку или пару на источник :!: - YaDumau.RU
Аватара пользователя
berdck
Сообщения: 884
Зарегистрирован: 11 апр 2013, 09:44
Родной город: Бердск
Откуда: Регион 54
Контактная информация:

Re: RSS канал и ТУРБО-СТРАНИЦЫ для Яндекса

Сообщение berdck »

:arrow: Создаем ТУРБО СТРАНИЦЫ ДЛЯ ЯНДЕКСА

Создание турбо-страниц аналогично созданию rss ленты. Поэтому создаем еще одну страницу, но уже для турбо-страниц.
Ниже будут отмечены только основные отличия.

:!: В поле СОДЕРЖИМОЕ ресурса вставляем следующий код:

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:yandex="http://news.yandex.ru"
     xmlns:media="http://search.yahoo.com/mrss/"
     xmlns:turbo="http://turbo.yandex.ru"
     version="2.0">
  <channel>
    <title>[[*longtitle]]</title>
    <link>[[~[[*id]]? &scheme=`full`]]</link>
    <description>[[*introtext:cdata]]</description>
    <language>[[++cultureKey]]</language>
    <atom:link href="[[~[[*id]]? &scheme=`full`]]" rel="self" type="application/rss+xml" />
    [[!getResources?
      &tpl=`rssItemYa`
      &parents=`1,2,4`
      &resources=`-3,-206,-207,-209,-210`
	  &depth=`7`
      &limit=`200`
      &includeContent=`1`
      &includeTVs=`1`
      &showHidden=`1`
      &hideContainers=`1`
    ]]
</channel>
</rss>
Пояснения:

Код: Выделить всё

&tpl=`rssItemYa`
- имя используемого чанка для шаблона вывода данных

Код: Выделить всё

&resources=`-3,-206,-207,-209,-210`
- удаляет из выдачи соответствующие ресурсы (страницы), например 404 ошибку, различные feed'ы и т.д.

Код: Выделить всё

 &parents=`1,2,4`
- указываем родительские категории из которых выводить данные, разницы не увидел может быть ошибся в указании данных

Код: Выделить всё

&limit=`200`
- количество страниц. указывайте все. Яндекс любит, когда все страницы имеют турбо версии.

:!: А в поле КОД ЧАНКА (HTML) вставляем следующий код:
- создаем новый чанк с именем rssItemYa

Код: Выделить всё

<item turbo="true">
    <turbo:extendedHtml>true</turbo:extendedHtml>
    <title><![CDATA[ [[+pagetitle]].]]></title>
    <link>[[++site_url]][[~[[+id]]]]</link>
    <turbo:source></turbo:source>
    <turbo:topic></turbo:topic>
    <pubDate>[[+publishedon:strtotime:date=`%a, %d %b %Y %R:%S`]] +0800</pubDate>
    <author>Author: Login-to.com</author>
    <yandex:related></yandex:related>
<turbo:content>
    <![CDATA[ 
    <figure>
    <img src="[[++site_url]][[+tv.image]]">
    <figcaption>[[+pagetitle]]</figcaption>    
    </figure>
    [[+content:notags:ellipsis=`300`]] ]]>
</turbo:content>
</item>
Вот и все. Идем в Яндекс.Вебмастер и отдаем ему наши турбо-страницы.


Несколько пояснений по измененному коду.
В блок <![CDATA[ СОДЕРЖИМОЕ ]]> в стандартном rss сложно было засунуть картинку (в него добавлялся только один параметр страницы - одно поле с данными), поэтому вывод для турбо-страниц был изменен.

Код: Выделить всё

    <figure>
    <img src="[[++site_url]][[+tv.image]]">
    <figcaption>[[+pagetitle]]</figcaption>    
    </figure>
- данный код отвечает за вывод картинки, которая связана, как картинка вашей страницы (ресурса), поэтому советую создать данное TV поле для всех страниц. Оно вам понадобиться для формирования и полноценных снипетов страниц.

Код: Выделить всё

[[+content:notags:ellipsis=`300`]]
- данный код берет данные из поля содержания страницы, вырезает из него все теги и ограничивает длину текста в 300 символов, и ставит в конце три точки...
Если Вам понравилось :roll:, то не забывайте нажимать кнопочки ПОДЕЛИТЬСЯ... в социальных сетях :idea: Мне будет очень приятно ;)
А если копируете к себе в блог или на сайт, не скупитесь поставить ссылочку или пару на источник :!: - YaDumau.RU
Поделиться с друзьями:
Ответить

Вернуться в «MODX»