Перейти к публикации

Рекомендованные сообщения

На днях Яндекс.Вебмастер запустил:

 

- Быстрая загрузка на мобильных устройствах.
Турбо-страницы — технология, благодаря которой ваш контент будет загружаться быстрее.

 

В Вебмастере требуется Добавить RSS-канал.

Добавлен канал.

 

Но выдает ошибки:

- В элементе item отсутствует атрибут turbo со значением true...

 

Разработчики могут в следующей версии ДЛЕ внести необходимые коррективы под эти Турбо-страницы от Яндекс ?

Изменено пользователем holistic
Ссылка на сообщение
Поделиться на других сайтах
6 часов назад, Captain сказал:

Спасибо!

Изменено пользователем holistic
Ссылка на сообщение
Поделиться на других сайтах

Turbo это иная структура rss и в него можно отдавать описания с некоторой html разметкой.

Изменив стандартный шаблон вы лишитесь обычного внешнего rss канала.

Turbo надо делать отдельным независимым rss каналом.

Ссылка на сообщение
Поделиться на других сайтах
3 часа назад, MSK сказал:

Turbo это иная структура rss и в него можно отдавать описания с некоторой html разметкой.

Изменив стандартный шаблон вы лишитесь обычного внешнего rss канала.

Turbo надо делать отдельным независимым rss каналом.

С чего вдруг то. Знаю несколько сайтов которые добавляли Turbo и не лишались никакого обычного канала. Турбо не портит RSS стандарт, это дополнение к нему. В обычном RSS также можно выводить c HTML форматированием публикации, а не просто текст. Включается тип RSS Яндекс новости, добавляются в шаблон теги для турбо и все.

Ссылка на сообщение
Поделиться на других сайтах

А можно пример? Вот стандартный rss.tpl

[shortrss]<item>
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<description>{short-story}</description>
<category>{category}</category>
<pubDate>{rssdate}</pubDate>
</item>[/shortrss]
[fullrss]<item>
<category>{link-category}</category><title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<description><![CDATA[{short-story}]]></description>
<pubDate>{rssdate}</pubDate>
</item>[/fullrss]
[yandexrss]<item>
<title>{title}</title>
<link>{rsslink}</link>
<description>{short-story}</description>
<category>{category}</category>{images}
<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
</item>[/yandexrss]

Вот ссылка на их документацию https://yandex.ru/support/webmaster/turbo/feed.html

Чего там куда дописать?

Ссылка на сообщение
Поделиться на других сайтах

У кого-нибудь получилось настроить вывод изображения в турбо-странице?

Изменено пользователем Snoze
Ссылка на сообщение
Поделиться на других сайтах
В 11/24/2017 в 13:24, celsoft сказал:

Включается тип RSS Яндекс новости, добавляются в шаблон теги для турбо и все.

А как при этом иметь доступным стандартный RSS-канал (Полный), не подскажете ли?

Как его отдельно адрес иметь?

Или скажем основной:

http://site.ru/rss.xml

А Turbo-канал для Яндекса:

http://site.ru/yandex-rss.xml

?

Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, holistic сказал:

А как при этом иметь доступным стандартный RSS-канал (Полный), не подскажете ли?

Как его отдельно адрес иметь?

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

Ссылка на сообщение
Поделиться на других сайтах

вписал в шаблон rss.tpl и в rss.php

[fullrss]<item turbo="true">
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<turbo:content><![CDATA[{short-story}]]></turbo:content>
<category><![CDATA[{category}]]></category>
<dc:creator>сайт.ру</dc:creator>
<pubDate>{rssdate}</pubDate>
<lastBuildDate>{rssdate}</lastBuildDate>
</item>[/fullrss]

в яшке пишет Ошибка обновления ! это яша глбчит или я что то не так делаю отпишитесь кто сделал у кого получилось так сказать)

 

 

 

Изменено пользователем web_chuvak
Ссылка на сообщение
Поделиться на других сайтах

Во первых нужно включать Яндекс новости в настройках скрипта, во вторых контент для турбо пишется полная новость а не опять краткая и вписывать это нужно в секцию шаблона для яндекс новостей, а не обычного RSS

Ссылка на сообщение
Поделиться на других сайтах
21 минуту назад, Snoze сказал:

Выбираю Яндекс Новости и сохраняю, обновляю страницу, стоит Полная.

Значит у вас нет прав на запись в файл engine/data/config.php. Установите на него CHMOD 666

Ссылка на сообщение
Поделиться на других сайтах
Только что, celsoft сказал:

Значит у вас нет прав на запись в файл engine/data/config.php. Установите на него CHMOD 666

Нет, похоже браузер тупит. Проверил сейчас, стоит Яндекс Новости, а на config.php стоял CHMOD 644, поменял на 666

Ссылка на сообщение
Поделиться на других сайтах

$rss_content = <<<XML
<?xml version="1.0" encoding="{$config['charset']}"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
<title>{$config['home_title']}</title>
<link>{$config['http_home_url']}</link>
<language>ru</language>
<description>{$config['home_title']}</description>
<generator>DataLife Engine</generator>
XML;

if( $config['site_offline'] OR ! $config['allow_rss'] ) {
    
    $rss_content .= <<<XML
<item turbo="true">
<title>RSS in offline mode</title>
<guid isPermaLink="true"></guid>
<link></link>
<turbo:content>
<description>RSS in offline mode</description>
</turbo:content>
<category>undefined</category>
<dc:creator>DataLife Engine</dc:creator>
<pubDate>DataLife Engine</pubDate>
</item>
XML;

} else {
    
    if( $config['rss_format'] == 1 ) {
        
        $tpl->template = <<<XML
<item turbo="true">
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<turbo:content>
<description><![CDATA[{short-story}]]></description>
</turbo:content>
<category><![CDATA[{category}]]></category>
<dc:creator>{rssauthor}</dc:creator>
<pubDate>{rssdate}</pubDate>
</item>
XML;
    
    } elseif( $config['rss_format'] == 2 ) {
        
        $rss_content = <<<XML
<?xml version="1.0" encoding="{$config['charset']}"?>
<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>{$config['home_title']}</title>
<link>{$config['http_home_url']}</link>
<language>ru</language>
<turbo:content>
<description>{$config['home_title']}</description>
</turbo:content>
<yandex:adNetwork
         type="Yandex"
         id="______________"
         turbo-ad-id="first_ad_place">
        </yandex:adNetwork>

<image>
<url>{$config['http_home_url']}yandexlogo.gif</url>
<title>{$config['home_title']}</title>
<link>{$config['http_home_url']}</link>
</image>
<generator>DataLife Engine</generator>
XML;
        
        $tpl->template = <<<XML
<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>
<turbo:content>
<description>{short-story}</description>
</turbo:content>
<category>{category}</category>{images}
<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
</item>
XML;
    
    } else {
        
        $tpl->template = <<<XML
<item turbo="true">
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<turbo:content>
<description>{short-story}</description>
</turbo:content>
<category>{category}</category>
<dc:creator>{rssauthor}</dc:creator>
<pubDate>{rssdate}</pubDate>
</item>
XML;
    
    }
    
    $tpl->copy_template = $tpl->template;
    
    include_once ENGINE_DIR . '/engine.php';
    
    $rss_content .= $tpl->result['content'];
}

$rss_content .= '</channel></rss>';

header( 'Content-type: application/xml' );
echo $rss_content;

?>

все работает. 

 

Правил только в rss.php

 

Изменено пользователем banker
Ссылка на сообщение
Поделиться на других сайтах

напишу свой вариант который нормально заработал на dle 12 utf-8

 

/engine/rss.php

 

заменить:

[fullrss]<item>
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<description><![CDATA[{short-story}]]></description>
<category><![CDATA[{category}]]></category>
<dc:creator>{rssauthor}</dc:creator>
<pubDate>{rssdate}</pubDate>
</item>[/fullrss]

на:

[fullrss]<item turbo="true">
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<turbo:content><![CDATA[{short-story}]]></turbo:content>
<category><![CDATA[{category}]]></category>
<dc:creator>Сайт.ru</dc:creator>
<pubDate>{rssdate}</pubDate>
<lastBuildDate>{rssdate}</lastBuildDate>
</item>[/fullrss]

заменить:

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">

на:

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:yandex="http://news.yandex.ru" xmlns:media="http://search.yahoo.com/mrss/" xmlns:turbo="http://turbo.yandex.ru">

 

/templates/rss.tpl

 

заменить:

[fullrss]<item>
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<description><![CDATA[{short-story}]]></description>
<category><![CDATA[{category}]]></category>
<dc:creator>{rssauthor}</dc:creator>
<pubDate>{rssdate}</pubDate>
</item>[/fullrss]

на:

[fullrss]<item turbo="true">
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<turbo:content><![CDATA[{short-story}]]></turbo:content>
<category><![CDATA[{category}]]></category>
<dc:creator>Сайт.ru</dc:creator>
<pubDate>{rssdate}</pubDate>
<lastBuildDate>{rssdate}</lastBuildDate>
</item>[/fullrss]

в админке

Настройка RSS экспорта новостей

Тип экспорта основного RSS потока / Только опубликованные на главной

Формат экспорта RSS потока / Полный

Ссылка на сообщение
Поделиться на других сайтах

Всё работает без каких либо правок rss.php, в шаблоне /templates/rss.tpl пишем:

[yandexrss]<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>
<description>{full-story}</description>
<category>{category}</category>{images}
<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
</item>[/yandexrss]

В настройках включить Яндекс новости и не нужно огород городить.

Ссылка на сообщение
Поделиться на других сайтах

Зачем вы лезете в /engine/rss.php? там задан базовый XML только на тот случай если нет шаблона template/rss.tpl на сервере. А он там должен быть. И все правки делаются в шаблоне, потому как если если шаблон есть, то все ваши правки /engine/rss.php не имеют никакой силы. 

Ссылка на сообщение
Поделиться на других сайтах
5 часов назад, Captain сказал:
Цитата

В настройках включить Яндекс новости и не нужно огород городить.

А что делать если без огорода не работает?) с вашим вариантом в веб мастере Ошибка обновления RSS-канала сайта

 

 

Изменено пользователем web_chuvak
Ссылка на сообщение
Поделиться на других сайтах
18 часов назад, web_chuvak сказал:

А что делать если без огорода не работает?) с вашим вариантом в веб мастере Ошибка обновления RSS-канала сайта

Делать исправления корректно в шаблоне. Это единственная проблема по которой могут быть ошибки. А валидатор в яндекс вебмастере показывает что именно не так с вашим RSS потоком.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 29.11.2017 в 13:40, Captain сказал:

Всё работает без каких либо правок rss.php, в шаблоне /templates/rss.tpl пишем:


[yandexrss]<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>
<description>{full-story}</description>
<category>{category}</category>{images}
<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
</item>[/yandexrss]

В настройках включить Яндекс новости и не нужно огород городить.

Полностью согласен, всё работает без танцоров с бубнами, только добавить надо в <item turbo="true"> и всё !

Ссылка на сообщение
Поделиться на других сайтах
17 часов назад, doctorzhak сказал:

Полностью согласен, всё работает без танцоров с бубнами, только добавить надо в <item turbo="true"> и всё !

Еще в настройках в поле "Формат экспорта RSS потока" , нужно выбрать Яндекс новости.

Ссылка на сообщение
Поделиться на других сайтах

Еще добавлю, турбо нормально работает с 10 новостями в потоке, при 20 постоянная ошибка обновления. Как там в промежутке - не проверял. Имей те ввиду!.

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
On 29.11.2017 at 5:40 PM, Captain said:

Всё работает без каких либо правок rss.php, в шаблоне /templates/rss.tpl пишем:


[yandexrss]<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>
<description>{full-story}</description>
<category>{category}</category>{images}
<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
</item>[/yandexrss]

В настройках включить Яндекс новости и не нужно огород городить.

Отлично.

Подскажите, этот блок нужно поставить вместо старого [yandexrss]...[/yandexrss]?

ИЛИ вместе с ним, ниже его?

Т.е. у нас будет 4 блока в /templates/rss.tpl?

[shortrss]<item>...

[fullrss]<item>...

[yandexrss]<item>...

[yandexrss]<item turbo="true">...

Так?

 

 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...