Отображение объявлений в блоке

#
Re: Отображение объявлений в блоке
voldemair, XML-код, который обрабатывается этим шаблоном, приведите пожалуйста.
#
Re: Отображение объявлений в блоке
а как приблизительно должен выглядеть код, который встраиваеться в макет? я имею ввиду какой код вставить в макет , а то как то с этим у мну по хуже, именно что в самом верху макета, что бы заставить работать фильтр по всем категориям в отдельном XLS шаблоне
#
Re: Отображение объявлений в блоке
Сейчас у нас у рубрике 30 подрубрик, мы пытаемся разделить их не на два, а на 3 столбца. Используется
<xsl:if test="position()= round(count(//group[@parent = $parent_id]) div 3)">
         <xsl:text disable-output-escaping="yes">
         &lt;/td&gt;
         &lt;td valign="top" width="33%"&gt;
         </xsl:text>
      </xsl:if>

Но разделение по прежнему идет на два, но в первом столбце  10 рубрик, а во втором 20.
Модератор
#
Re: Отображение объявлений в блоке
CCron,
перед
<xsl:if test="position()= round(count(//group[@parent = $parent_id]) div 3)">
выведите
position = <xsl:value-of select="position()"/>, round =
<xsl:value-of select="round(count(//group[@parent = $parent_id]) div 3)"/>

и посомтрите, в какой момент условие выполняется.
#
Re: Отображение объявлений в блоке
Например, 44 рубрики, в первом столбце до
position = 15, round = 15

а во втором: с position = 16, round = 15
до position = 44, round = 15
Модератор
#
Re: Отображение объявлений в блоке
Нужно примерно так:
<xsl:if test="position() != last() and position() mod round(count(//group[@parent = $parent_id]) div 3) = 0">


Пояснение. В строке
round(count(//group[@parent = $parent_id]) div 3)
Мы считаем количество элементов в одном столбце, в данном примере это будет 15.
Далее мы смотрим остаток от деления текущей позиции на количество в одном столбце, как только он стал 0 - значит пора переводить столбце.
И заключительный штрих - чтобы после последнего столбца при полном заполнении не выводился еще один пустой столбец добавим
position() != last() and ...
Авторизация