Турбо-страницы Яндекс — RSS с турбо

У Яндекса есть так называемые «Турбо-страницы», которые добавляют информацию с RSS лент сайтов в Новости или Дзен. RSS вывод должен быть такого вида:
Пример RSS-канала
<rss
    xmlns:yandex="http://news.yandex.ru"
    xmlns:media="http://search.yahoo.com/mrss/"
    xmlns:turbo="http://turbo.yandex.ru"
    version="2.0"
>
    <channel>
        <item turbo="true">
            <link>http://www.example.com/page1.html</link>
           <turbo:content>
                <![CDATA[
                    <header>
                        <figure>
                            <img src="http://example.com/img.jpg" />
                        </figure>
                        <h1>Заголовок страницы</h1>
                    </header>
                    <h2>Заголовок страницы</h2>
                    <p>Текст с <b>выделением</b> и списком:</p>
                    <ul>
                        <li>пункт 1;</li>
                        <li>пункт 2.</li>
                    </ul>
                    <figure>
                        <img src="http://example.com/img-for-video.jpg" />
                        <figcaption>Подпись к картинке</figcaption>
                    </figure>
                    <iframe
                         width="560"
                         height="315"
                         src=
                          "https://www.youtube.com/embed/<уникальный набор символов>" 
                         frameborder="0" 
                         allowfullscreen
                    </iframe>
                ]]>
           </turbo:content>
        </item>
    </channel>
</rss>


Где можно подкоректировать вывод RSS под стандарт Яндекса?

В файл /common/classes/modules/rss/entity/Rss.entity.class.php нужно добавить к функции несколько строчек (которых у вас нет):
public function __construct() {

        $this->AddRssAttribute('xmlns:atom', 'http://www.w3.org/2005/Atom');
        $this->AddRssAttribute('xmlns:dc', 'http://purl.org/dc/elements/1.1/');
	$this->AddRssAttribute('xmlns:content', 'http://purl.org/rss/1.0/modules/content/');
	$this->AddRssAttribute('xmlns:slash', 'http://purl.org/rss/1.0/modules/slash/');
	$this->AddRssAttribute('xmlns:wfw', 'http://wellformedweb.org/CommentAPI/');
	$this->AddRssAttribute('xmlns:sy', 'http://purl.org/rss/1.0/modules/syndication/');
	$this->AddRssAttribute('xmlns:georss', 'http://www.georss.org/georss');
	$this->AddRssAttribute('xmlns:turbo', 'http://turbo.yandex.ru');
    }


Результат шапки rss будет таким:
Выводит так
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:georss="http://www.georss.org/georss" xmlns:turbo="http://turbo.yandex.ru" version="2.0">

В файле common/templates/skin/название шаблона/tpls/action/rss/action.rss.index.tpl (или какой у вашего шаблона)нужно сделать так:

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" {$oRss->getRssAttributesStr()}>
    {foreach $oRss->getChannels() as $oRssChannel}
    <channel>
        <title>{$oRssChannel->getTitle()}</title>
        <link>{$oRssChannel->getLink()}</link>
        <description><![CDATA[{$oRssChannel->getDescription()}]]></description>
        <language>{$oRssChannel->getLanguage()}</language>
        <managingEditor>{$oRssChannel->getManagingEditor()}</managingEditor>
        <webMaster>{$oRssChannel->getWebMaster()}</webMaster>
        <generator>{$oRssChannel->getGenerator()}</generator>
        {foreach $oRssChannel->getItems() as $oRssItem}
            <item turbo="true">
			    <title>{$oRssItem->getTitle()|escape:'html'}</title>
                <guid isPermaLink="true">{$oRssItem->getGuid()}</guid>
				<link>{$oRssItem->getLink()}</link>
				<turbo:content>
                <author>{$oRssItem->getAuthor()}</author>
                <description><![CDATA[{$oRssItem->getDescription()}]]></description>
                <pubDate>{$oRssItem->getPubDate()}</pubDate>
                {foreach $oRssItem->getCategories() as $sCategory}
                    <category>{$sCategory}</category>
                {/foreach}
            </turbo:content>
			</item>
        {/foreach}
    </channel>
    {/foreach}
</rss>


После этого добавляем в яедекс https://сайт.ru/rss и получаем зеленый свет окончания проверки «Без ошибок».

Спасибо DonDenchik за помощь!

Письмо от яндекс вебмастер

Тестирую альфа версию, вот сегодня яндекс вебмастер прислал письмо, в котором жалуется на нечитаемый или слабо видимый текст, надо наверное что то с этим сделать. Вот содержание:
Здравствуйте, Rea Yuran!

Во время последнего посещения роботом сайта investb.ru, права на который Вы подтвердили в сервисе Яндекс.Вебмастер, наши алгоритмы обнаружили на его страницах скрытый текст, недоступный пользователям сайта и предназначенный исключительно для робота поисковой системы. Примеры страниц приведены ниже:

investb.ru/en/profile/YuriyGulyaev/favourites/comments/
investb.ru/en/profile/YuriyGulyaev/favourites/comments/

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

Обратите внимание: скрытый текст может появиться в исходном коде страницы в результате взлома, а также может быть автоматически удален после индексации поисковой системой. В этом случае рекомендуем сменить все пароли доступа и проверить сайт на наличие уязвимости. Поскольку злоумышленники часто пользуются уязвимостями старых версий различных CMS, рекомендуем использовать самую последнюю версию Вашей системы. Также необходимо следить за своевременным обновлением установленной на компьютере антивирусной программы.


С уважением,
Яндекс.Вебмастер

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