CMS DataLife Engine - Система управления сайтами

Sign in to follow this  
ntrtv

Вторая RSS-лента на DLE

Recommended Posts

Кто поможет с плагином, который будет создавать вторую RSS-ленту на DLE 13? Основная - для Яндекс.Новостей. Нужна еще одна - стандартная. Спасибо заранее.

Share this post


Link to post
Share on other sites

а вот тут по-подробнее, если можно

ну, или ссылку, где об этом говорит Владимир
а то у меня три разные ленты под мои нужды, будет оч фигово, если перестанут работать после обновления )))

Share this post


Link to post
Share on other sites
2 часа назад, prikindel сказал:

а вот тут по-подробнее, если можно

ну, или ссылку, где об этом говорит Владимир
а то у меня три разные ленты под мои нужды, будет оч фигово, если перестанут работать после обновления )))

https://dle-news.ru/release/1747-datalife-engine-v130-final-release.html#sel=135:1,135:60

 

Именно из-за этого я пока и не обновляю. Тут на форуме кое-кто предложил сделать такой модуль за 50$ :)

Edited by ntrtv

Share this post


Link to post
Share on other sites

там не может быть ничего такого на 50 баксов)

посмотрю - отпишусь

Share this post


Link to post
Share on other sites
15 часов назад, ntrtv сказал:

Тут на форуме кое-кто предложил сделать такой модуль за 50$

За две строчки? Оригинально. То что в 13.0 нужно делать по другому, не значит что это делается сложнее. Это просто делается по другому, а как было это всего две строчки кода, так и осталось, даже проще можно сделать чем было раньше. Я даже открою секрет то что написано в статье https://dle-news.ru/tips/228-ispolzovanie-rss-potokov-raznogo-tipa.html было написано 11 !!!! лет назад, по одной простой причине, 11 лет назад у яндекс новостей был свой несовместимый формат. Он уже много лет как соответствует RSS 2.0, и можно сделать все одним потоком, нет нужды в двух разных потоков. Более того  шаблон RSS, который идет в дистрибутиве по умолчанию, именно так и сделан.

Share this post


Link to post
Share on other sites
5 часов назад, celsoft сказал:

За две строчки? Оригинально. То что в 13.0 нужно делать по другому, не значит что это делается сложнее. Это просто делается по другому, а как было это всего две строчки кода, так и осталось, даже проще можно сделать чем было раньше. Я даже открою секрет то что написано в статье https://dle-news.ru/tips/228-ispolzovanie-rss-potokov-raznogo-tipa.html было написано 11 !!!! лет назад, по одной простой причине, 11 лет назад у яндекс новостей был свой несовместимый формат. Он уже много лет как соответствует RSS 2.0, и можно сделать все одним потоком, нет нужды в двух разных потоков. Более того  шаблон RSS, который идет в дистрибутиве по умолчанию, именно так и сделан.

Я это понимаю, и поэтому попросил скинуть цену вдвое :) Жду ответа.

5 часов назад, celsoft сказал:

За две строчки? Оригинально. То что в 13.0 нужно делать по другому, не значит что это делается сложнее. Это просто делается по другому, а как было это всего две строчки кода, так и осталось, даже проще можно сделать чем было раньше. Я даже открою секрет то что написано в статье https://dle-news.ru/tips/228-ispolzovanie-rss-potokov-raznogo-tipa.html было написано 11 !!!! лет назад, по одной простой причине, 11 лет назад у яндекс новостей был свой несовместимый формат. Он уже много лет как соответствует RSS 2.0, и можно сделать все одним потоком, нет нужды в двух разных потоков. Более того  шаблон RSS, который идет в дистрибутиве по умолчанию, именно так и сделан.

Но валидатор ругается на ленту Яндекса. Там же у них свои теги enclosure и проч. или их они уже отменили?

То есть, если в Яндекс.Новости отправить стандартный RSS с типом "полный", то его примут вместо специализированного потока?

Share this post


Link to post
Share on other sites

Тов. разработчик? А у вас на сайте какая лента включена? Судя по всему полная? Тогда ее Яндекс готов принять :)

 Но валидатор ругается

 

Untitled_1.jpg

 

 

Edited by ntrtv

Share this post


Link to post
Share on other sites
3 часа назад, ntrtv сказал:

Тов. разработчик? А у вас на сайте какая лента включена? Судя по всему полная? Тогда ее Яндекс готов принять :)

 Но валидатор ругается

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

  • Upvote 1

Share this post


Link to post
Share on other sites

При обновлении RSS в Яндекс.Новостях выходит "Ошибка валидации".. И новости в ленту не идут.. Может, что-то в шаблоне rss.tpl надо что-то подправить для полного экспорта?

10 часов назад, ntrtv сказал:

Тов. разработчик? А у вас на сайте какая лента включена? Судя по всему полная? Тогда ее Яндекс готов принять :)

 Но валидатор ругается

 

Untitled_1.jpg

 

 

Я ошибся, не готов был он ее принять :( 

Edited by ntrtv

Share this post


Link to post
Share on other sites
59 минут назад, ntrtv сказал:

Я ошибся, не готов был он ее принять :( 

Кто он? Вы прочитайте внимательно о чем я раньше написал. Все у вас работает нормально в потоке.

Share this post


Link to post
Share on other sites

Да, сейчас все нормально. Потому что я включил Яндекс. Но если отдавать этот поток в информеры на другие сайты, то там нет картинки - только текст. Картинки я так понял надо вставить в эту секцию, чтобы выводились в информерах. Но как из вставить? Они у меня через допполе идут. 

 

[yandexrss]<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>
<description>{short-story}</description>
<category>{category}</category>{images}


[xfgiven_images]
<enclosure url="[xfvalue_images]" type="image/jpeg"/>
[/xfgiven_images]


[xfgiven_youtubevideo] 
<enclosure url="{rsslink}" type="video/x-ms-asf"/>
[/xfgiven_youtubevideo]


<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
<turbo:content><![CDATA[{full-story}]]></turbo:content>
</item>[/yandexrss]

Share this post


Link to post
Share on other sites
3 минуты назад, ntrtv сказал:

Но как из вставить? Они у меня через допполе идут. 

https://dle-news.ru/extras/online/rss_translate.html

Цитата

Также вы можете использовать дополнительно любые теги которые поддерживаются шаблоном вывода краткиких новостей shortstory.tpl, однако вам необходимо быть внимательными чтобы не был нарушен стандарт вывода RSS 2.0 который используется для RSS трансляции публикаций.

 

Share this post


Link to post
Share on other sites
22 минуты назад, ntrtv сказал:

Но если отдавать этот поток в информеры на другие сайты, то там нет картинки - только текст.

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

Share this post


Link to post
Share on other sites

Мне нужно было:
1. Чтобы новости с картинками из допполя шли в Яндекс. Новости
2. Чтобы новости шли с картинками в информеры на другие сайты

Включая тип Яндекс.Новости в п.2. новости в информеры шли БЕЗ картинок. В итоге путем эксперимента вот что сделал, по крайней мере, работает. Все ли верно? Тип новостей включен Яндекс Новости

 

[yandexrss]<item turbo="true">
<title>{title}</title>
<link>{rsslink}</link>

<description><![CDATA[{short-story}]]></description>

<category>{category}</category>

[xfgiven_images]
<enclosure url="[xfvalue_images]" type="image/jpeg"/>
[/xfgiven_images]

[xfgiven_youtubevideo] 
<enclosure url="{rsslink}" type="video/x-ms-asf"/>
[/xfgiven_youtubevideo]

<pubDate>{rssdate}</pubDate>
<yandex:full-text>{full-story}</yandex:full-text>
<turbo:content><![CDATA[{full-story}]]></turbo:content>
</item>[/yandexrss] 

7 минут назад, celsoft сказал:

Если речь идет о онформерах DLE

Не только, и на других сайтах тоже. Н-р, виджет Яндекса и пр.

Share this post


Link to post
Share on other sites
5 минут назад, ntrtv сказал:

1. Чтобы новости с картинками из допполя шли в Яндекс. Новости

Добавляйте себе это все в свой шаблон. Как вы это делали и раньше. Ничего в данном вопросе в DLE не изменилось, доп. поля как можно было раньше использовать, так и сейчас можно.

 

6 минут назад, ntrtv сказал:

2. Чтобы новости шли с картинками в информеры на другие сайты

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

11 минут назад, ntrtv сказал:

В итоге путем эксперимента вот что сделал, по крайней мере, работает. Все ли верно?

Да верно. Как я написал выше теги из одной секции можно переносить в другие. 

  • Thanks 1

Share this post


Link to post
Share on other sites
В 07.06.2018 в 04:41, celsoft сказал:

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

Может всётаки подскажите как именно ? :) т.к имеется такая же необходимость в нескольких лентах \ в том числе с разными шаблонами под разные цели  )

Share this post


Link to post
Share on other sites

Извиняюсь за то что беспокоил поддержку :) Дали ответ как реализовать . И вправду реализуется вторая rss гораздо проще чем раньше .

 

1) engine/init.php

найти

} elseif($_GET['mod'] == "rss") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rss.php'));
	die();
}

и добавить ниже

elseif($_GET['mod'] == "rssv2") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rssv2.php'));
	die();
}

2) Создать файл engine/rssv2.php с содержимым rss.php но подкорректированный у каждого под свои нужды . Будь то

$config['rss_format'] = "2";
$config['allow_cache'] = false;

или сторонние шаблоны итд . У каждого свои заморочки .

3) лезем физически в файл .htaccess и добавляем редирект ( если необходим )

RewriteRule ^rssv2.xml$ index.php?mod=rssv2 [L]

всё работает :) спасибо тех.поддержке

Edited by juniorkz
  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites
В 31.08.2018 в 22:51, juniorkz сказал:

Извиняюсь за то что беспокоил поддержку :) Дали ответ как реализовать . И вправду реализуется вторая rss гораздо проще чем раньше .

 

1) engine/init.php

найти


} elseif($_GET['mod'] == "rss") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rss.php'));
	die();
}

и добавить ниже


elseif($_GET['mod'] == "rssv2") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rssv2.php'));
	die();
}

2) Создать файл engine/rssv2.php с содержимым rss.php но подкорректированный у каждого под свои нужды . Будь то


$config['rss_format'] = "2";
$config['allow_cache'] = false;

или сторонние шаблоны итд . У каждого свои заморочки .

3) лезем физически в файл .htaccess и добавляем редирект ( если необходим )


RewriteRule ^rssv2.xml$ index.php?mod=rssv2 [L]

всё работает :) спасибо тех.поддержке

Что-то не работает. Принимает глобальные настройки.  То есть, если в файле rssv2 ставлю $config['rss_format'] = "2"; а в настройках RSS переключаю на "Полный", то и файл RSSV2 начинает транслировать полный формат RSS, а не Яндекс.Новости.

Edited by ntrtv

Share this post


Link to post
Share on other sites

У меня в одной rss-ленте Турбо-страницы, Яндекс новости и Яндекс Дзен. Все нормально работает и одно другому не мешает. Не понимаю, зачем что-то выдумывать, если все и так отлично работает.

Share this post


Link to post
Share on other sites
В 02.07.2019 в 14:39, radrigo сказал:

У меня в одной rss-ленте Турбо-страницы, Яндекс новости и Яндекс Дзен. Все нормально работает и одно другому не мешает. Не понимаю, зачем что-то выдумывать, если все и так отлично работает.

То есть, вы одинаковый контент отправляете везде? Но ведь требования у всех этих сервисов разные. У нас коллег в Дзене забанили.  У них тоже шел одинаковый кгонтент везде. К тому же, кроме этих трех бывают нужно и еще куда-то Rss отправить с определенным контентом. Например, только из определенной категории, или исключив какую-либо категорию.

Share this post


Link to post
Share on other sites
23 часа назад, ntrtv сказал:

То есть, вы одинаковый контент отправляете везде? Но ведь требования у всех этих сервисов разные. У нас коллег в Дзене забанили.  У них тоже шел одинаковый кгонтент везде. К тому же, кроме этих трех бывают нужно и еще куда-то Rss отправить с определенным контентом. Например, только из определенной категории, или исключив какую-либо категорию.

Конечно контент с одной новости для всех одинаковый, но по-разному оформлен.

 

Для Яндекс новости например полная новость в пределах этих тегов
<yandex:full-text></yandex:full-text>

 

Для Турбо-страниц
<turbo:content></turbo:content>

 

Для Яндекс дзена
<content:encoded></content:encoded>

 

Вот пример моей rss-ленты. Везде всё добавляется без проблем
https://gusev-online.ru/rss.xml

 

Главное правильно сделать

Share this post


Link to post
Share on other sites
В 31.08.2018 в 22:51, juniorkz сказал:

Извиняюсь за то что беспокоил поддержку :) Дали ответ как реализовать . И вправду реализуется вторая rss гораздо проще чем раньше .

 

1) engine/init.php

найти


} elseif($_GET['mod'] == "rss") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rss.php'));
	die();
}

и добавить ниже


elseif($_GET['mod'] == "rssv2") {
	include_once (DLEPlugins::Check(ENGINE_DIR . '/rssv2.php'));
	die();
}

2) Создать файл engine/rssv2.php с содержимым rss.php но подкорректированный у каждого под свои нужды . Будь то


$config['rss_format'] = "2";
$config['allow_cache'] = false;

или сторонние шаблоны итд . У каждого свои заморочки .

3) лезем физически в файл .htaccess и добавляем редирект ( если необходим )


RewriteRule ^rssv2.xml$ index.php?mod=rssv2 [L]

всё работает :) спасибо тех.поддержке

спасибо, что поделились инфой.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this