Технический сбой

Сайт временно работает в режиме только для чтения, идут восстановительные работы. Приносим свои извинения за неудобства.
DLE FAQ » Все вопросы » Общие вопросы по PHP » Добавление дополнительных полей в RSS DLE

Добавление дополнительных полей в RSS DLE


     rss, дополнительные поля    Общие вопросы по PHP, Хаки    14650

вопрос
Здравствуйте.
У меня на сайте в shortstory записывается только небольшой анонс новости.
Все картинки выводятся через доп поля.
И в результате RSS у меня без картинок, только с анонсом новости в одно предложение.
Скажите, можно ли в RSS добавить дополнительное поле, в котором лежит необходимая картинка?
в какую сторону копать?

Ответил: SergioPoverony


Строка в RSS.php
<description>{short-story}</description>

Меняем на
<description><![CDATA[<img src=\"[xfvalue_YOU_image]"><br>\n{short-story}]]></description>


Где [xfvalue_YOU_image] - это ваше дополнительное поля с ссылкой на изображение

16 комментариев

Mr. Hyde
Юзер

Mr. Hyde - -

engine/rss.php ищите запрос на вывод и добавляйте в него доп. поле

nowheremany
Эксперт

nowheremany - -

И ещё надо распарсивание доп полей и их вывод настраивать

Благодарность принимаю тут Связь

rashpil
Эксперт

rashpil - -

Не. Это надо в show.short.php подключать к шаблонизатору вывод отдельного дополнительного поля и его прописывать в шаблон рсс ленту

Axel
Юзер

Axel - -

Цитата: Mr. Hyde
engine/rss.php ищите запрос на вывод и добавляйте в него доп. поле

Не могли бы Вы более детально описать весь процесс? А то сам я не разберусь :)

SergioPoverony
Юзер

SergioPoverony - -

Ответил на вопрос! Шапку смотри

dmftaras
Юзер

dmftaras - -

аська 142пять492, пиши за 2-3$сделаю

SergioPoverony
Юзер

SergioPoverony - -

Барыги за 2-3 сделаю wink - одну строчку поменять? lol

Axel
Юзер

Axel - -

Цитата: SergioPoverony
Барыги за 2-3 сделаю - одну строчку поменять?

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

Axel
Юзер

Axel - -

Сделал все изменения, но у меня не появились картинки в RSS...

Mr. Hyde
Юзер

Mr. Hyde - -

Открываете engine/modules/show.short.phpи после:
if( isset($view_template) AND $view_template == "rss" ) {

вставляете:
            $xfdata = xfieldsdataload($row['xfields']);
            $tpl->set('{image}',$xfdata['название доп поля']);


И в engine/rss.php используйте тег {image}

P.S. Не проверял

calfetko
Юзер

calfetko - -

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

calfetko
Юзер

calfetko - -

так и не смог решить данную проблему, хотя на пол пути к решению, на данном этапе определил, что если в файле rss.php вставить к примеру просто вывод ссылки на картинку, то выводится ссылка, только в тех местах где картинка через доп. поле, тогда в файле shortstory необходимо впихнуть код для вывода картинки, вот на этом месте я и заглох((
ниже приведу сам код rss.php
$tpl->template = <<<XML
<item>
<title>{title}</title>
<guid isPermaLink="true">{rsslink}</guid>
<link>{rsslink}</link>
<description><![CDATA[{short-story}<br><img src="{images_xfield}">]]></description>
<category><![CDATA[{category}]]></category>
<dc:creator>{rssauthor}</dc:creator>
<pubDate>{rssdate}</pubDate>
</item>
XML;
а вот код shortstory
// Обработка картинки из доп. поля в rss
$xfdata = xfieldsdataload($row['xfields']);
$tpl->set('{images_xfield}',$xfdata['poster_iphone_game_big']);


// Обработка картинки из доп. поля в rss
вот в код shortstory необходимо вставить код на вывод картинки, помогите!

calfetko
Юзер

calfetko - -

сорри, вопрос решен, стандартными функциями dle

Russian
Юзер

Russian - -

Салют! Я так и не смог в 9.7 сделать как у вас тут описано, все перепробовал и ничего.... А что за стандартный способ??? Добавление картинки в описание??? Просто я использовал доп поле для скринов и чтобы текст автоматом вырвнивался по центру картинки с боку.
<table style="width: 100%; border-collapse: collapse;"><tbody>
<td style=" padding-right: 3px; padding-left: 5px; height: 5px; letter-spacing: 3px; word-spacing: 2px; padding-top: 5px;" align="center">
<div class="images">
[full-link]
[xfgiven_image]
<img src="[xfvalue_image]" title="Смотреть полностью {title}" border="0" alt="{title}">
[/xfgiven_image]
[/full-link]
</div>
</td>
<td>
{short-story}
</td></tbody></table>
Как поле вывести в rss подскажите, а то я на dle только пересел и не было опыта по общаться с php только с html

Russian
Юзер

Russian - -

Вот как делается в RSS.php {short-story} меняем на:
<description><![CDATA[<center><img src="[xfvalue_image]"/></center><br>{short-story}]]></description>

Жека
Юзер

Жека - -

Кто подскажет, как вывести в rss ленте и полную новость?

Похожие вопросы

наверх