UMIhelp

Разработка сайта на UMI.CMS => Шаблоны XSLT => Тема начата: Aksuk от 06 Декабря 2011, 01:21:02

Название: Импорт данных чужих новостных лент
Отправлено: Aksuk от 06 Декабря 2011, 01:21:02
Описываю ситуацию: заказчик хочет завести на сайте бегущую строку с последними новостями РБК. Я пробую решить этот вопрос с помощью XSLT. Вроде бы следует использовать протокол "UHTTP", но поскольку только изучаю технологию, не очень понимаю, как грамотно составить вызов и шаблон. В примере использования - http://help-dev.umi-cms.ru/chapter.XSLTTemplates.uhttp.html - дан вариант с XML-файлом, в котором все объекты уникальны, но ленты новостей (я сейчас даже не говорю об rss-лентах РБК, хотя бы отлично подготовленная лента "Ленты.ру" - http://lenta.ru/r/EX/import.xml) устроены иначе, там куча объектов типа "news", надо создавать список и здесь я не представляю с какого бока зайти. Больше материалов по UHTTP в сети не нашел. Может быть моя задача вообще невыполнима?
Название: Re:Импорт данных чужих новостных лент
Отправлено: admin от 06 Декабря 2011, 22:02:53
все просто выполнимо, делаешь запрос к uhttp вставив в нужное место такой вызов

<xsl:apply-templates select="document('uhttp://lenta.ru/r/EX/import.xml')/newses" mode="lents"/>

и добавь шаблоны для обработки этих узлов

<xsl:template match="newses" mode="lents">
       список новостей:
       <xsl:apply-templates select="news" mode="lents"/>
</xsl:template>

<xsl:template match="news" mode="lents">
       новость:<xsl:value-of select="title"/>
       <p>
               <xsl:value-of select="annotation" disable-output-escaping="yes"/>
       </p>
</xsl:template>
Название: Re:Импорт данных чужих новостных лент
Отправлено: Aksuk от 07 Декабря 2011, 02:14:37
Спасибо, заработало! Самое смешное, что в моей последней версии (вчера бился часа два, не меньше) не хватало самой малости – добавить ".xml" к адресу (почему-то решил, что в нем нет необходимости). ))