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

[Решено] Помогите доработать модуль AnyList


Recommended Posts

Здравствуйте Гуру программирования. Все известен, наверное, бесплатный модуль AnyList http://www.opencart.com/index.php?route=extension/extension/info&extension_id=9086, модуль мне подходит, но надо немного доработать.

Суть доработке заключается в следующем. Если выставить модуль в карточку товара и поставить сортировку по цене. Мне надо запрограммировать так что бы сортировка по цене была такая, что бы показывались те товары с ценой в пределе +10% и -10% от цены товара на которой показывается данный модуль.

Вроде нашел код где сортировка выставляется catalog\model\anylist.php

 if (isset($filter['sort']) and $filter['sort']!='') {
            $cols = $this->db->query("SELECT COLUMN_NAME FROM `information_schema`.`COLUMNS` WHERE TABLE_NAME='".DB_PREFIX."product' and TABLE_SCHEMA='".DB_DATABASE."' and COLUMN_NAME='".$filter['sort']."'");
            if ($cols) {
                $sql .= " ORDER BY ".$filter['sort'];
                if (isset($filter['order']) and trim(strtolower($filter['order']))=='desc')
                    $sql .= ' DESC';
            } else {
                die("AnyList: SORT FIELD ".$filter['sort']." not found in product table. Only fields in product table are allowed.");
            }
        }

 

Но как ту поставить мое условие незнаю.

Заранее благодарен за дельные советы.

 

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


Проценты задаются на 4-ой строчек, переменная $procent; 0.15 это 15%. Работает с учетом акций. Пробуйте.

 

Заменить файл catalog/controller/module/anylist.php

anylist.php

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


Спасибо, но что то не работает. Выдает ошибку в строке 175

    if (count($res)>$limit) {
                $randomRes =  ($limit>1) ? array_rand($res,$limit) : array(rand(0,count($res)-1));

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


не работает все равно на эту же строчку выдается ошибка. И еще вы удалили один блок

// If ANY of product's category exists in filter  
                //foreach($rc as $c) {
                //    $ok = ($ok OR array_search($c['category_id'],$limitprc)!==false);
                //}

И оставили закоментированый блок

// If EXACT of product's categories exists in filter  
                // foreach($rc as $c) {
                //     $ok = ($ok AND array_search($c['category_id'],$limitprc)!==false);
                // }

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

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


  • 3 weeks later...

Я поставил на тестовом сайте вот страница http://test.prostomag.odessa.ua/melkaja-bytovaja-tehnika/aerogrili/ajerogril-supra-ags-1211.html

Notice: Undefined variable: limit in

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

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

  • 1 year later...

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

да, очень интересно!

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

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

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

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

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

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

Вхід

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

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

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