Перейти к содержанию
Официальный форум поддержки Simpla

Вариант товара изображением без выпадающего списка


Рекомендуемые сообщения

Доброго времени суток друзья

Понимаю немного, но в целом принцип понятен что необходимо и в БД поработать и на шаблоне

Представляю это примерно так:

в БД создать таблицу variant_image

в variant_image создать id, к каждому из них присвоить имя и цветную иконку 32Х32px к примеру

 

А вот далее уже сложнее т.к. нужно укоротить и переделать код который отвечает за выпадающий селект и вывести в шаблон вот эти самые картинки

 

Примерно хотелось бы получить следующее

Прошу совета дабы не накосячить)))

Всем заранее спасибо

Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток друзья

Понимаю немного, но в целом принцип понятен что необходимо и в БД поработать и на шаблоне

Представляю это примерно так:

в БД создать таблицу variant_image

в variant_image создать id, к каждому из них присвоить имя и цветную иконку 32Х32px к примеру

 

А вот далее уже сложнее т.к. нужно укоротить и переделать код который отвечает за выпадающий селект и вывести в шаблон вот эти самые картинки

 

Примерно хотелось бы получить следующее

Прошу совета дабы не накосячить)))

Всем заранее спасибо

 

можно и не так — берете скрипт http://dimox.name/jquery-form-styler/ и стилизуете свои чекбоксы  в зависимости от имени, то есть если variant->name == "Зеленый"  то задаем класс green и т.д...

 

я стилизовал чекбоксы для свойств, пример отправил в личку

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

можно и не так — берете скрипт http://dimox.name/jquery-form-styler/ и стилизуете свои чекбоксы  в зависимости от имени, то есть если variant->name == "Зеленый"  то задаем класс green и т.д...

 

я стилизовал чекбоксы для свойств, пример отправил в личку

опять вы со своим скриптом.не легче просто стилизовать как здесь

Изменено пользователем kislotnik
Ссылка на сообщение
Поделиться на другие сайты

при выводе в картоске товаров можно выводить например так <span style="background: #{$v->name}"></span>

а в адиминке в название варианта писать кот цвета

Ссылка на сообщение
Поделиться на другие сайты

 

Это решение не пойдет принципиально, так как оно цепляет цвет к ТОВАРУ, а у ТС стоит задача совсем другая - задавать цвет для ВАРИАНТА.

 

Простейший способ - в админке добавить варианту поле для указания цвета. И в шаблоне уже менять вывод.

Еще проще - по совету Maksclub - использовать для этого поле названия варианта. Но это не всем подойдет...

 

Совет kislotnik-а - из серии "одно строим, другое ломаем". При его реализации в корзине и заказе во многих местах будет стоять что-то типа Сумка женская #5689a4, что не слишком хорошо...

Ссылка на сообщение
Поделиться на другие сайты

Это решение не пойдет принципиально, так как оно цепляет цвет к ТОВАРУ, а у ТС стоит задача совсем другая - задавать цвет для ВАРИАНТА.

 

Простейший способ - в админке добавить варианту поле для указания цвета. И в шаблоне уже менять вывод.

Еще проще - по совету Maksclub - использовать для этого поле названия варианта. Но это не всем подойдет...

 

Совет kislotnik-а - из серии "одно строим, другое ломаем". При его реализации в корзине и заказе во многих местах будет стоять что-то типа Сумка женская #5689a4, что не слишком хорошо...

и в корзине и в заказе можно стилизовать было вы желание.но таким способом меньше всего ковырять код нужно

Ссылка на сообщение
Поделиться на другие сайты

и в корзине и в заказе можно стилизовать было вы желание.но таким способом меньше всего ковырять код нужно

 

Если считаете, что Ваш способ самый короткий и простой, то быстренько напишите, что и как собираетесь стилизовать, со всеми деталями. И посмотрим, так ли это кратко и просто, и останутся ли недостатки...

Ссылка на сообщение
Поделиться на другие сайты

Если считаете, что Ваш способ самый короткий и простой, то быстренько напишите, что и как собираетесь стилизовать, со всеми деталями. И посмотрим, так ли это кратко и просто, и останутся ли недостатки...

по аналогии <span style="background: #{$v->name}"></span> в корзине и в заказах админки

Ссылка на сообщение
Поделиться на другие сайты

опять вы со своим скриптом.не легче просто стилизовать как здесь

Спасибо большое, самое лучшее решение и самое простое

Осталось научить этот код понимать цвет варианта

Не подскажете?)

Заранее спасибо)

Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое, самое лучшее решение и самое простое

Осталось научить этот код понимать цвет варианта

Не подскажете?)

Заранее спасибо)

 

<form class="variants" action="/cart">
{foreach $product->variants as $v}
	<label>
		<input name="variant" value="{$v->id}" type="radio"><span style="background:{$v->name}"></span>
	</label>
{/foreach}
<input type="submit" style="float:right;" class="totocart" value="в корзину" data-result-text="добавлено"/>
</form>
.variants input[type="radio"] {display: none;}
.variants label {display:inline-block;}
.variants input[type="radio"]+span {
  	padding: 10px;
        display: block;	
 	color:#000;
}
.variants input[type="radio"]:checked+span { 
  	padding: 10px;
        display: block;
        border: 2px solid #000;
 	color:#fff;
}
Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое, самое лучшее решение и самое простое

Осталось научить этот код понимать цвет варианта

Не подскажете?)

Заранее спасибо)

если вам нужно чтоб был и цвет и размер то думаю можете обратится к Noxter. так как я не специалист а такой же пользователь как вы просто давно уже здесь

Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое, самое лучшее решение и самое простое

Осталось научить этот код понимать цвет варианта

Не подскажете?)

Заранее спасибо)

а по поводу каких либо дополнений или разработок советовал бы обращатся к mishanya очень адекватный  и толковый специалист и цены приемлемы и всегда поможет

Ссылка на сообщение
Поделиться на другие сайты

по аналогии <span style="background: #{$v->name}"></span> в корзине и в заказах админки

 

 

Обычно в магазине товары разные. У одних есть варианты, отличающиеся цветом. У других - варианты, отличающиеся НЕ цветом, а варианты с обычными названиями. У третьих - единственный вариант.

И что будет при Вашем способе в такой вот типовой ситуации?

Ссылка на сообщение
Поделиться на другие сайты

Обычно в магазине товары разные. У одних есть варианты, отличающиеся цветом. У других - варианты, отличающиеся НЕ цветом, а варианты с обычными названиями. У третьих - единственный вариант.

И что будет при Вашем способе в такой вот типовой ситуации?

вообщето вопрос был именно за цвет

Ссылка на сообщение
Поделиться на другие сайты

Вообще-то последний вопрос был "И что будет при Вашем способе в такой вот типовой ситуации?".

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

 

Вывод простой: Ваш метод работает как следует только в том случае, если в магазине АБСОЛЮТНО ВСЕ товары разделяются на варианты по цвету.

 

Если, например, Вы продаете женские туфли по цветам, то работать будет. А если захотите к товарам добавить, например, щетку для чистки обуви, то тут просто так не выйдет. Можно, конечно,  исхитриться и приписать ей цвет - но это явное извращение. И если таких товаров много, то уже мучение для админа...

Ссылка на сообщение
Поделиться на другие сайты

Вообще-то последний вопрос был "И что будет при Вашем способе в такой вот типовой ситуации?".

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

 

Вывод простой: Ваш метод работает как следует только в том случае, если в магазине АБСОЛЮТНО ВСЕ товары разделяются на варианты по цвету.

 

Если, например, Вы продаете женские туфли по цветам, то работать будет. А если захотите к товарам добавить, например, щетку для чистки обуви, то тут просто так не выйдет. Можно, конечно,  исхитриться и приписать ей цвет - но это явное извращение. И если таких товаров много, то уже мучение для админа...

вот именно.только цвет

Ссылка на сообщение
Поделиться на другие сайты

 

<form class="variants" action="/cart">
{foreach $product->variants as $v}
	<label>
		<input name="variant" value="{$v->id}" type="radio"><span style="background:{$v->name}"></span>
	</label>
{/foreach}
<input type="submit" style="float:right;" class="totocart" value="в корзину" data-result-text="добавлено"/>
</form>
.variants input[type="radio"] {display: none;}
.variants label {display:inline-block;}
.variants input[type="radio"]+span {
  	padding: 10px;
        display: block;	
 	color:#000;
}
.variants input[type="radio"]:checked+span { 
  	padding: 10px;
        display: block;
        border: 2px solid #000;
 	color:#fff;
}

 

Спасибо большое... просто огромнейшее)))

буду стараться допилить теперь саму корзину т.к. в корзине передача цвета идет кодом

Ссылка на сообщение
Поделиться на другие сайты

Спасибо большое... просто огромнейшее)))

буду стараться допилить теперь саму корзину т.к. в корзине передача цвета идет кодом

 

<span class="purchase_variant" style="background:{$purchase->variant->name}"></span>
.purchase_variant { 
  	padding: 10px;
        display: block;
        border: 2px solid #000;
 	color:#fff;
}
Ссылка на сообщение
Поделиться на другие сайты

ОГРОМНОЕ СПАСИБО

 

mishanye

 

вопрос решен работает без проблем)

Вот этот же код из поста №19

<span class="purchase_variant" style="background:{$purchase->variant->name}"></span>

 

необходимо вставить в cart_informer.tpl и order.tpl

иначе вывод вариантов будет кодом

Еще раз спасибо 

mishanya
Ссылка на сообщение
Поделиться на другие сайты

Это решение не пойдет принципиально, так как оно цепляет цвет к ТОВАРУ, а у ТС стоит задача совсем другая - задавать цвет для ВАРИАНТА.

 

Простейший способ - в админке добавить варианту поле для указания цвета. И в шаблоне уже менять вывод.

Еще проще - по совету Maksclub - использовать для этого поле названия варианта. Но это не всем подойдет...

 

Совет kislotnik-а - из серии "одно строим, другое ломаем". При его реализации в корзине и заказе во многих местах будет стоять что-то типа Сумка женская #5689a4, что не слишком хорошо...

Всегда можно изменить под заказчика.
Ссылка на сообщение
Поделиться на другие сайты

Все бы ничего, но нашлись некоторые тонкости и неточности)))

видимо придется ждать

 

mishany

т.к. визуально клиент видит без проблем вариант цвета, а вот тот же Яндекс например не понимает этот цвет

Другими словами в yandex.xml параметр цвета передается как #000000

И теперь нужно yandex.php научить распознавать этот цвет

Или все же придется в админке в вариантах добавлять поле по аналогии варианта-->создавать таблицу в БД-->выводить этот параметр уже в yandex.xml

Ссылка на сообщение
Поделиться на другие сайты

Все бы ничего, но нашлись некоторые тонкости и неточности)))

видимо придется ждать

 

mishany

т.к. визуально клиент видит без проблем вариант цвета, а вот тот же Яндекс например не понимает этот цвет

Другими словами в yandex.xml параметр цвета передается как #000000

И теперь нужно yandex.php научить распознавать этот цвет

Или все же придется в админке в вариантах добавлять поле по аналогии варианта-->создавать таблицу в БД-->выводить этот параметр уже в yandex.xml

 

можно создать массив соответствий цвет-название в yandex.php

Ссылка на сообщение
Поделиться на другие сайты

можно создать массив соответствий цвет-название в yandex.php

 

Шикарное решение. Возможных цветов всего 16М, просто в yandex.php задать массив с 16М элементами. Превзойдет все имперы и джумлы вместе взятые...

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

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...