Дополнительное свойство товара

#
Дополнительное свойство товара
Добрый день.
Добавил дополнительное свойство товара.
Название: Тип отделки
Тип: строка
Префикс: только
Способ отображения свойства в фильтре: Список - переключателями
Название XML-тега: type_of_door

Сделал свойство доступным для групп.

Для товара дописал дополнительное свойство: ламинированная.

В итоге, в строке фильтра появилось только:

Фильтр по дополнительным свойствам товара:
Тип отделки
переключатель - Любой вариант

а Ламинированная так и не появляется. В чем может быть причина?

Заранее спасибо.
#
Re: Дополнительное свойство товара
Точно такая же проблема. Перепробовал все варианты типов отображения доп. свойств в фильтре.
Названия доп. свойств выводит, элементы управления включаются а вот сами значения доп. свойств отсутствуют.
Может дело в префиксе?

вот кусок моей XSL каталога отображающий доп.свойства (по идее стандартный)

<xsl:if test="count(properties_for_group/property[property_show_kind != 0 and (shop_list_of_properties_type = 0 or shop_list_of_properties_type = 2 or shop_list_of_properties_type = 7)]) &gt; 0">
                  <p>Дополнительно:</p>
                  <table cellpadding="10px" cellspacing="0">
                     <tr valign="top">
                        <xsl:apply-templates select="properties_for_group/property[property_show_kind != 0 and (shop_list_of_properties_type = 0 or shop_list_of_properties_type = 2 or shop_list_of_properties_type = 7)]"/>
                     </tr>
                  </table>
               </xsl:if>
#
Re: Дополнительное свойство товара
onlinestudio, PSin, если вы задаете для доп.свойства тип "Список", то вы должны сначала создать список допустимых значений для этого доп.свойства, в разделе "Списки" в админке.
Скриншот 1: Списки в разделе "Списки": http://floomby.ru/content/82WetpIyUW/full/
Скриншот 2: Элементы списка: http://floomby.ru/content/IKKSBXRVq0/full/

При этом надо учесть, что модуль "Списки" есть только в редакциях HostCMS "Малый бизнес" и выше, в редакциях "Халява" и "Мой сайт" этого модуля нет, поэтому тип доп.свойства "список" бесполезен и работать не будет.

Так вот, когда вы создали новый список и заполнили его значениями, вы переходите в редактор доп.свойств товара, для нужного доп.свойства выбираете тип "Список" и из выпадающего списка рядом выбираете созданный вами список (простите за тавтологию).
Скриншот 3: настройка доп.свойства: http://floomby.ru/content/ARAVm5GlvE/full/

И после этого в фильтре в клиентской части начинают отображаться все те варианты, которые вы ввели в редакторе элементов списка.
Скриншот 4: фильтр со списком в клиентской части: http://floomby.ru/content/qZaGC7Om80/full/

А в редакторе товара у вас тоже появляется список этих же значений и вы просто выбираете нужное.
Скриншот 5: значение доп.свойства в редакторе товара: http://floomby.ru/content/4IefLKQli0/full/

А вот это вот действиеonlinestudio писал(а):
Для товара дописал дополнительное свойство: ламинированная.
вообще не имеет смысла, т.к. в режиме, когда доп.свойство имеет тип "Список" его значением является на слово а число - если быть точным, то это идентификатор конкретного значения для указанного списка.
Заказов не беру. Консультирую редко.
#
Re: Дополнительное свойство товара
Спасибо. Для меня сегодня стало неприятным открытием, что списки недоступны даже в "мой сайт".
Пришла в голову идея, что если опции у свойств фиксированные и нет необходимости их редактировать постоянно, то можно прописать эти списки вручную в XSL каталога товаров, но немного не хватает компетенции, как отправить в фильтр результат выбора из select поправьте меня пожалуйста, если не сложно.

Было:

<xsl:if test="property_show_kind = 1">
<!-- Отображаем поле ввода -->
<br/>
<input type="text" name="property_id_{@id}">
   <xsl:if test="/shop/*[name()=$nodename] != ''">
      <xsl:attribute name="value">
         <xsl:value-of select="/shop/*[name()=$nodename]"/>
      </xsl:attribute>
   </xsl:if>
</input>


Стало:

<xsl:if test="property_show_kind = 1">
            
<xsl:if test="@id = 133">
<!-- Отображаем список для свойства id=133 -->
   <br/>
      <select name="property_id_133">
               
<option value="0">...</option>                                        
<option value="1">Для чтения</option>
<option value="2">Для дали</option>

?????
<xsl:if test="/shop/*[name()=$nodename] != ''">
      <xsl:attribute name="value">
         <xsl:value-of select="/shop/*[name()=$nodename]"/>
      </xsl:attribute>
   </xsl:if>
?????
      </select>
</xsl:if>


Собственно, код между вопросами явно не подходит для элемента select
Помогите ламеру реализовать полезную, я думаю, для многих идею, как пользоваться списком в фильтре вручную, если количество опций небольшое и фиксированное.
#
Re: Дополнительное свойство товара
PSin, хардкод в шаблонах - это зло.
А 5900 рублей за редакцию "Малый бизнес" - не такие уж большие деньги.
Написать то что вы хотите реально, но я считаю, что тем или иным образом эмулировать в бесплатной редакции тот функционал, который есть в коммерческих - это проявление неуважения к труду разработчиков системы.
Как-то так.
Заказов не беру. Консультирую редко.
#
Re: Дополнительное свойство товара
Я думаю, что хардкор в шаблонах это зло, в том случае, если его надо исполнять там регулярно, а если речь идет о 2х-3х свойствах с 3-4мя опциями которые перманентно зафиксированны, то нет смысла пользоваться функционалом для относительно крупных информационных систем.
Допустим, если я пользуюсь общественным транспортом, значит ли это, что мне необходимо покупать собственную ветку метро? в любом случае, мой вопрос было бы проще проигнорировать, чем объяснять мне, что я проявляю неуважение к труду разработчиков. Извините, но функции даже версии "халява" содержат на мой взгляд такой функционал, что то, что я попытался изобразить только что своими кривыми рученками - это просто детский лепет. Тут на форуме я видел неоднократно, как людям "дарили" целые XSL шаблоны просто так, по доброте душевной А Вы, простите, жметесь на 2 строчки Но в любом случае, спасибо.
И да простят меня за оффтопик и за такой наглый вопрос.
#
Re: Дополнительное свойство товара
Ну да, я-то известный на форуме жмот, каких еще поискать!.. :-D
Заказов не беру. Консультирую редко.
#
Re: Дополнительное свойство товара
Не передергивайте пожалуйста :-D
Думаю, что способен решить данный вопрос и сам, просто реализация будет через "нижнюю часть спины" - например, допустим отдать результат из select в поле input c аттрибутом hidden, через input вроде бы это все и работало в оригинале мне просто казалось, что цена вопроса если измерять это во времени - минуты полторы - две, потому и посмел себе такую невиданную наглость
#
Re: Дополнительное свойство товара
<xsl:value-of disable-output-escaping="yes" select="property_name"/>&#xA0;
   <xsl:if test="property_show_kind = 1">
      <xsl:if test="@id = 133">
         <!-- Отображаем список для свойства id=133 -->
         <br/>
         <select name="property_id_133">
            <option value="0">..</option>
            <option value="чтен">Для чтения</option>
            <option value="дал">Для дали</option>
         </select>
           </xsl:if>
...


В принципе, работает даже так. Я почему-то думал, что в value кириллицу пихать нельзя
Жаль только, что нет куска кода, который возвращал бы в поле select значение текущего выбора
#
Re: Дополнительное свойство товара
PSin писал(а):
Я почему-то думал, что в value кириллицу пихать нельзя
Я вам скажу по секрету - туда можно пихать даже кириллицу с пробелами
А то меня в дрожь бросает, как представлю себе в доп.свойствах товара значения "чтен" и "дал"...

Впрочем, решение-то все равно плохое. Потому что подвержено ошибкам от человеческого фактора.
Если ваш контент-менеджер напишет в свойстве товара "Чтен" с ошибкой (с опечаткой, или пробел в конце вставит, или еще чего-нибудь в этом роде? в некоторых случаях даже регистр букв имеет значение) или вместо "чтен" напишет "Для чтения", то такой товар не будет подпадать под фильтр.
А если в шаблоне случайно закрадется опечатка в value при редактировании оного, то данный пункт вообще работать не будет.
А если кто-то добавит в доп.свойство товара значение, которого нет в списке - то оно в списке не отобразится и под фильтр не попадет.

А как показывает многолетняя практика, там где возможна человеческая ошибка - там она рано или поздно обязательно случится.
И хороший стиль разработки как раз предполагает обнаружене и исключение подобных потенциально опасных мест, а вы их наоборот - сознательно создаете.

PSin писал(а):
Не передергивайте пожалуйста: -D
Ну я же профессиональный форумный тролль, мне по статусу положено

И вы слишком уж широко размахнулись в своей аналогии:
PSin писал(а):
Допустим, если я пользуюсь общественным транспортом, значит ли это, что мне необходимо покупать собственную ветку метро?
Я же вам предлагаю купить всего лишь редакцию "Малый бизнес", а не всю компанию "Хостмейк"!
Более правильная аналогия здесь будет такой: вы пользуетесь общественным транспортом и привыкли ездить на социальном автобусе бесплатно по пенсионному удостоверению А я предлагаю вам проехать на маршрутке - быстро, но без льгот, за каких-то 20-30 рублей Но российская ментальность такова, что в этой аналогии вы лучше постоите полчаса на остановке а потом еще час потолкаетесь в автобусе, чем заплатите деньги и доедете за 15 минут
Давайте тогда и за хостинг платить не будем - можно же держать сайт под Денвером на включенном круглосуточно домашнем компе с белым IP! Тем более что тогда можно будет и за домен не платить - на сайт можно будет зайти зная IP компа
Заказов не беру. Консультирую редко.
Авторизация