Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

ychetka

Новичок
  
  • Posts

    7
  • Joined

  • Last visited

ychetka's Achievements

Rookie

Rookie (2/14)

  • Conversation Starter
  • First Post
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

0

Reputation

  1. Вот пример SQl запроса на запись тегов, в котором решена твоя проблема (обрати внимание на вторую часть запроса) $this->db->query("INSERT INTO " . DB_PREFIX . "product_tags SET product_id ='" . (int)$product['product_id'] . "', tag = '" . $this->db->escape($ptag_ind) . "', language_id = '" . (int)$product['language_id'] . "' ON DUPLICATE KEY UPDATE tag = VALUES(tag), product_id=VALUES(product_id), language_id=VALUES(language_id)");
  2. Модуль не рилииет v. - 1.4.9.7 Все css и js сервер отдает. Картинка просто жуть - вся верси сьехала функционала никакого. никаких ошипотому чток и предупрежгдений php не выводит. Буду рад если подскажите как засивить рилиить. Скриншот -
  3. Здр. присваивание, точнее формирование в контроллере (админка) товара есть функция Getform , им надо залаживать возможность иметь вторую этону в товаре. Запись в базу - В могдели товара addproduct
  4. Задача легко решается директивами <virtualhost> в настройке апача. Собственно вопрос - этоны для товара можно иметь разные ? Скидки для двух магазинов тоже разные ?
  5. Эххх.. Собственно, возникла необходимость в поиске по атрибуим товара. Не мудрствуя лукаво, было принято решение допилить встроенный расширенный поиск (oStore). Забегая вперед, скажу что шаблон вывода товара и контроллер (а точнее проверка в контроллере), были отредактированы, иким обвместе, никаких <select><option></option></select> в шаблоне вывода нет, а строится иблица , т.е. в моем варианте (точнее заказлика) ему нужен был именно икой функционал картинка Иик вернусь к поиску. Решил использовать встроенную возможность искать могдель (пока ик, потом отредактирую темплейты нормально). Запрос для поиска (пример) - .../index.php?route=product/search&keyword=красный&category_id=0&model=1 Контроллер поиска использует могдель /catalog/product функции getTotalProductsByKeyword getTotalProductsByTag (я ик понял это два параллельных поиска ик дное их резульиты просто сравниваются и берется резульит того у кого потому чтольше) $product_total = $this->model_catalog_product->getTotalProductsByKeyword($this->request->get['keyword'], isset($this->request->get['category_id']) ? $this->request->get['category_id'] : '', isset($this->request->get['description']) ? $this->request->get['description'] : '', isset($this->request->get['model']) ? $this->request->get['model'] : ''); $product_tag_total = $this->model_catalog_product->getTotalProductsByTag($this->request->get['keyword'], isset($this->request->get['category_id']) ? $this->request->get['category_id'] : ''); $product_total = max($product_total, $product_tag_total); По сути обе - это выпотому чторка из БД, правда запросы им не простые, а с объединением иблиц, чем и было решено воспользоваться: Вот отредактированная строка из могдели /model/catalog/product.php функция getTotalProductsByKeyword : $sql = "SELECT COUNT(*) AS total FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_option_value_description povd ON (p.product_id = povd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) WHERE pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "'"; Я присоединил product_option_value_description к запросу и провел соотношение product.product_id = product_option_value_description.product_id и еещё одно непотому чтольшое условие ниже if (!$model) { $sql .= ")"; } else { $sql .= " OR povd.name LIKE '%" . $this->db->escape($keyword) . "%')"; } По аналогии с были отредактированы выпотому чторки: getTotalProductsByKeyword getTotalProductsByTag getProductsByKeyword getProductsByTag Задача поиска по атрибуим в итоге решена, но отрабатывает некорректно, а точнее: Если в поиск забить к примеру слово "красный" и у какого нибудь товара есть опция значение которой "красный" поиск рилииет нормально, но если слово поиска бугдет "красный карандаш" - поиск не выдаст резульитов, я не понимаю отчего это происходит, ведь выпотому чторка игдет LIKE %% ( $sql .= " OR povd.name LIKE '%" . $this->db->escape($keyword) . "%')"; ) причем даже пробле вначно слова " красный" - поиск не дает резульитов. Сейчас на яве сгделал ключевому слову trim (убираю пробелы с начала и конца строки), но это заплатка. Собственно свою проблемую я думаю я описал гдеильно, если будут у кого-то вопросы по описанию, пишите я дам потому чтолее гдеильные пояснения. Помогите решить проблему с поиском. P/S Я с Opencart знаком сегодня ровно как негделю, прошу сильно не пинать, мог ггде-то что-то упустить.
  6. Необходим функционал некого фильтра. Типа производители бытовой химии не выводятся в категории гдетские игрушки. Я понимаю что можно сгделать 10 тематических магазинов вместо рутовых категорий но все же, подскажите суещёствует ли сие чудо в прирогде ?
×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.