1 инфо елемент полный следующее 5 только заголовки

#
Re: 1 инфо елемент полный следующее 5 только заголовки
ferdinant, да пожалуйста!
Насчет изучив и то и то - это вы правы совершенно!
А подобные высказывания характеризуют вас как человека мыслящего, что очень приятно
Удачи вам!
Заказов не беру. Консультирую редко.
#
Re: 1 инфо елемент полный следующее 5 только заголовки
Kotoff писал(а):
ferdinant, да пожалуйста!
Насчет изучив и то и то — это вы правы совершенно!
А подобные высказывания характеризуют вас как человека мыслящего, что очень приятно
Удачи вам!


Спасибо за хорошие слова. И вам удачи желаю.

В реализации столкнулся с проблемой после вывода блока в шаблоне

<!-- Отображение записи информационной системы -->
<xsl:apply-templates select="blocks/items/item[item_status=1]" mode="itemlist1"/>
<xsl:apply-templates select="blocks/items/item[item_status=1]" mode="itemlist2"/>


После первого элемента выводит кучу непонятного текста как с этим бороться?  
Skype:ferdinant1988 ICQ:311960596 E-mail: ferdinant@i.ua
#
Re: 1 инфо елемент полный следующее 5 только заголовки
А я бы вообще сделал один шаблон для item, зачем два?
а разделение уже внутри его.
Завтра может набросаю примерчик, если время днем будет.
Заказов не беру. Консультирую редко.
#
Re: 1 инфо елемент полный следующее 5 только заголовки
Да было б не плохо, даже очень не плохо!
Skype:ferdinant1988 ICQ:311960596 E-mail: ferdinant@i.ua
#
Re: 1 инфо елемент полный следующее 5 только заголовки
Вот вам, пожалуйста, два варианта шаблона
Первый еще немного громоздкий, но более удобен, если для первой новости и для остальных заголовков используются разное стилевое оформление.
<xsl:template match="blocks/items/item">
      <xsl:choose>
         <xsl:when test="position() &lt; 2">
            <!--Здесь оформляем вывод элемента целиком -->
            <div class="full_element">
               <h1>
                  <a href="{item_path}">
                     <xsl:value-of disable-output-escaping="yes" select="item_name"/>
                  </a>
               </h1>
               <!-- Изображение для информационного элемента (если есть) -->
               <xsl:if test="item_small_image!=''">
                  <a href="{item_path}" class="news_title">
                     <img src="{item_small_image}" class="news_img" alt="" align="left"/>
                  </a>
               </xsl:if>
               <xsl:value-of disable-output-escaping="yes" select="item_description"/>
               <!-- Ну и так далее, все что там еще нужно из стандартного шаблона -->
            </div>
         </xsl:when>
         <xsl:otherwise>
            <!--А здесь - только заголовки -->
            <div class="only_name">
               <h1>
                  <a href="{item_path}">
                     <xsl:value-of disable-output-escaping="yes" select="item_name"/>
                  </a>
               </h1>
            </div>
         </xsl:otherwise>
      </xsl:choose>
   </xsl:template>


А второй - более рационален, в нем к стандартному шаблону добавляется всего лишь 2 строчки Этот способ рекомендуется в тех случаях, когда оформление у всех элементов одинаковое, просто во 2м и следующих не выводится лишняя информация
<xsl:template match="blocks/items/item">
      <!-- Оформляем вывод заголовка -->
      <h1>
         <a href="{item_path}">
            <xsl:value-of disable-output-escaping="yes" select="item_name"/>
         </a>
      </h1>

      <!--Проверяем, какой по счету элемент -->
      <xsl:if test="position() &lt; 2">
         <!--И если это первый, то выводим для его и все остальное-->
         <!-- Изображение для информационного элемента (если есть) -->
         <xsl:if test="item_small_image!=''">
            <a href="{item_path}" class="news_title">
               <img src="{item_small_image}" class="news_img" alt="" align="left"/>
            </a>
         </xsl:if>
         <xsl:value-of disable-output-escaping="yes" select="item_description"/>
         <!-- Ну и дальше как и было в исходном шаблоне -->
      </xsl:if>
   </xsl:template>


В обоих случаях приведенный код вставляется в шаблон вместо <xsl:template match="blocks/items/item"> ... </xsl:template>
В ТДС же вообще никаких изменений в этом случае вносить не надо.

Красиво, правда?
Заказов не беру. Консультирую редко.
#
Re: 1 инфо елемент полный следующее 5 только заголовки
Все таки сделал разбиением на 2 блока. Помогло мне конечно вот этот код.

<xsl:choose>
    <xsl:when test="position() &lt; 2">
    </xsl:when>
    <xsl:otherwise>
    </xsl:otherwise>
</xsl:choose>


Skype:ferdinant1988 ICQ:311960596 E-mail: ferdinant@i.ua
Авторизация