1. Уважаемые пользователи, прежде чем ответить в теме или создать новую,
    внимательно ознакомьтесь с правилами раздела

    Кому лень работать или руки не оттуда - пользуйтесь услугами специалистов
  2. Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.."

    Есть JED!!! Ищите там!!!

VM 2.x Вывод товара со скидкой на отдельной странице

Тема в разделе "Virtuemart", создана пользователем mkt, 25 сен 2014.

Информация :
  • Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с правилами раздела
  • Не задавайте глупых вопросов "Посоветуйте какой-нибудь компонент.." Есть JED!!! Ищите там!!!
  • Аналоги ищите там же - на JED!!!
  • Новая версия? - У кого будет - тот выложит!
  1. mkt

    mkt Постоялец

    Регистр.:
    7 авг 2011
    Сообщения:
    141
    Симпатии:
    10
    Здравствуйте, собственно если кто знает поделитесь способом вывода товара со скидкой на отдельной странице или отдельным модулем?

    PS На предыдущих версиях работал данный способ Перейти по ссылке , но в новой версии (2.6.10) уже не работает.
     
  2. yusi4ka

    yusi4ka

    Регистр.:
    20 мар 2012
    Сообщения:
    161
    Симпатии:
    41
    Для virtuemart 2.6.6 я делала следующим образом, писала сама, так что возможны где-то ошибки)).
    1.Открываем /administrator/components/com_virtuemart/models/product.php
    В функции sortSearchListQuery добавляем параметр is_sale. По умолчанию is_sale=FALSE.
    Получаем следующее sortSearchListQuery ($onlyPublished = TRUE, $virtuemart_category_id = FALSE, $group = FALSE, $nbrReturnProducts = FALSE, $is_sale = FALSE)
    Перед

    1. if ($virtuemart_category_id > 0) {
    добавляем
    if ($is_sale) {
    $joinPrice = TRUE;
    $where[] = 'pp.product_price !=pp.product_override_price and pp.override=1';
    }

    2. Открываем /components/com_virtuemart/views/category/view.html.php
    После строчки $categoryId = JRequest::getInt('virtuemart_category_id', -1);
    добавляем
    $sale = JRequest::getInt('sale', -1);
    if ($sale==1){
    $is_sale = TRUE;
    }
    else {
    $is_sale = FALSE;
    }
    и вместо $ids = $productModel->sortSearchListQuery (TRUE, $categoryId);
    пишем $ids = $productModel->sortSearchListQuery (TRUE, $categoryId,FALSE,FALSE,$is_sale);

    3. Ссылка для товаров со скидками будет следующая - Перейти по ссылке
     
    zavrus и mkt нравится это.
  3. mkt

    mkt Постоялец

    Регистр.:
    7 авг 2011
    Сообщения:
    141
    Симпатии:
    10
    К сожалению на virtuemart 2.6.16 не проходит такая фишка, нет никаких идей, что нужно поменять? Заранее благодарю за помощь.
     
  4. msena

    msena Постоялец

    Регистр.:
    2 июл 2012
    Сообщения:
    78
    Симпатии:
    3
    Спасибо! Немного исправленный код подошел к VM 3.0.6. Может быть кто нибудь адаптирует к VM 3.0.14(16)?
     
  5. yusi4ka

    yusi4ka

    Регистр.:
    20 мар 2012
    Сообщения:
    161
    Симпатии:
    41
    у меня без исправлений код подошел к 3.0.14