Убрать доп. характеристики из названия товара
#1
Отправлено 03 April 2013 - 10:47 AM
В дополнительных характеристиках у меня есть пункты со значением Есть или Нет.
Например:
Диагональ экрана: 7"
Разрешение экрана: 1024x600
Bluetooth:Есть
GPS: Нет
FM радио: Есть
И так далее...
При формировании заказа все эти Есть, Нет попадают в скобках в название товара. При чем, если пишу произвольное значение в доп.характеристике то это значение в название не попадает.
Выглядит это в корзине примерно так: Lenovo A2107 (7.0", 1024x600, Есть, Нет, Есть, Нет, Есть, Есть, 3000, Нет)
Согласитесь, что вид, что понятность данной записи выглядит скажем так не совсем эстетично.
Подскажите пожалуйста, как убрать вывод доп.характеристик (при выборе из возможных значений) в названии товара (в корзине, в письме к заказчику и т.д.) ?
p.s. Может решение уже есть на форуме, но извините не нашел.
#2
Отправлено 03 April 2013 - 02:18 PM
Полного решения не подскажу, не делал, но общая идея следующая:Подскажите пожалуйста, как убрать вывод доп.характеристик (при выборе из возможных значений) в названии товара (в корзине, в письме к заказчику и т.д.) ?
В шаблонах (как кратком, так и подробном) есть строка, начинающаяся либо с
open_window('index.php?do=cart - для корзины в отдельном окне
либо с doLoad('do=cart - для аякс-корзины.
В этой строке есть код (я его для удобства структурировал, штатно он в одну строку)
{section name=i loop=$product_extra}
{if $product_extra[i].option_type eq 1}
{section name=s loop=$product_extra[i].option_show_times}
&option_select_hidden_{counter name=select_counter_hidden}='+document.HiddenFieldsForm.option_select_hidden_{counter name=select_counter_hidden_extra}.value+'
{/section}
{/if}
{/section}
после {section name=s loop=$product_extra[i].option_show_times} надо добавить еще один {if ...}, где и будет задано, создавать для этой характеристики элемент $_POST['option_select_hidden_xxxx']=yyy или нет. Т.е. что-то типа
{section name=i loop=$product_extra}
{if $product_extra[i].option_type eq 1}
{section name=s loop=$product_extra[i].option_show_times}
{if $product_extra[i].values_to_select[0].option_value ne "Есть" and $product_extra[i].values_to_select[0].option_value ne "Нет"}
{* тут мы проверили первый вариант характеристики и если она не Есть и не Нет, то создаем элемент *}
&option_select_hidden_{counter name=select_counter_hidden}='+document.HiddenFieldsForm.option_select_hidden_{counter name=select_counter_hidden_extra}.value+'
{else}
{counter name=select_counter_hidden print=false}
{counter name=select_counter_hidden_extra print=false}
{/if}
{/section}
{/if}
{/section}
{else} надо для того, чтобы эти счетчики остались синхронизированы с другими счетчиками.
#3
Отправлено 03 April 2013 - 03:27 PM
#4
Отправлено 03 April 2013 - 04:05 PM
p.s. Кстати у меня так как описано чуть выше не заработало
#5
Отправлено 03 April 2013 - 05:15 PM
Можно. Если они в принципе не нужны для ордера (т.е. в товаре у характеристики всегда только один вариант), то вообще убрать вышеописанный блок. Если они нужны, но не хочется, чтобы были в тексте ордера, то надо менять уже в php-файле. Я менял как-то в рамках заказного модуля, но навскиду не помню. Могу посмотреть. Но при этом есть шанс, что кто-то купит "Товар (синий)" и "Товар (белый)", а в ордере получится две строки "Товар".А нельзя ли вообще убрать добавление доп.характеристик любых в название?
Либо вы не выстроили исправленное обратно в одну строку (иначе не заработает), либо написали "Есть" и "Нет" не в той кодировке. Надо в win1251.p.s. Кстати у меня так как описано чуть выше не заработало
#6
Отправлено 03 April 2013 - 06:07 PM
Опа, точно так. В одну строку не бросал, оставил так как в примере. Спасибо, сейчас попробую.Либо вы не выстроили исправленное обратно в одну строку (иначе не заработает), либо написали "Есть" и "Нет" не в той кодировке. Надо в win1251.
p.s. Спасибо заработало.
#7
Отправлено 03 April 2013 - 07:01 PM
#8
Отправлено 03 April 2013 - 07:21 PM
Вот как ни странно, работает и с & но подправил на всякий пожарный.Хех... сразу не заметил. В приведенных кодах символ & при сохранении почему-то заменился на & (& стало выглядеть как &) ,что совершенно неверно и, скорее всего, приведет к ошибке. Исправил. В этот раз почему-то сохранилось нормально .
#9
Отправлено 07 April 2013 - 07:36 PM
{section name=i loop=$product_extra}
{if $product_extra[i].option_type eq 1}
{section name=s loop=$product_extra[i].option_show_times}
{if $product_extra[i].option_show_times > 1}
{* если значений для выбора больше одного*}
&option_select_hidden_{counter name=select_counter_hidden}='+document.HiddenFieldsForm.option_select_hidden_{counter name=select_counter_hidden_extra}.value+'
{else}
{counter name=select_counter_hidden print=false}
{counter name=select_counter_hidden_extra print=false}
{/if}
{/section}
{/if}
{/section}
Не работает.....
#10
Отправлено 07 April 2013 - 08:25 PM
Эээ... А что тут можно посказать, если не понятно, что Вы пытаетесь сделать, используяМожет всетаки подскажите что делаю не так? голову уже сломал, вроде по аналогии делаю.
{if $product_extra[i].option_show_times > 1}
#11
Отправлено 07 April 2013 - 08:59 PM
Эээ... А что тут можно посказать, если не понятно, что Вы пытаетесь сделать, используяМожет всетаки подскажите что делаю не так? голову уже сломал, вроде по аналогии делаю.
{if $product_extra[i].option_show_times > 1}
Если у характеристики несколько значений, но для товара назначено только 1 одно значение из возможных.
не учитывать данное значение характеристики при добавлении в корзину.
Эээ... А что тут можно посказать, если не понятно, что Вы пытаетесь сделать, используяМожет всетаки подскажите что делаю не так? голову уже сломал, вроде по аналогии делаю.
{if $product_extra[i].option_show_times > 1}
Если у характеристики несколько значений, но для товара назначено только 1 одно значение из возможных.
не учитывать данное значение характеристики при добавлении в корзину.
Все получилось с {if $product_extra[i].values_to_select_count == 1}
#12
Отправлено 07 April 2013 - 09:07 PM
Это понятно, но причем тут $product_extra[i].option_show_times ?Если у характеристики несколько значений, но для товара назначено только 1 одно значение из возможных.
Этот элемент содержит количество вариантов характеристики, которые можно выбрать одновременно, а не количество вариантов вообще . Например, если мы хотим иметь возможность для характеристики "Цвет" выбрать не один цвет, а два - будет два выпадающих селекта "Цвет".
Настраивается это количество при настройке характеристик у товара, но практически всегда и у всех оно равно единице, я с другим не сталкивался.
#13
Отправлено 07 April 2013 - 10:04 PM
Это понятно, но причем тут $product_extra[i].option_show_times ?Если у характеристики несколько значений, но для товара назначено только 1 одно значение из возможных.
Этот элемент содержит количество вариантов характеристики, которые можно выбрать одновременно, а не количество вариантов вообще . Например, если мы хотим иметь возможность для характеристики "Цвет" выбрать не один цвет, а два - будет два выпадающих селекта "Цвет".
Настраивается это количество при настройке характеристик у товара, но практически всегда и у всех оно равно единице, я с другим не сталкивался.
Вы имеете в виду условие множественного выбора из списка вариантов одной характеристики ?
Но у меня данное значение отрабатывает и с одним выбором, в таком виде:
{if $product_extra[i].option_show_times > 1 }
({counter name=option_show_times})
{$product_extra[i].name}<br>: // название характеристики при условии вывода селект(нескольких значений) с новой строки
{else}
{$product_extra[i].name}: // название характеристики при условии единственного значения, в одну строку
{/if}
#14
Отправлено 09 April 2013 - 12:00 PM
Когда я делаю выбор характеристики для товара (по ссылке Настроить - Выбор из возможных значений) там есть ссылка Сохранить так(?) окно закрывается и основная страничка перегружается с сохранением последней характеристики.
Но это не очень удобно, за каждым разом ждать пока перезагрузится страничка, а потом опять маслать еще вниз страницы и искать последнюю отмеченную характеристику. Чтобы со следующей производить тоже самое. Было бы пара настраиваемых характеристик то ладно, но у меня их около 20 штук.
Нельзя ли как то сделать так, чтобы после того как выставил все характеристики только после этого при нажатии Сохранить на основной странице товара все сохраняло и уже потом перегружало страницу?
В поле Произвольное значение вписывать - вопросов нет. А вот при Выбор из возможных значений тут конечно хня получается.
#15
Отправлено 09 April 2013 - 12:44 PM
Мне думается, что сильно проще будет по закрытию окошка с вариантами (т.е. по перезагрузке страницы) возвращаться к тому разделу страницы, который редатировался. Т.е. сделать так, чтобы не прокручивать каждый раз страницу вниз. А вообще я тут выкладывал дополнение, где варианты характеристик добавляются-убираются в общей таблице товаров -Нельзя ли как то сделать так, чтобы после того как выставил все характеристики только после этого при нажатии Сохранить на основной странице товара все сохраняло и уже потом перегружало страницу?
http://vsupport.club...вара-в-общем-с/
#16
Отправлено 09 April 2013 - 05:39 PM
Хорошее дополнение, не спорю. Но в моем случае, все мои характеристики со словами: Есть, Нет выглядят также не понятно, даже в этом дополнении.А вообще я тут выкладывал дополнение, где варианты характеристик добавляются-убираются в общей таблице товаров -
http://vsupport.club....club/t...5м-с/
Ну вот пример:
IMG_14.12.2012-6.12.1809.04.2013-18.04.19.jpg 19.06К 7 Количество загрузок:
Верхнюю строку еще можно понять о какой характеристике идет речь а вот вторую после характеристики Емкостный...
Вот как тут разобраться что Есть а чего Нет. Какой из НЕТ или ЕСТЬ к примеру нужно убрать.
Вот если бы сделать такой же выбор (с раскрывающимся списком и чекбоксами) прямо на странице товара (не в новом окне - open_window)
) как по умолчанию в движке.
А к примеру, нажал на Настроить - Выбор из возможных значений, вниз расскрылся список, поотмечал что нужно, переходишь к следующей характеристике. По концовке нажал Сохранить - все сразу и сохранилось. Вот это было бы шикарно.
#17
Отправлено 09 April 2013 - 06:25 PM
Несколько переписать дополнение, чтобы в том же поле с кнопочками-крестиками выводились и названия характеристик. Или, как вариант, названия характеристик выводились при наведении мышкой. Исходно оно писалось не столько для убирания вариантов, сколько для заполнения, поэтому этот момент был упущен из внимания. Да и варианты были вполне узнаваемые даже без названия характеристик.Вот как тут разобраться что Есть а чего Нет. Какой из НЕТ или ЕСТЬ к примеру нужно убрать
Собственно, набор из кучи характеристик с одинаковыми вариантами "Есть/Нет" это, скорее, чисто Ваша фишечка, чем распространенный случай . ИМХО, куда более удобно все бинарные характеристики ("да/нет", "есть/нет" и подобные) свести в одну характеристику. Т.е., к примеру, вместо "Wi-Fi - да/нет", "Блютуз - да/нет", "USB - да/нет", "Эзернет - да/нет" сделать характеристику "На борту есть" с вариантами "Wi-Fi/Блютуз/USB/Эзернет".
#18
Отправлено 09 April 2013 - 06:39 PM
Вот всплывающая подсказка (дабы не увеличивать место на странице с самими характеристиками) было бы совсем не плохо. Подвел мышку всплыло сообщение - WiFi, ага не трогаем, идем дальше и т.д. ...Несколько переписать дополнение, чтобы в том же поле с кнопочками-крестиками выводились и названия характеристик. Или, как вариант, названия характеристик выводились при наведении мышкой. Исходно оно писалось не столько для убирания вариантов, сколько для заполнения, поэтому этот момент был упущен из внимания. Да и варианты были вполне узнаваемые даже без названия характеристик.
Собственно, набор из кучи характеристик с одинаковыми вариантами "Есть/Нет" это, скорее, чисто Ваша фишечка, чем распространенный случай . ИМХО, куда более удобно все бинарные характеристики ("да/нет", "есть/нет" и подобные) свести в одну характеристику. Т.е., к примеру, вместо "Wi-Fi - да/нет", "Блютуз - да/нет", "USB - да/нет", "Эзернет - да/нет" сделать характеристику "На борту есть" с вариантами "Wi-Fi/Блютуз/USB/Эзернет".
На счет второго вопроса, эти характеристики у меня как правило, почти всегда разнятся, (продукция из Китая), у них никогда не знаешь когда поставить Есть а когда Нет.
И иногда по приходу товара на базу, при проверке выясняется, что там где стояло Есть на самом деле его Нет Узкобратья еще те кадры.
По этому, мне уж лучше чтобы все характеристики были строго отдельно. Чтобы в случае чего можно было изменить только одну характеристику данного товара.
Правда наверное таки проще просто прописывать ручками (Произвольное значение) характеристику Есть/ Нет (заодно и в название товара падать не будут).
#19
Отправлено 09 April 2013 - 06:54 PM
Что так, что этак придется менять состояние характеристики у товара. В Вашем случае сменить "да" на "нет" у характеристики товара, в моем - убрать у характеристики товара отсутствующий у этого товара вариант. А вот если неверных характеристик две, то Вам придется менять "да/нет" уже в двух характеристиках товара, а мне все так же в одной.По этому, мне уж лучше чтобы все характеристики были строго отдельно. Чтобы в случае чего можно было изменить только одну характеристику данного товара.
#20
Отправлено 09 April 2013 - 07:09 PM
Я думаю тут истино-правильного решение таки нет. Потому как у каждого магазина своя специфика.