Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Как в категории вывести только те товары, у которых есть скидка для определенной группы покупателей?


MrNix21

Recommended Posts

Здравствуйте! У некоторых товаров есть оптовая цена. Для этого создана группа покупателей "Оптовики" и в акции у некоторых товаров проставлена цена для этой группы.
Во фронтенде в категории я хочу сделать галочку "Показать только товары с оптовой ценой". По нажатию на которую должны выходить только те товары, у которых для группы покупателей "Оптовики" заполнена акционная цена. Как мне это сделать?
Галочку, как я понимаю, нужно сделать как ссылка с get-параметром, например, site.ru/posuda?opt=yes
И в модели /catalog/model/catalog/product.php в функции getProducts() добавить условие для выборки если есть get параметр, т.е.:

if (isset($_GET['opt'])) {
  $sql .= // выбрать только те товары, у которых есть акционная цена для группы покупателей "Оптовики"
}

Мне очень сложно разобраться в таких сложных SQL запросах, может кто-нибудь уже делал у себя подобное?

Надіслати
Поділитися на інших сайтах


05.03.2022 в 16:05, MrNix21 сказал:

У некоторых товаров есть оптовая цена.

Акции не про это и у них как не странно, в опенкарт есть даже своя страница , которую не нужно ни создавать ни настраивать отдельно .

Для задания оптовых цен в опенкарт существует понятие Скидка . Вы можете указать не только цену товара, но и значение цены в зависимости от количества купленного товара. Находятся скидки в карточке товара, рядом с Акциями.

Складывается впечатление , что вы хотите показать товар со скидкой, тем кто не купит этот товар по этой цене ?

Пока, всё именно так и выглядит.

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

 

Надіслати
Поділитися на інших сайтах

05.03.2022 в 21:41, Tom сказал:

Акции не про это и у них как не странно, в опенкарт есть даже своя страница , которую не нужно ни создавать ни настраивать отдельно .

Для задания оптовых цен в опенкарт существует понятие Скидка . Вы можете указать не только цену товара, но и значение цены в зависимости от количества купленного товара. Находятся скидки в карточке товара, рядом с Акциями.

Складывается впечатление , что вы хотите показать товар со скидкой, тем кто не купит этот товар по этой цене ?

Пока, всё именно так и выглядит.

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

 

Спасибо за включение в обсуждение.

1. Да, я знаю что есть такая страница с акциями, но там нет разделений по категориям товаров - выводятся общим списком все товары магазина. Мне этот вариант не подходит.

2. Цена для "Оптовиков" - это не совсем цены для оптовиков, а цена товара для зарегистрированных покупателей. Т.е. при регистрации на сайте всем покупателям присваивается эта группа и соответственно некоторые товары для них будут по оптовым ценам.

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

Поэтому я хочу, чтобы посетители сайта могли фильтровать товары в категории по наличию "оптовой цены".

Надіслати
Поділитися на інших сайтах


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

 

1. Оставьте в покое страницу Акций . Не ломайте логику работы движка. Я бы вам предложил использовать для вашей задачи, какой-нибудь фильтр, с функцией "Посадочные страницы". Если совсем простым языком, то вы нужным товарам, присвоите некое общее значение. Потом с помощью фильтра получите страницу с заданным условием фильтрации и эта страница и будет одной и тех из которых вы создадите нечто общее( в вашем случае страницу "Акции" ) для нужных товаров, с разделением на категории.

Когда то очень давно, для опенкарт 2.0 я писал модификатор, который выводил на странице Акций, блок с разбивкой на под-категории, так же как выглядит это в категориях обычных, где есть под-категории. Но позже всё же пришли к решению фильтр+посадочные страницы.

 

2. Этот пункт более менее понятен. Задайте вопрос Гуглу о условии "if logged" для Opencart. Куча примеров использования и реализаций. 

 

 3. Посмотрите , что либо из ранее предложенных вариантов, как я понимаю у вас есть некие базовые знания. Вот это например , для старых версий опенкарт 

https://opencartforum.com/files/file/1443-vyvod-ceny-dlya-zaregistrirovannyh-a-lya-sitilink-vqmod/

Надіслати
Поділитися на інших сайтах

07.03.2022 в 11:41, Tom сказал:

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

 

1. Оставьте в покое страницу Акций . Не ломайте логику работы движка. Я бы вам предложил использовать для вашей задачи, какой-нибудь фильтр, с функцией "Посадочные страницы". Если совсем простым языком, то вы нужным товарам, присвоите некое общее значение. Потом с помощью фильтра получите страницу с заданным условием фильтрации и эта страница и будет одной и тех из которых вы создадите нечто общее( в вашем случае страницу "Акции" ) для нужных товаров, с разделением на категории.

Когда то очень давно, для опенкарт 2.0 я писал модификатор, который выводил на странице Акций, блок с разбивкой на под-категории, так же как выглядит это в категориях обычных, где есть под-категории. Но позже всё же пришли к решению фильтр+посадочные страницы.

 

2. Этот пункт более менее понятен. Задайте вопрос Гуглу о условии "if logged" для Opencart. Куча примеров использования и реализаций. 

 

 3. Посмотрите , что либо из ранее предложенных вариантов, как я понимаю у вас есть некие базовые знания. Вот это например , для старых версий опенкарт 

https://opencartforum.com/files/file/1443-vyvod-ceny-dlya-zaregistrirovannyh-a-lya-sitilink-vqmod/

1. Я с Вами полностью согласен, поэтому у меня нет и не было в планах что-либо делать со страницей Акции. Все перечисленное необходимо сделать на страницах категорий.

2 и 3. Это я уже реализовал, в каких-то доработках по выводу цен нет необходимости.

 

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

 

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

 

В любом случае, благодарю Вам за помощь!

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.