Код вызова:
<?php
$InformationSystem = & singleton('InformationSystem');
$InformationSystemId = 48;
$rez = array();
$rez = $InformationSystem->GetInformationFromPath($InformationSystemId);
$external_propertys = array();
$external_propertys['ТекущаяГруппа'] = $rez['group'];
$param = array('current_group_id' => 0, 'items_on_page' => 10);
$param['xml_show_group_type'] = 'all';
$xsl_catalog = 'МЕНЮПН';
$InformationSystem->ShowInformationSystem($InformationSystemId, false, $xsl_catalog, 10, 0,$external_propertys, $param);
?>
XSL-шаблон:
<?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 xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"
encoding="Windows-1251" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml" />
<xsl:template match="/">
<xsl:apply-templates select="document/blocks"/>
</xsl:template>
<!-- Шаблон -->
<xsl:template match="document/blocks">
<xsl:variable name="parent_group_id" select="@current_group_id"/>
<!-- Выводим группы -->
<div>
<xsl:apply-templates select="//group[@parent_id=0]"/>
</div>
</xsl:template>
<!-- Шаблон для групп -->
<xsl:template match="group">
<xsl:variable name="current_group_id" select="/document/ТекущаяГруппа"/>
<div>
<xsl:choose>
<xsl:when test="$current_group_id = @id or count(.//group[@id=$current_group_id])=1">
<!-- Жирным выделим текущий пункт -->
<xsl:choose>
<xsl:when test="$current_group_id = @id">
<b><a href="{/document/blocks/url}{fullpath}"><xsl:value-of disable-output-escaping="yes" select="name"/></a></b>
</xsl:when>
<xsl:otherwise>
<a href="{/document/blocks/url}{fullpath}"><xsl:value-of disable-output-escaping="yes" select="name"/></a>
</xsl:otherwise>
</xsl:choose>
<xsl:if test="count_all_groups > 0">
<ul>
<xsl:apply-templates select="group"/>
</ul>
</xsl:if>
</xsl:when>
<xsl:otherwise>
<a href="{/document/blocks/url}{fullpath}"><xsl:value-of disable-output-escaping="yes" select="name"/></a>
</xsl:otherwise>
</xsl:choose>
</div>
</xsl:template>
</xsl:stylesheet>
Жирным выделены внесенные изменения.