Сортировка элементов ИС

#
Сортировка элементов ИС
Прошу помощи - пытаюсь сделать сортировку элементов инфосистемы в блоке, который выводит 3 последних новости. В данный момент выводятся три первых новости из категории - в этом и проблема. Обратился в техподдержку, так как самостоятельные попытки использовать примеры из документации вызывали лишь ошибки синтаксиса, получил вариант решения от поддержки, но он так-же не работает - элементы выводятся в том же порядке "по возрастанию".

В чем тут ошибка?

В шаблоне:


<?
// Последние Новости
   if (Core::moduleIsActive('informationsystem'))
      {
         $Informationsystem_Controller_Show = new Informationsystem_Controller_Show(
            Core_Entity::factory('Informationsystem', 15)
         );

         $Informationsystem_Controller_Show
            ->xsl(
               Core_Entity::factory('Xsl')->getByName('СписокПоследнихНовостейВнизуKR')
            )
            ->groupsMode('none')
            ->itemsForbiddenTags(array('text'))
            ->group(FALSE)
            ->limit(3);
         
         $Informationsystem_Controller_Show
            ->informationsystemItems()
            ->queryBuilder()
            ->clearOrderBy()
            ->orderBy('informationsystem_items.datetime', 'DESC');

         
         $Informationsystem_Controller_Show->show();
         
      }
?>


В XLS:


   <xsl:template match="/">
      
      <h4>Последние новости:</h4>
      <xsl:apply-templates select="/informationsystem"/>
   </xsl:template>
   
   <xsl:template match="/informationsystem">
      
      <!-- Show informationsystem_item -->
      <xsl:if test="informationsystem_item">
         <div class="card-columns">
            <xsl:apply-templates select="informationsystem_item" mode="importitem">
               <xsl:sort select="value" order="descending"/>
            </xsl:apply-templates>
         </div>
      </xsl:if>
      
   </xsl:template>
#
Re: Сортировка элементов ИС
В поддержке вы не указывали что у вас еще и сортировка в xsl, ее не должно быть. Удалите <xsl:sort select="value" order="descending"/>
«Не выходи из комнаты, не совершай ошибку…»
#
Re: Сортировка элементов ИС
Да действительно, в поддержку я отправлял вариант кода без xsl sort, это уже мои промежуточные попытки "исправить ситуацию" которые ни к чему не привели.

В данный момент XLS-шаблон выглядит так и сортировка не работает:


<xsl:template match="/">
        <h4>Последние новости:</h4>
       <xsl:apply-templates select="/informationsystem"/>
</xsl:template>

<xsl:template match="/informationsystem">
       <xsl:if test="informationsystem_item">
              <div class="card-columns">
                     <xsl:apply-templates select="informationsystem_item" mode="importitem"/>
              </div>
       </xsl:if>
</xsl:template>
#
Re: Сортировка элементов ИС
Должно работать. Возможно у вас просто так даты заполнены у элементов и нужно сортировать по id :

Цитата:
         $Informationsystem_Controller_Show
            ->informationsystemItems()
            ->queryBuilder()
            ->clearOrderBy()
            ->orderBy('informationsystem_items.id', 'DESC';


Если не поможет то либо вы не тот РНР код редактируете либо у вас еще в xsl есть сортировка. Чтобы проверить посмотрите порядок элементов в сформированном xml, они уже должны быть отсортированы https://www.hostcms.ru/documentation/step-by-step/top-panel/xml/


«Не выходи из комнаты, не совершай ошибку…»
#
Re: Сортировка элементов ИС
Если не получится решить проблему обратитесь в тех поддержку с данными доступа в центр администрирования сайта, на месте посмотрим.
«Не выходи из комнаты, не совершай ошибку…»
Авторизация