А как сделать отображение всех товаров одного производителя?

#
Re: А как сделать отображение всех товаров одного производителя?
Прошу прощения за надоедливость.
Не подскажете, что делать с вышеописаным багом?
#
Re: А как сделать отображение всех товаров одного производителя?
Ну, не то, чтобы это был баг Ведь учет тэга, по которому в текущий момент осуществляется фильтрация, нужно было добавить в темплейт, формирующий ссылки на страницы.
Например,

<xsl:if test="$n > $i and $n > 1">  
...
<!-- Путь для тэга -->
<xsl:variable name="tag_path">
<xsl:if test="count(/shop/selected_tags/tag) = 1">tag/<xsl:value-of select="/shop/selected_tags/tag/tag_path_name"/>/</xsl:if>
</xsl:variable>
...

И везде(в данном тэмлейте!), где идет указание ссылок на страницы, между переменными $group_link и $number_link подставить переменную $tag_path. Например, было так:
<a href="{/shop/path}{$group_link}{$number_link}{$filter}{$arrows}"

станет так:
<a href="{/shop/path}{$group_link}{$tag_path}{$number_link}{$filter}{$arrows}"
#
Re: А как сделать отображение всех товаров одного производителя?
Ых, как хорошо быть умной, и как плохо быть неумным
Спасибо, Наталья!
Всё работает!
#
Re: А как сделать отображение всех товаров одного производителя?
Пожалуйста.

Не расстраивайтесь вы так. Это не от большого ума Всё приходит с опытом
#
Re: А как сделать отображение всех товаров одного производителя?
А вот задам про отображение списка производителей. У меня их сейчас около 350 штук. Стало быть список получается длинный, и хочется его немного видоизменить:
вверху сделать строчку с алфавитом, чтобы  по щелчку на каждой букве отображались производители на эту букву. Обычно такая задача решается с помощью набора тегов
<div id="..." style="display:none"> ... </div>

и java-script, который переключает свойство dispalay у соответствующих div, определяемых по id
Вот тут как раз и проблема.
Логично, что в XSL-шаблоне надо как-то определять переход от одной буквы алфавита к другой, чтобы в этот момент вписать

</div> <!-- от предыдущей буквы алфавита -->
<div id="..." style="display:none"> <!-- для следующей буквы алфавита -->


Как мне в XSL-шаблоне обнаружить эту смену?
XML для списка производителей выглядит так:

  <?xml version="1.0" encoding="windows-1251" ?>
- <producerslist>
- <producer id="1631">
  <name>AVI music</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>AVI music</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
- <producer id="1720">
  <name>Ayva musica</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>Ayva musica</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
- <producer id="1572">
  <name>Azzurra music</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>Azzurra music</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
+ <producer id="1551">
  <name>Barenreiter</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>Barenreiter</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
- <producer id="1644">
  <name>Bayer Records</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>Bayer Records</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
- <producer id="1737">
  <name>BBC Legends</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>BBC Legends</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
- <producer id="1738">
  <name>BBC Music</name>
  <description />
  <image />
  <path />
  <shop_producers_list_name>BBC Music</shop_producers_list_name>
  <shop_producers_list_description />
  <shop_producers_list_image />
  <shop_producers_list_path />
  <shop_producers_list_address />
  <shop_producers_list_fax />
  <shop_producers_list_site />
  <shop_producers_list_email />
  <shop_producers_list_inn />
  <shop_producers_list_kpp />
  <shop_producers_list_ogrn />
  <shop_producers_list_okpo />
  <shop_producers_list_okved />
  <shop_producers_list_bik />
  <shop_producers_list_account />
  <shop_producers_list_corr_account />
  <shop_producers_list_bank_address />
  </producer>
</producerslist>

Заказов не беру. Консультирую редко.
#
Re: А как сделать отображение всех товаров одного производителя?
Итак, по порядку.
Kotoff001 писал(а):
вверху сделать строчку с алфавитом
- вам это уже удалось сделать?
#
Re: А как сделать отображение всех товаров одного производителя?
Не понял вопроса? Или это ирония?

В структуре раздел со списком производителей представляет собой динамическую страницу (не типовую даже, а прямо там, в струкуре) с кодом:

<?php
$shop = new shop();

$xsl_name = 'МагазинПроизводитель';
$param['shop_id'] = <номер магазина, для основного сайта и для тест-площадки разные>;

$shop->ShowProducersList($xsl_name, $param);

?>

Ну и кто мне мешает перед строкой
$shop->ShowProducersList($xsl_name, $param);

вывести любой другой html-кусок, хотя бы даже операторами echo?

Проблема-то не в этом, а в том как сделать группировку производителей в идентифицируемые на java-script DIV'ы по алфавитному признаку, а не в выводе строки с алфавитом.
Заказов не беру. Консультирую редко.
#
Re: А как сделать отображение всех товаров одного производителя?
Ну как, есть у кого-нибудь идеи?
Заказов не беру. Консультирую редко.
#
Re: А как сделать отображение всех товаров одного производителя?
Kotoff001, алфавитный указатель можно сделать средствами XSLT. Подробнее о способах его организации см.

Особенно обратите внимание на метод Мюнча.
#
Re: А как сделать отображение всех товаров одного производителя?
Большое спасибо за ссылку - предложенный способ очень помог!
Заказов не беру. Консультирую редко.
Авторизация