About This File
ВАЖНО: Читайте описание модуля, тестируйте демо, задавайте вопросы, прежде чем покупать модуль!
Модуль позволяет массово изменять цены товаров, с учетом необходимых фильтров.
Модуль разработан для Opencart 2.x. Демо: efremovav.16mb.com/ocstore2/admin/index.php?route=module/price_control (логин\пароль: demo\demo)
МОДУЛЬ РАБОТАЕТ СО СТАНДАРТНЫМИ ЦЕНАМИ(в т.ч. акциями и скидками) OPENCART! РАЗНЫЕ ЦЕНЫ ДЛЯ ГРУПП ПОКУПАТЕЛЕЙ МОДУЛЬ НЕ ДОБАВЛЯЕТ!
New!: возможность создавать Акции/Скидки для товаров соответствующих фильтру, если они ещё не созданы; возможность удалять Акции/Скидки для товаров по выбранным параметрам фильтра.
Как установить:
вариант 1. Через админ-панель: Установка расширений->Загрузить файл (Extension Installer->Upload File) - загружаете архив с модулем (для oc2.3.x загружаем архив "OC2_price_control_v.XXX(opencart_2.3.x).ocmod.zip")
вариант 2. Распаковываете архив в корень сайта.(для oc2.3.x загружаем архив "OC2_price_control_v.XXX(opencart_2.3.x).ocmod.zip")
-в настройках системы устанавливаете модуль (в списке модулей - Price Control - Групповое управление ценами);
-заходите в редактирование модуля и начинаете творить :).
P.S.: Стандартные файлы движка не заменяются, файлы vqmod(ocmod) не используются.
Как пользоваться:
-выбираете необходимые параметры фильтрации;
-выбираете типы цен, которые нужно будет изменить (Основная\Опции\Скидки\Акции);
-выбираете необходимое действие (прибавить\вычесть\умножить на\разделить на);
-вводите число, которое будет использоваться для обновления цен (допускаются целые и дробные числа);
-выбираете % или число (если выберете %, то будет использоваться N процентов от цены товара, где N - введенное число).
-нажимаете Выполнить - цены обновятся.
-нажимаете "Восстановить предыдущие значения" - вернутся предыдущие значения.
Техподдержка:
Проблемы типа "модуль установил, но его нет в списке" решаются корректной настройкой FTP, в частности поля "FTP Домашняя директория" (путь до папки с opencart). Это проблема не модуля, а некорректных настроек магазина, настраиваете сами или обращаетесь за помощью за доп. плату, если сами не знаете как это сделать.
Для тех, у кого Ocstore 2.1.0.2.1
Для корректной работы фильтра по производителям в этой версии OC необходимо внести изменения в модель, поскольку в стандартном методе получения производителей в этой версии ocstore есть баг. В файле "/admin/model/catalog/manufacturer.php" найти следующее:
public function getManufacturers($data = array()) { $sql = "SELECT * FROM " . DB_PREFIX . "manufacturer"; $sql = "SELECT c.manufacturer_id, c.name, c.sort_order FROM " . DB_PREFIX . "manufacturer c LEFT JOIN " . DB_PREFIX . "manufacturer_description md ON (c.manufacturer_id = md.manufacturer_id) WHERE md.language_id = '" . (int)$this->config->get('config_language_id') . "'"; if (!empty($data['filter_name'])) { $sql .= " AND name LIKE '" . $this->db->escape($data['filter_name']) . "%'"; } $sort_data = array( 'name', 'sort_order' ); if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { $sql .= " ORDER BY " . $data['sort']; } else { $sql .= " ORDER BY name"; } if (isset($data['order']) && ($data['order'] == 'DESC')) { $sql .= " DESC"; } else { $sql .= " ASC"; } if (isset($data['start']) || isset($data['limit'])) { if ($data['start'] < 0) { $data['start'] = 0; } if ($data['limit'] < 1) { $data['limit'] = 20; } $sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit']; } $query = $this->db->query($sql); return $query->rows; }
и заменить на это:
public function getManufacturers($data = array()) { $sql = "SELECT * FROM " . DB_PREFIX . "manufacturer"; $sql = "SELECT c.manufacturer_id, c.name, c.sort_order FROM " . DB_PREFIX . "manufacturer c LEFT JOIN " . DB_PREFIX . "manufacturer_description md ON (c.manufacturer_id = md.manufacturer_id) WHERE md.language_id = '" . (int)$this->config->get('config_language_id') . "'"; if (!empty($data['filter_name'])) { $sql .= " AND c.name LIKE '" . $this->db->escape($data['filter_name']) . "%'"; } $sort_data = array( 'name', 'sort_order' ); if (isset($data['sort']) && in_array($data['sort'], $sort_data)) { $sql .= " ORDER BY " . $data['sort']; } else { $sql .= " ORDER BY c.name"; } if (isset($data['order']) && ($data['order'] == 'DESC')) { $sql .= " DESC"; } else { $sql .= " ASC"; } if (isset($data['start']) || isset($data['limit'])) { if ($data['start'] < 0) { $data['start'] = 0; } if ($data['limit'] < 1) { $data['limit'] = 20; } $sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit']; } $query = $this->db->query($sql); return $query->rows; }
P.S.: заменить name на c.name
Также Вас может заинтересовать:
Шкала статусов заказа - добавляет удобную шкалу для изменения статусов заказа в админке.
Подсказки DaData PRO - подсказки при вводе ФИО, адреса и e-mail на страницах регистрации, авторизации и оформления заказа.
Купон "Бонусные баллы на счёт" - модуль добавляет тип купона "Бонусные баллы на счёт", использование которого позволит начислить покупателю бонусные баллы для оплаты следующей покупки.
Бонусные баллы - статистика - удобная статистика по приходу/расходу бонусных баллов для администратора.
Рекомендуемые товары PRO (бесплатно) - позволяет использовать таймер обратного отсчёта и выводить описание в html-формате на базе стандартного модуля "Рекомендуемые".