XSL статьи

#
XSL статьи
Подскажите мне пожалуйста как прописать в этом шаблоне Статьи, чтобы были видны все уровни групп. Например:

* О компании
   * первая группа
     * вторая группа
       * третья группа
Модератор
#
Re: XSL статьи
ingrem,
Внести изменения в XSL-шаблон, внутри template для списка групп вызывать этот же template для списка подгрупп
#
Re: XSL статьи
а как это сделать помогите пожалуйста.
и ещё одно что нужно изменить чтобы выводилась определённая группа из информационной системы

<?
# Вывод информационных систем
$InformationSystem = new InformationSystem();

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

$InformationSystem->ShowInformationSystem(38,false,'СписокСтатей',2,0,$external_propertys);  
?>
Модератор
#
Re: XSL статьи
ingrem,
ingrem писал(а):
$InformationSystem->ShowInformationSystem(38,false,'СписокСтатей',2,0,$external_propertys);  


второй атрибут - ID группы, если false - все группы. Более подробно см. в API
#
Re: XSL статьи
здорово поняла,
помогите мне с выводом подгрупп пожалуйста в темплейте
Модератор
#
Re: XSL статьи
ingrem,
более полно сформулируйте Ваш запрос, сейчас он не имет сути.
#
Re: XSL статьи
Подскажите мне пожалуйста как прописать в этом шаблоне Статьи, чтобы были видны все уровни групп. Например:

* О компании
   * первая группа
     * вторая группа
       * третья группа
Как Внести изменения в XSL-шаблон, внутри template для списка групп, чтобы  вызывать этот же template для списка подгрупп

<?xml version="1.0" encoding="windows-1251"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="yes" encoding="Windows-1251"/>

<xsl:template match="/">
    <xsl:apply-templates/>
</xsl:template>

<xsl:template match="/document">

<!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
<xsl:param name="parent_group_id" select="blocks/parent_group_id"/>

<!-- Если в находимся корне - выводим название информационной системы -->
<xsl:if test="blocks/parent_group_id=0">
   <h1><xsl:value-of disable-output-escaping="yes" select="blocks/name"/></h1>
   <xsl:value-of disable-output-escaping="yes" select="blocks/description"/>
</xsl:if>

<!-- Если в находимся в группе - выводим название группы -->
<xsl:if test="blocks/parent_group_id!=0">
   <h1><xsl:value-of disable-output-escaping="yes" select=".//group[@id=$parent_group_id]/name"/></h1>
</xsl:if>

<!-- ============= -->
<!-- Путь к гурппе -->
<!-- ============= -->

<xsl:apply-templates select=".//group[@id=$parent_group_id]" mode="goup_path"/>

<p/>

<!-- ========= -->
<!-- Подгруппы -->
<!-- ========= -->

<!-- Отображение подгрупп данной группы -->
<ul>
   <xsl:apply-templates select=".//group[@parent_id=$parent_group_id]" mode="goups"/>
</ul>

<p/>

<!-- Отображение записи информационного блока -->
<table border="0" cellspacing="0" cellpadding="0" class="news_table">
      <xsl:apply-templates select="blocks/items/item[item_status=1]">
      </xsl:apply-templates>
</table>

<!-- Строка ссылок на другие страницы архива информационного блока -->
<xsl:if test="ОтображатьСсылкиНаСледующиеСтраницы=1">
   <xsl:call-template name="for">
     <xsl:with-param name="n" select="blocks/items/count_items div blocks/items/items_on_page"/>
     <xsl:with-param name="current_page" select="blocks/items/current_page"/>
   </xsl:call-template>
</xsl:if>


<table border="0" width="100%">
<tr>
<!-- Ссылка на архив -->
<xsl:if test="ОтображатьСсылкуНаАрхив=1">
   <td><a href="{blocks/url}">Архив "<xsl:value-of disable-output-escaping="yes" select="blocks/name"/>"</a></td>
</xsl:if>
</tr>
</table>

</xsl:template>


<!-- ======================================================== -->
<!-- Шаблон выводит ссылки подгурппы инф. элемента -->
<!-- ======================================================== -->

<xsl:template match="group" mode="goups">
   <xsl:param name="parent_id" select="@parent_id"/>

                 <li>      
      <xsl:if test="small_image!=''">
         <a href="/upload/{big_image}" target="_blank"><img src="/upload/{small_image}"/></a>&#xA0;
      </xsl:if>
      <a href="{/document/blocks/url}{fullpath}"><b><xsl:value-of disable-output-escaping="yes" select="name"/></b></a>
   </li>

</xsl:template>

<!-- ======================================================== -->
<!-- Шаблон выводит рекурсивно ссылки на группы инф. элемента -->
<!-- ======================================================== -->

<xsl:template match="group" mode="goup_path">
   <xsl:param name="parent_id" select="@parent_id"/>

   <xsl:apply-templates select="//group[@id=$parent_id]" mode="goup_path"/>

   <xsl:if test="@parent_id=0">
      <a href="{/document/blocks/url}"><xsl:value-of disable-output-escaping="yes" select="/document/blocks/name"/></a>
   </xsl:if>

   >

   <a href="{/document/blocks/url}{fullpath}"><xsl:value-of disable-output-escaping="yes" select="name"/></a>

</xsl:template>

<!-- ======================== -->
<!-- Данные об инф. элементах -->
<!-- ======================== -->

<xsl:template match="blocks/items/item">
<tr>
<td>

<a href="{item_path}" class="news_title"><xsl:value-of disable-output-escaping="yes" select="item_name"/></a>
<br/>
<xsl:value-of disable-output-escaping="yes" select="item_description"/>
</td>


<!-- Изображение для информационного элемента -->

<xsl:if test="item_small_image!=''">
   <a href="{item_path}" class="news_title"><img src="/{item_small_image}" class="partner_img" alt="" align="left"/></a>
</xsl:if>


</tr>
</xsl:template>

<!-- ============================ -->
<!-- Цикл для вывода строк ссылок -->
<!-- ============================ -->
<xsl:template name="for">
   <xsl:param name="i" select="0"/>
   <xsl:param name="n"/>
   <xsl:param name="current_page"/>

   <!-- Получаем ID родительской группы и записываем в переменную $parent_group_id -->
   <xsl:param name="parent_group_id" select="blocks/parent_group_id"/>

   <!-- Получаем путь группы и записываем в переменную $group_path -->
   <xsl:param name="group_path" select=".//group[@id=$parent_group_id]/fullpath"/>
   <xsl:if test="$n > 1">
   <xsl:if test="$n > $i">

      <!-- Ставим ссылку на страницу-->
      <xsl:if test="$i != $current_page">
         <a href="{blocks/url}{$group_path}?page={$i}">
         <xsl:value-of select="$i+1"/>
         </a>
      </xsl:if>

      <!-- Не ставим ссылку на страницу-->
      <xsl:if test="$i = $current_page">
         <xsl:value-of select="$i+1"/>
      </xsl:if>

      &#xA0;

      <!-- Рекурсивный вызов шаблона. НЕОБХОДИМО ПЕРЕДАВАТЬ ВСЕ НЕОБХОДИМЫЕ ПАРАМЕТРЫ! -->
      <xsl:call-template name="for">
      <xsl:with-param name="i" select="$i + 1"/>
      <xsl:with-param name="n" select="$n"/>
      <xsl:with-param name="current_page" select="$current_page"/>
      </xsl:call-template>

   </xsl:if>
   </xsl:if>
</xsl:template>

</xsl:stylesheet>

Люди помогите пожалуйста,  
#
Re: Re: XSL статьи
Снимаю все свои вопросы, решила оставить всё как есть на своём сайте, для новых идей не хватает знаний, а спрашивать всё время  ...
Модератор
#
Re: XSL статьи
ingrem,
ок
Авторизация