Форумы / National / Russian / Вывод картинок в rss

mexorus
#1 23.02.2019 09:08

Подскажите как сделать Rss с выводом изображения в таком виде 

 
<title>Название.</title>
<img>Изображение.</img>
<description>
<![CDATA[
<p>Новость.</p>
]]></description>
<pubDate>сб, 23 фев 2019 08:00:04 -0000</pubDate>
<link>
Roffun
#2 24.02.2019 16:58
#44117 mexorus:

Подскажите как сделать Rss с выводом изображения в таком виде 

<title>Название.</title>
<enclosure url="Изображение." type="mime/type"/>
<description>
<![CDATA[
<p>Новость.</p>
]]></description>
<pubDate>сб, 23 фев 2019 08:00:04 -0000</pubDate>
<link>

Mime types изображений.

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
mexorus
#3 01.03.2019 17:25
#44120 Roffun:
#44117 mexorus:

Подскажите как сделать Rss с выводом изображения в таком виде 

<title>Название.</title>
<enclosure url="Изображение." type="mime/type"/>
<description>
<![CDATA[
<p>Новость.</p>
]]></description>
<pubDate>сб, 23 фев 2019 08:00:04 -0000</pubDate>
<link>

Mime types изображений.

Мне бы в коде плагина показать что править чтоб в таком виде вышло.

Roffun
#4 01.03.2019 17:58
#44144 mexorus:  Мне бы в коде плагина показать что править чтоб в таком виде вышло.

Чтобы в плагине не править, в папке шаблона (там же где index.tpl лежит):

  • создаете папку modules
  • внутри папки modules создаете папку rss
  • внутри папки rss создаёте файл  rss.tpl

Открываете файл в редакторе и вставляете код:

<!-- BEGIN: MAIN -->
<?xml version='1.0' encoding='{RSS_ENCODING}'?>
<rss version='2.0'>
	<channel>
		<title>{RSS_TITLE}</title>
		<description>{RSS_DESCRIPTION}</description>
		<link>{RSS_LINK}</link>
		<generator>Cotonti</generator>
		<language>{RSS_LANG}</language>
		<pubDate>{RSS_DATE}</pubDate>

		<!-- BEGIN: ITEM_ROW -->
		<item>
			<title>{RSS_ROW_TITLE}</title>
			<!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
			<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>
			<!-- ENDIF -->
			<description><![CDATA[{RSS_ROW_DESCRIPTION|strip_tags}]]></description>
			<pubDate>{RSS_ROW_DATE}</pubDate>
			<link><![CDATA[{RSS_ROW_LINK}]]></link>
		</item>
		<!-- END: ITEM_ROW -->

	</channel>
</rss>
<!-- END: MAIN -->

Это будет работать для вывода изображений модуля page, если плагин attacher установили.

Добавлено 7 минут спустя:

enclosure это специальный тег, если нужно в этом месте именно img, то замените:

<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>

на:

<img src="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" alt="{RSS_ROW_TITLE}">

 

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
Отредактировано: Roffun (01.03.2019 18:08, 5 лет назад)
mexorus
#5 03.03.2019 08:27
#44147 Roffun:
#44144 mexorus:  Мне бы в коде плагина показать что править чтоб в таком виде вышло.

Чтобы в плагине не править, в папке шаблона (там же где index.tpl лежит):

  • создаете папку modules
  • внутри папки modules создаете папку rss
  • внутри папки rss создаёте файл  rss.tpl

Открываете файл в редакторе и вставляете код:

<!-- BEGIN: MAIN -->
<?xml version='1.0' encoding='{RSS_ENCODING}'?>
<rss version='2.0'>
	<channel>
		<title>{RSS_TITLE}</title>
		<description>{RSS_DESCRIPTION}</description>
		<link>{RSS_LINK}</link>
		<generator>Cotonti</generator>
		<language>{RSS_LANG}</language>
		<pubDate>{RSS_DATE}</pubDate>

		<!-- BEGIN: ITEM_ROW -->
		<item>
			<title>{RSS_ROW_TITLE}</title>
			<!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
			<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>
			<!-- ENDIF -->
			<description><![CDATA[{RSS_ROW_DESCRIPTION|strip_tags}]]></description>
			<pubDate>{RSS_ROW_DATE}</pubDate>
			<link><![CDATA[{RSS_ROW_LINK}]]></link>
		</item>
		<!-- END: ITEM_ROW -->

	</channel>
</rss>
<!-- END: MAIN -->

Это будет работать для вывода изображений модуля page, если плагин attacher установили.

Добавлено 7 минут спустя:

enclosure это специальный тег, если нужно в этом месте именно img, то замените:

<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>

на:

<img src="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" alt="{RSS_ROW_TITLE}">

 

Спасибо за код все заработало.

Добавлено 4 минуты спустя:

Еще вопрос картинка появилась в краткой новости тут https://vk.com/моя группа, а возможно сделать и в полной тут https://vk.com/@моя группа-rss

Отредактировано: mexorus (03.03.2019 16:26, 5 лет назад)
Roffun
#6 04.03.2019 01:30

Вот статья на тему вывода изображений в rss ленте

Добавлено 1 минута спустя:

#44158 mexorus:  а возможно сделать и в полной тут https://vk.com/@моя группа-rss

Не понял вопроса, в примере указано как вывести там, где выводит модуль rss.

Добавлено 2 минуты спустя:

            <!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
            <enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>
            <!-- ENDIF -->

Этот код нужно заменить на тот, что указан в уроке:

<!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')}" type="{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')|att_getMime}" length="{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')|filesize}"/>
<!-- ENDIF -->

 

Добавлено 11 часов спустя:

Кстати, посмотреть в действии можно так:

Открыть rss ленту сайта cmscot.net в браузере Опера (там читалка удобная), и добавить в "мои источники".

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
Отредактировано: Roffun (04.03.2019 13:17, 5 лет назад)
mexorus
#7 04.03.2019 13:59
#44160 Roffun:

Вот статья на тему вывода изображений в rss ленте

Добавлено 1 минута спустя:

#44158 mexorus:  а возможно сделать и в полной тут https://vk.com/@моя группа-rss

Не понял вопроса, в примере указано как вывести там, где выводит модуль rss.

Добавлено 2 минуты спустя:

            <!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
            <enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this)}" type="{PHP.item.fields.ID|att_get_Item_Img_MimeType('page',$this)}" length="{PHP.item.fields.ID|att_get('page',$this,'','size')}"/>
            <!-- ENDIF -->

Этот код нужно заменить на тот, что указан в уроке:

<!-- IF {PHP.item.fields.ID|att_count('page',$this,'','images')} > 0 -->
<enclosure url="{PHP.cfg.mainurl}/{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')}" type="{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')|att_getMime}" length="{PHP.item.fields.ID|att_get('page',$this,'')|att_thumb($this,400,300,'crop')|filesize}"/>
<!-- ENDIF -->

 

Добавлено 11 часов спустя:

Кстати, посмотреть в действии можно так:

Открыть rss ленту сайта cmscot.net в браузере Опера (там читалка удобная), и добавить в "мои источники".

Вот это нужно получить https://vk.com/@kirovsk_online_portal-bezdomnye-schenki-v-kirovske-v-poiskah-doma а у меня тоже самое но без картинки.

Roffun
#8 04.03.2019 14:08
#44162 mexorus:  Вот это нужно получить https://vk.com/@kirovsk_online_portal-bezdomnye-schenki-v-kirovske-v-poiskah-doma а у меня тоже самое но без картинки.

Какое это имеет отношение к модулю rss ?

В примере указано, как добавить в ленту сайта картинку, которая прикреплена к статье. Вот в ленте и смотрите, а при чем тут vk.com ?

Добавлено 2 минуты спустя:

#44160 Roffun:

Вот статья на тему вывода изображений в rss ленте

 

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts
mexorus
#9 04.03.2019 14:13

Я с rss в вк сливаю и все выходит отлично кроме кртинки как в примере вот и спрашиваю мошет вы сможете подсказать как получить тоже самое

Добавлено 1 минута спустя:

#44163 Roffun:
#44162 mexorus:  Вот это нужно получить https://vk.com/@kirovsk_online_portal-bezdomnye-schenki-v-kirovske-v-poiskah-doma а у меня тоже самое но без картинки.

Какое это имеет отношение к модулю rss ?

В примере указано, как добавить в ленту сайта картинку, которая прикреплена к статье. Вот в ленте и смотрите, а при чем тут vk.com ?

Добавлено 2 минуты спустя:

#44160 Roffun:

Вот статья на тему вывода изображений в rss ленте

 

Статью почитал спасибо, но знаний пока маловато, сделал как в примере, но увы пока.

А в ленте то конечно круто выглядит

Отредактировано: mexorus (04.03.2019 14:22, 5 лет назад)
Roffun
#10 04.03.2019 16:43
#44164 mexorus:

Я с rss в вк сливаю и все выходит отлично кроме кртинки как в примере вот и спрашиваю мошет вы сможете подсказать как получить тоже самое

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

Пробуйте тег img, или enclosure, других вариантов нет, модуль лишь выводит список, а где его используют - не знает.

Улетел на другую планету, а там почты нету.. https://www.cotonti.com/forums/45298?m=posts