Перейти к содержанию
Форум поддержки пользователей VamShop

Как вывести в списке атрибутов только товары с stock > 0?


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

Можно попробовать ведь рядом с этим нет в наличии вставить кнопку купить, как и в списке товара, т.е. примерно так:

{product_form product_id={$content_id}}
<div class="inner darken notop">
<button class="btn btn-add-to-cart" type="submit"><i class="fa fa-shopping-cart"></i> {lang}Buy{/lang}</button>
</div>
{/product_form}
Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 71
  • Created
  • Последний ответ

Top Posters In This Topic

  • domostoreru

    41

  • support

    31

  В 09.08.2014 в 05:25, support сказал:

 

Можно попробовать ведь рядом с этим нет в наличии вставить кнопку купить, как и в списке товара, т.е. примерно так:

{product_form product_id={$content_id}}
<div class="inner darken notop">
<button class="btn btn-add-to-cart" type="submit"><i class="fa fa-shopping-cart"></i> {lang}Buy{/lang}</button>
</div>
{/product_form}

 

Понял. А как их вывести - атрибуты группы под главным товаром? Александр, а где задается условие 'Master product' отображать в категории, а "зависимые" от него товары не отображать?

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

Что-то не могу найти, где задается условие вывода главного товара, там наверное что-то типа {if node.is_group == 1}, а вот в каком месте это условие, непонятно пока.

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

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

 

Всё, что касается атрибутов, выводится через function.attributes_list.php

 

Это единый файл и для фильтров и для спецификаций и для вариантов товара.

Ссылка на сообщение
Поделиться на другие сайты
  В 09.08.2014 в 13:25, support сказал:

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

 

Всё, что касается атрибутов, выводится через function.attributes_list.php

 

Это единый файл и для фильтров и для спецификаций и для вариантов товара.

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

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

Вообще в /app/Vendor/smarty/vam_plugin/function.contnet_listing.php

 

Там вроде в условия добавляется is_group и id_group

 

Видимо, там надо править, убирать эти условия.

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

Александр, просто есть идея, как реализовать это решение в категории - прямо через микрошаблон продакт_листинг задаем условие вывода главного товара. Для зависимых выводим только атрибут, цену и кнопку "купить". Как на картинке. Пока этот код не срабатывает - главный товар выводит, а зависимые ни в какую не хочет. Вот и парюсь

 

post-57061-0-16125600-1407651876_thumb.j

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

Что б выводились все товары в категории, а не только главный, в function.content_listing.php можно поменять:

        $content_list_data_conditions = array_merge($content_list_data_conditions,array('OR' => array('Content.id_group is null','Content.id' => $content_list_group)));

на:

        $content_list_data_conditions = array_merge($content_list_data_conditions,array('OR' => array('Content.id_group > 0','Content.id' => $content_list_group)));
Ссылка на сообщение
Поделиться на другие сайты
  В 10.08.2014 в 06:35, support сказал:

 

Что б выводились все товары в категории, а не только главный, в function.content_listing.php можно поменять:

        $content_list_data_conditions = array_merge($content_list_data_conditions,array('OR' => array('Content.id_group is null','Content.id' => $content_list_group)));

на:

        $content_list_data_conditions = array_merge($content_list_data_conditions,array('OR' => array('Content.id_group > 0','Content.id' => $content_list_group)));

 

Спасибо. Ща попробуем

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

А вот выводить зависимые в списке товара наверное по умолчанию не получится, по умолчанию выводятся варианты товара только на странице карточки товара - ссылками.

 

Это уже, видимо, нужно править function.attribute_list.php

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

Хотя вот, content_listing можно не трогать, вот я Вам для пробы чуть поправил /app/Vendor/smarty/vam_plugin/function.attribute_list.php

 

Что б выводились варианты у товара.

 

А дальше уже сами внешний вид сделайте какой Вам нужно.

 

У меня с этим файлом выводятя варианты внутри категории, у основного товара, дальше Вы уже сами html-код поправьте, сделайте внешне как Вам нужно.

 

По идее, это именно то, что Вам нужно, т.е. выводится основной товар и ниже спецификации зависимых.

 

html-код для вывода в списке товара начинается с:

                {if $attr.target=="CATALOG"}

function.attribute_list.php

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

Александр, спасибо, это то, что нужно. Этот кусок проблемы закрыли.

 

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

Короче, суть проблемы в следующем, а точнее там две проблемы:

 

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

Все это касается того, что в некоторых движках называется "варианты товара".

Поясню. Допустим, для обуви есть много атрибутов, по которым можно сгруппировать - цвет, материал, модель и пр. Но когда уже вышли на конкретный товар, у него есть только "варианты" - размер. То же самое и с нашим товаром, например, стиральный порошок. Есть много атрибутов - тип белья, содержание добавок и пр. Но когда выбрали конкретный "МИФ Весенняя свежесть" - у него остается только один значимый атрибут - "варианты товара" - вес, фасовка. Извините за многословность, просто хочется, чтобы понятно было.

Так вот эти самые варианты товара надо как-то отделять от других атрибутов, типа "главный атрибут". Чтобы отражать в спецификации зависимых товаров (в категории или в карточке товара) только его. Остальные-то атрибуты совпадают.

Еще раз извините за много букв.

Как выделить (пометить) отдельный атрибут и по условию выводить только его?

 

2. Хотелось бы, как в первой ветке вамшопа, создавать атрибуты и привязывать (отвязывать) их к нужным категориям. Возможно ли такое усовершенствование в вамшоп2.

 

Текст получился большой, но, на мой взгляд, эти усовершенствования пригодятся во многих магазинах, где товар имеет несколько вариантов (повторюсь, размер обуви, объем духов, шампуней, количество штук капсул для стирки и пр.)

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

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

2. Они и привязываются к категориям, в Админке - Каталог - Атрибуты.

 

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

 

т.е. это только вносить правки в уже существующий код.

 

Модуль сделан максимально гибким и, в общем-то, править можно как угодно.

 

Да и это нормально, никогда не бывает готовых решений на 100% для 100% пользователей.

 

Всегда приходится лезть в код.

Ссылка на сообщение
Поделиться на другие сайты
  В 10.08.2014 в 07:48, support сказал:

2. Они и привязываются к категориям, в Админке - Каталог - Атрибуты.

 

Александр, вы имеете в виду "Админка->Содержание->Атрибуты"?

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

То есть атрибут "объем" из категории, например "шампуни", нельзя использовать в другой категории, например "чистящие средства"? В каждой категории придется свой набор атрибута "объем" создавать?

А в первой ветке вамшоп можно было один раз создать спецификацию "объем" и потом ее прикреплять/откреплять куда надо, по-моему удобно было.

Ссылка на сообщение
Поделиться на другие сайты
  В 10.08.2014 в 07:48, support сказал:

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

 

Спасибо, разобрался, по этому пункту вопрос тоже закрыт. Вамшоп - качественный продукт, кто бы чего не говорил.

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

Кстати, косячок с корзиной обнаружился. Если в корзину положить из категории, а потом еще раз положить этот же товар из карточки товара. В корзине получится одного товара 2 шт. При попытке удалить товар из корзины проявляется косяк - 1 шт товара удаляется, а еще 1 шт товара не удаляется ни прикаких условиях. Как-то так. Пытаюсь что-то предпринять.

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

Блин, этот косячок, то проявляется, то нет, не могу понять при каких условиях, от чего зависит.

Ссылка на сообщение
Поделиться на другие сайты
  В 10.08.2014 в 12:27, domostoreru сказал:

Блин, этот косячок, то проявляется, то нет, не могу понять при каких условиях, от чего зависит.

 

Похоже от браузера зависит, только в Опере проявляется, в Хроме файрфоксе и сафари - все нормально, ИЕ не пробовал

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

Да, пока что копироания атрибутов между категориями нет, т.е. нужно заходить в категорию и создать атрибуты у каждой категории.

 

Видимо, в будущем появится копирование атрибутов между категориями.

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

Спасибо за оперативные ответы. А как в категории цену для атрибута показать, еще бы кнопочкой "купить" его в корзину отправить.

Ссылка на сообщение
Поделиться на другие сайты
  В 10.08.2014 в 13:05, support сказал:

Прицепите к сообщению свой файл attrbiute_list.php

 

Посмотрю как цену вставить.

 

attrbiute_list.php

function.attribute_list.php

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

Вот /app/Model/Content.php и /app/Vendor/smarty/vam_plugins/function.attributes_list.php

 

Выводится и цена и кнопка купить.

 

Внешний вид уже сами правьте, главное, что данные выводятся, а остальное - это уже мелочи, правка html + css.

Content.php

function.attribute_list.php

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

×
×
  • Создать...