Вопрос по меткам

#
Re: Вопрос по меткам
plasmamedia писал(а):
Пересортировать в обратном порядке средствами XSL, например.

Тут проблема в том, что либо сначала идут английские метки, либо, если поменять порядок, идут сначала русские, но идут с конца алфавита, т.е. начиная с буквы "я".

plasmamedia писал(а):
В свойствах инфосистемы отключите автоматическое применение меток

Действительно помогло (оказывается, не везде отключил). Спасибо большое!!!

А вот с сортировкой меток для товара проблему не решить - никак они не хотят вставать в указанном порядке...
#
Re: Вопрос по меткам
Причем это происходит и с русскими метками.
Задаю метки "глютамин, Спортпит", получаю на выходе "Спортпит, глютамин"...
#
Re: Вопрос по меткам
Происходит что-то странное.
Редактирую контактные данные, взял специально код с демосайта.
Выглядит он так:
<h2 style="margin-top: 0;">Контактные данные</h2>
<dl> <dt>Телефон:</dt> <dd class="phone d_gray">+7 (812) <span>000-00-00</span></dd> <dt>Электронная почта:</dt> <dd><a href="mailto:info@mysite.ru">info@mysite.ru</a></dd></dl>

Что я имею на выходе:
<h2 style="margin-top: 0;">Контактные данные</h2>
<dl> <dt>Телефон:</dt> <dd class="phone d_gray">+7<span style="margin-right: 0.3em"> </span> <span style="margin-left: -0.3em">(812</span>) <span>000-00-00</span></dd> <dt>Электронная почта:</dt> <dd><script type="text/javascript">
            <!--
            document.write ('<a  href="mailto:' + 'info' + '@' + 'mysite' + '.' + 'ru' + '">' + 'info@mysite.ru' + '</a>');
            -->
            </script></dd></dl>

Т.е. телефон выглядит черт знает как.
Пробовал в 3 браузерах - везде одно и то же.
Причем открываю "Краткие контактные данные", а там все точно так, как я взял с демо-сайта.
И видимо проблема с метками сюда же относится.
Т.е. все, что я указываю через интерфейс админки, скажем так слегка преобразовывается. Теги появляются/исчезают, меняются местами, метки как хотят сортируются и т.д.
С чем это может быть связано? Где копать? php 5.2.10 и Зенд старой версии сюда могуть иметь какое-л. отношение? Ума не приложу, что делать...
#
Re: Вопрос по меткам
ironwayru, телефон выглядит правильно, и то что теги добавляются это тоже так задумано. Потому что в HostCMS есть модуль "Типограф". Зачем он нужен и что такое вообще "типографика" - почитайте, например, у Артемия Лебедева. Если же вам так дорога нетронутость ваших тегов, то можете отключить типографирование текстов и описаний в настройках конкретной ИС (ИМ), или же вообще выключить модуль типографирования в резделе Модули.

Сортировка меток и типографирование никак друг с другом не связаны, и друг на друга не влияют.

Несоответствие Зенда системным требованиям в данном аспекте тоже не должно иметь значение - насколько мне известно, из-за устаревшей версии Зенда не работают только ajax-запросы.

ironwayru писал(а):
Задаю метки «глютамин, Спортпит», получаю на выходе «Спортпит, глютамин»…
И это тоже правильно. Потому что если сортировка ASC то будет 0-9-A(англ)-Z-А(рус)-Я, а если DESC то будет Я-А(рус)-Z-A(англ)-9-0.
Заказов не беру. Консультирую редко.
#
Re: Вопрос по меткам
К слову сказать, с вашей сортировкой меток справится, пожалуй, только рекурсивных перебор оных.

Для этого делаем примерно следующее.

Вверху шаблона, после тега xsl:output добавляем следующее:
<xsl:variable name="keystring" select="'0123456789,АаБбВвГгДдЕеЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЫыЭэЮюЯя,AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'"/>
<xsl:variable name="delimiter" select="','"/>


Потом находим в шаблоне вызов темплейта tags/tag, вот такой:
<xsl:apply-templates select="tags/tag"/>

и вместо него вставляем следующий код:
<xsl:call-template name="tagging">
   <xsl:with-param name="s" select="$keystring"/>
   <xsl:with-param name="delimiter" select="$delimiter"/>
</xsl:call-template>


И где-нибудь в конце всего шаблона, перед закрывающим тегом /xsl:stylesheet вставляем вот такой новый темплейт:
<xsl:template name="tagging">
   <xsl:param name="s"/>
   <xsl:param name="delimiter"/>

   <xsl:variable name="a">
      <xsl:value-of select="substring($s,1,1)"/>
   </xsl:variable>

   <xsl:variable name="s0">
      <xsl:value-of select="substring-after($s,$a)"/>
   </xsl:variable>

   <xsl:if test="$s != ''">
      <xsl:choose>
         <xsl:when test="$a != $delimiter and tags/tag[substring(tag_name,1,1) = $a]/node()">
            <xsl:apply-templates select="tags/tag[substring(tag_name,1,1) = $a]"/>
         </xsl:when>
         <xsl:otherwise>
         <xsl:if test="$a = $delimiter"><br/></xsl:if>
         </xsl:otherwise>
      </xsl:choose>
      <xsl:call-template name="tagging">
         <xsl:with-param name="s" select="$s0"/>
         <xsl:with-param name="delimiter" select="$delimiter"/>
      </xsl:call-template>
   </xsl:if>
</xsl:template>


Теперь порядок сортировки ваших тегов определяется строкой, записанной в переменную $keystring в самом начале шаблона, а запятые в этой строке заменяются на теги <br/>, если вам это не нужно то просто уберите запятые из переменной $keystring

Способ немного некрасивый и громоздкий, но я не вижу других вариантов сделать сортировку не отвечающую ни ASC ни DESC.
Заказов не беру. Консультирую редко.
#
Re: Вопрос по меткам
Kotoff,
спасибо за столь подробные ответы! Сейчас буду пробовать!

Я не против типографа, но когда половина кода города выделяется жирным, а половина нет - выглядит ужасно некрасиво)
Спасибо за совет! Помогло снятие галочки в документе!

Это код для вывода меток в блоке меток? Попробую завтра-послезавтра, спасибо!

Но вот касательно сортировки меток товара я так и не понял. Т.е. разработчиком задумано, что метки товара сортируются по алфавиту? Но ведь такого раньше у меня не было никогда.
Ведь это и не удобно, т.к. сначал хочется писать метки более важные. А менее важные метки - в конце чтобы шли.
Еще такой момент. Сортировка эта странная, потому что в ней нет логики.
Т.е. 20 товаров заполнишь - все нормально. На 21-ом вдруг сортировка меток включается.

И что самое интересно, у этой сортировки нет порядка.
Т.е. я задаю метки "BCAA, Optimum Nutrition", а выводится "Optimum Nutrition, BCAA", т.е. не по алфавиту. И для русского также.
Причем для каких-то слов идет сортировка по алфавиту, а для каких-то - нет.

Я еще хотел уточнить у разработчика - как в норме должны вести себя метки?
Авторизация