Я новичок - буду благодарна за помощь

#
Re: Я новичок - буду благодарна за помощь
да - совсем забыла самое главное - код XSL меню:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:hostcms="http://www.hostcms.ru/"
   exclude-result-prefixes="hostcms">
   <xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="utf-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
   
   <xsl:template match="/site">
      <ul class="top_menu">
         <!-- Выбираем узлы структуры первого уровня -->
         <xsl:apply-templates select="structure[show=1]" />
      </ul>
   </xsl:template>
   
   <!-- Запишем в константу ID структуры, данные для которой будут выводиться пользователю -->
   <xsl:variable name="current_structure_id" select="/site/current_structure_id"/>
   
   <xsl:template match="structure">
      <li>
         <!--
         Выделяем текущую страницу добавлением к li класса current,
         если это текущая страница, либо у нее есть ребенок с атрибутом id, равным текущей группе.
         -->
         <xsl:if test="$current_structure_id = @id or count(.//structure[@id=$current_structure_id]) = 1">
            <xsl:attribute name="class">current</xsl:attribute>
         </xsl:if>
         
         <xsl:if test="position() = last()">
            <xsl:attribute name="style">background-image: none</xsl:attribute>
         </xsl:if>
         
         <!-- Определяем адрес ссылки -->
         <xsl:variable name="link">
            <xsl:choose>
               <!-- Если внешняя ссылка -->
               <xsl:when test="url != ''">
                  <xsl:value-of disable-output-escaping="yes" select="url"/>
               </xsl:when>
               <!-- Иначе если внутренняя ссылка -->
               <xsl:otherwise>
                  <xsl:value-of disable-output-escaping="yes" select="link"/>
               </xsl:otherwise>
            </xsl:choose>
         </xsl:variable>
         
         <!-- Ссылка на пункт меню -->
         <a href="{$link}" title="{name}" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="structure"><xsl:value-of disable-output-escaping="yes" select="name"/></a>
      </li>
   </xsl:template>
</xsl:stylesheet>
#
Re: Я новичок - буду благодарна за помощь
недаром у меня было такое ощущение, что я не там ковыряю код - не знакомые теги, которых в исходном html сайта вообще не существует...

иду в XSL-шаблоны → меню → верхнее меню

меняю что нибудь в коде - ничего не происходит, удаляю вообще - меню на сайте остаётся то-же...
Модератор
#
Re: Я новичок - буду благодарна за помощь
Все очень просто, замененные фрагменты выделил, ничего сложного:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE xsl:stylesheet>
<xsl:stylesheet version="1.0"
   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
   xmlns:hostcms="http://www.hostcms.ru/"
   exclude-result-prefixes="hostcms">
   <xsl:output xmlns="http://www.w3.org/TR/xhtml1/strict" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" encoding="utf-8" indent="yes" method="html" omit-xml-declaration="no" version="1.0" media-type="text/xml"/>
  
   <xsl:template match="/site">
   <div class="menubg">
      <ul id="men">
         <!-- Выбираем узлы структуры первого уровня -->
         <xsl:apply-templates select="structure[show=1]" />
      </ul>
   </div>
   </xsl:template>
  
   <!-- Запишем в константу ID структуры, данные для которой будут выводиться пользователю -->
   <xsl:variable name="current_structure_id" select="/site/current_structure_id"/>
  
   <xsl:template match="structure">
      <li>
         <!--
         Выделяем текущую страницу добавлением к li класса current,
         если это текущая страница, либо у нее есть ребенок с атрибутом id, равным текущей группе.
         -->
         <xsl:if test="$current_structure_id = @id or count(.//structure[@id=$current_structure_id]) = 1">
            <xsl:attribute name="class">active</xsl:attribute>
         </xsl:if>
        
         <!-- Определяем адрес ссылки -->
         <xsl:variable name="link">
            <xsl:choose>
               <!-- Если внешняя ссылка -->
               <xsl:when test="url != ''">
                  <xsl:value-of disable-output-escaping="yes" select="url"/>
               </xsl:when>
               <!-- Иначе если внутренняя ссылка -->
               <xsl:otherwise>
                  <xsl:value-of disable-output-escaping="yes" select="link"/>
               </xsl:otherwise>
            </xsl:choose>
         </xsl:variable>
        
         <!-- Ссылка на пункт меню -->
         <a href="{$link}" style="" title="{name}" hostcms:id="{@id}" hostcms:field="name" hostcms:entity="structure"><xsl:value-of disable-output-escaping="yes" select="name"/></a>
      </li>
   </xsl:template>
</xsl:stylesheet>
#
Re: Я новичок - буду благодарна за помощь
спасибо за понимание, но смотрите сообщение выше - это был не тот код XSL - не могу найти нужный...
Модератор
#
Re: Я новичок - буду благодарна за помощь
в смысле не тот? Включите XML/XSL в клиентском разделе и посмотрите какой заменить. Пример я Вам написал выше.
#
Re: Re: Я новичок - буду благодарна за помощь
как включить и где - не понимаю...
Модератор
#
Re: Я новичок - буду благодарна за помощь
ViktoriaIv,
просмотрите, пожалуйста, еще раз мои ответы. В одних из первых:

Название его Вы сможете увидеть в клиентском разделе, см http://www.hostcms.ru/documentation/guide/introduction/top-panel/xml/
#
Re: Я новичок - буду благодарна за помощь
это изображение есть, но оно не кликабельно...
#
Re: Re: Я новичок - буду благодарна за помощь
Макет меняли?
#
Re: Я новичок - буду благодарна за помощь
нет - шаблон стоит тот, который выбрала при установке
Авторизация