Выборка из нескольких Инфосистем

#
Re: Выборка из нескольких Инфосистем
что именно работает не как надо? у первого 8 просмотров, у другого нет просмотров.


первый 8 просмотров, второй 31, третий 2. Неправильно. Про это и говорю.
Делаем лучшее
#
Re: Выборка из нескольких Инфосистем
поможете?
Делаем лучшее
Модератор
#
Re: Выборка из нескольких Инфосистем
<xsl:apply-templates select="blocks/items/item[item_status=1]">
   <xsl:sort select="item_show_count" order="descending" data-type="number" />
</xsl:apply-templates>
#
Re: Выборка из нескольких Инфосистем
ух-ты. пасиб огромное. то что надо. глоток свежего воздуха
Делаем лучшее
Модератор
#
Re: Выборка из нескольких Инфосистем
speedy,
пожалуйста
#
Re: Выборка из нескольких Инфосистем
Написать свой обработчик с выборками из ИС и генерацией RSS (есть соответствующий класс).


Можете немного подробнее. не совсем с API еще освоился. некоторые моменты непонятны.
если можно с примерами )
Делаем лучшее
#
Re: Выборка из нескольких Инфосистем
я про
Написать свой обработчик с выборками из ИС и генерацией RSS (есть соответствующий класс).
Делаем лучшее
#
Re: Выборка из нескольких Инфосистем
Подскажите, какой код куда надо вставить (что в шаблон, что в xsl). Вставляю туда сюда... Эксперименты не заканчиваются удачно  ((
Прошу написать чуть более подробно, как на главную вывести облако тегов из выбранных информационных систем.

Спасибо.
///
#
Re: Выборка из нескольких Инфосистем
speedy писал(а):
Я ж не наезжаю. Просто не дождался вас касательно второй проблемы. Но как говорится если долго мучится…

Решение как всегда оказалось простым.
Например нам нужно получить 6 элементов из 5-ти ИС с сортировкой по количеству просмотров. При этом нужно чтобы сортировка была объективной. Т.е. чтобы из элементов всех! ИС выбрало и отсортировало по просмотрам, а не по 2 например элемента брало из каждой системы.

Для начала выбираем элементы из всех ИС:

<?php
/* Вывод информационных систем */
$InformationSystem = & singleton('InformationSystem');

$external_propertys=array();
$external_propertys['ОтображатьСсылкуНаАрхив']=0;
$external_propertys['ОтображатьСсылкиНаСледующиеСтраницы']=0;

/* Количество выводимых элементов - ставим число которое должно соответствовать результирующему количеству элементов! */
$item_count = 6;

/* Выбираем наши системы */
$InformationSystemIdArray = array (5,15,16,17,18);

/*Из всех групп*/
$InformationGroupId = false;  // false - из всех групп, 0 - из корневой группы

/* Сортируем сразу по количеству просмотров. чтобы не выбирало все подряд */
$param = array();
$param['OrderField']  = 'information_items_show_count';
$param['Order']  = 'DESC';

$InformationSystem->ShowInformationSystem($InformationSystemIdArray, $InformationGroupId, 'Лидеры',$item_count,0,$external_propertys,$param);
?>

Далее в xsl шаблоне вместо
<xsl:apply-templates select="blocks/items/item[item_status=1]"/>
пишем
<xsl:apply-templates select="blocks/items/item[item_status=1]">
<xsl:sort select="item_show_count" order="descending"/>
</xsl:apply-templates>

в шаблоне вывода элемента добавляем ограничения выбирать только 6 элементов


<xsl:template match="blocks/items/item">
   <xsl:if test="6 >= position()">
          шаблон вывода единицы ИС...
        </xsl:if>
</xsl:template>


вот собственно и все



Здравствуйте! А как вывести у каждого элемента название ИС к которому оно относится?
Начал разбираться в xml и там почему в начале название только одной ИС 8(
изучаю hostcms 6
#
Re: Выборка из нескольких Инфосистем
Очень надо, помогите пожалуйста.
Спасибо
изучаю hostcms 6
Авторизация